grunt-wxi-shell
v0.2.0
Published
Executing Shell commands with grunt.
Downloads
8
Readme
grunt-wxi-shell
Executing Shell commands with grunt.
Getting Started
If you haven't used grunt before, be sure to check out the Getting Started guide.
From the same directory as your project's Gruntfile and package.json, install this plugin with the following command:
npm install grunt-wxi-shell --save-dev
Once that's done, add this line to your project's Gruntfile:
grunt.loadNpmTasks('grunt-wxi-shell');
If the plugin has been installed correctly, running grunt --help
at the command line should list the newly-installed plugin's task or tasks. In addition, the plugin should be listed in package.json as a devDependency
, which ensures that it will be installed whenever the npm install
command is run.
The "wxi_shell" task
Overview
In your project's Gruntfile, add a section named wxi_shell
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
wxi_shell: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
})
Options
options.cwd
Type: String
Default value: null
The working directory, runs commands in that directory.
Usage Examples
Let's say you wanted to build bootstrap
If you specify cwd then the commands are run as cd "your/directory" && ls
if you dont' then they are run in the project root.
The syntax for commands are like this:
"Command or text" : "type"
If you want to execute a command then type is run
, if you want to send a message to the terminal then you have three choices:
ok
- green message with a tickinfo
- blue message with a square bulleterr
- red message with a triangle
These messages are automatically formatted and echoed.
wxi_shell:
bootstrap:
options:
cwd: 'components/bootstrap'
commands:
"[Bootstrap] First stage: make": "info"
"make" : "run"
"[Bootstrap] First stage done: make" : "ok"
"[Bootstrap] Second stage: make bootstrap": "info"
"make bootstrap" : "run"
"[Bootstrap] Second stage done: make bootstrap" : "ok"
"[Bootstrap] Done making! But we have never thrown an error!" : "err"
Contributing
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using grunt.
Release History
v0.1.4
- Wrote the basics of the task. It successfully executes shell commands.
- ~~I should note that the method I'm using right now is temporary... It was good when I was using grunt-shell however I couldn't do the same thing when defining config dynamically. This method saves stuff to a file and then gets it back which I don't like. Need to fix this.~~
- The method I mentioned is good for build tasks. But not good for usual server side stuff.