Use n98-magerun Script Repository
Since some releases we support script. Scripts are like batch files which can be executed and reused in all your local Magento installations. For everyone who is not fimilar with n98-magerun script I gave a little instruction how the scripts can be created.
My first n98-magerun script
Scripts can do three things…
- Register variables
- Run shell commands
- Run n98-magerun commands
One of the big advantages is that Magento is only initialized once. If you have used n98-magerun in your deployment or setup script you will see
that the script command can boost the speed of script execution a lot.
The script command offers you some pre-defined variables which you can use in your scripts:
${magento.root} -> Magento Root-Folder
${magento.version} -> Magento Version i.e. 1.7.0.2
${magento.edition} -> Magento Edition -> Community or Enterprise
${magerun.version} -> Magerun version i.e. 1.66.0
${php.version} -> PHP Version
${script.file} -> Current script file path
${script.dir} -> Current script file dir
The most important variable is ${magento.root}.
Here is a complete script example:
# First comment line is used in script repo list command to show description
config:set "web/cookie/cookie_domain" example.com
config:set "web/secure/base_url" https://example.com
config:set "web/unsecure/base_url" http://example.com
cache:flush
# Run a shell script with "!" as first char
! ls -l
# Register your own variable (only key = value currently supported)
${my.var}=bar
# Let magerun ask for variable value - add a question mark
${my.var}=?
! echo ${my.var}
# Use resolved variables from n98-magerun in shell commands
! ls -l ${magento.root}/code/local
n98-magerun Script Repository
You can organize your scripts in a repository. Simply place a script in folder /usr/local/share/n98-magerun/scripts or in your home dir in folder
Scripts must have the file extension .magerun.
After that you can list all scripts with the script:repo:list command. The first line of the script can contain a comment (line prefixed with #) which will be displayed as description.
$ n98-magerun.phar script:repo:list
If you want to execute a script from repository this can be done by script:repo:run command.
$ n98-magerun.phar script:repo:run [script]
Script argument is optional. If you don’t specify any you can select one from a list.
1 Comment
Using Magerun modules in your projects – thongquach · May 19, 2017 at 04:48
[…] first two locations are described on the Use n98-magerun Script Repository page. Both locations are specific to your local machine and are well documented. The third option […]