Automatically install npm, bower, tsd, typings, composer and pip packages/dependencies if the relative configurations are found in the gulp file stream respectively
| File Found | Command run |
|---|---|
package.json | npm install |
bower.json | bower install |
tsd.json | tsd reinstall --save |
typings.json | typings install |
composer.json | composer install |
requirements.txt | pip install -r requirements.txt |
It will run the command in the directory it finds the file, so if you have configs nested in a lower directory than your slushfile.js/gulpfile.js, this will still work.
NOTE since v1.0.0 gulp-install requires at least NodeJS v6.
Used as the install step when using slush as a Yeoman replacement.
Install gulp-install as a dependency:
npm install --save gulp-installInstall gulp-install as a development dependency:
npm install --save-dev gulp-installvarinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install());varinstall=require("gulp-install");gulp.src(['./bower.json','./package.json']).pipe(install());| Param | Type | Description |
|---|---|---|
| options | Object | Any option |
| callback | Function | Called when install is finished (not on failures) |
To not trigger the install use --skip-install as CLI parameter when running slush or gulp.
Type:Array|String|Object
Default:null
Use this option(s) to specify any arguments for any command, e.g:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({npm: '--production',// Either a single argument as a stringbower: {allowRoot: true},// Or arguments as an object (transformed using Dargs: https://www.npmjs.com/package/dargs)pip: ['--target','.']// Or arguments as an array}));Type:Object
Default:null
Use this option to add any command to be run for any file, e.g:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({commands: {'package.json': 'yarn'},yarn: ['--extra','--args','--here']}));Type:Boolean
Default:false
Set to true if npm install should be appended with the --production parameter when stream contains package.json.
Example:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({production: true}));Type:Boolean
Default:false
Set to true if npm install should be appended with the --ignore-scripts parameter when stream contains package.json. Useful for skipping postinstall scripts with npm.
Example:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({ignoreScripts: true}));Type:Boolean
Default:false
Set to true if npm install should be appended with the --no-optional parameter which will prevent optional dependencies from being installed.
Example:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({noOptional: true}));Type:Boolean
Default:false
Set to true if bower install should be appended with the --allow-root parameter when stream contains bower.json.
Example:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({allowRoot: true}));Type:Array or String
Default:undefined
Specify additional arguments that will be passed to the install command(s).
Example:
varinstall=require("gulp-install");gulp.src(__dirname+'/templates/**').pipe(gulp.dest('./')).pipe(install({args: ['dev','--no-shrinkwrap']}// npm install --dev --no-shrinkwrap));

