shipit-yarn v0.2.0
shipit-yarn
A set of tasks for Shipit used for yarn specific tasks on deploy.
Heavily inspired by the shipit-npm extension by callerc1. It started as a fork of his repository.
Features:
- Triggered on the
updatedorfetchedevent from shipit-deploy - Has a direct pass through task to yarn cli
- Works via shipit-cli and grunt-shipit
Install
npm install shipit-yarn --save-dev # or yarn add -D shipit-yarnUsage
Run: (This triggers the yarn task on the deploy updated or
fetched event. No additional config necessary.)
shipit staging deployOr you can run the tasks separatly :
shipit staging yarn:init yarn:install
shipit staging yarn:run --cmd "update"Options shipit.config.yarn
yarn.remote
Type: Boolean
Default: true
A Boolean to determine whether to run the task in local workspace or on the remote.
yarn.installArgs
Type: Array or String
Default: []
An array or string specifying yarn args passed to the yarn install cmd.
yarn.installFlags
Type: Array or String
Default: []
An array or string specifying yarn flags passed to the yarn install cmd.
yarn.triggerEvent
Type: String,Boolean
Default: updated or fetched (depending on yarn.remote value)
An event name that triggers yarn:install. Can be set to false to prevent the
yarn:install task from listening to any events.
yarn install cmd.
yarn.yarnOrNpm
Type: String
Default: yarn
Determine which package manager should be used. Can be yarn, npm or best (try with yarn and fallback to npm if
yarn is unavailable).
yarn.cmd
Type: String
Default: '' (empty string)
A string specifying the command to be run by the
yarn:cmd
task (e.g. 'run build') overridden if the --cmd argument is set on the command line.
Example shipitfile.js options usage
module.exports = function (shipit) {
require('shipit-deploy')(shipit);
require('shipit-yarn')(shipit);
shipit.initConfig({
default: {
yarn: {
remote: true,
installFlags: ['--production']
}
}
});
};Workflow tasks
- yarn
- yarn:init
- Emit event "yarn_inited".
- yarn:install
- Runs yarn install (with any Args
yarn.installArgsor Flagsyarn.installFlagsdefined in options) - Emit event "yarn_installed"
- Runs yarn install (with any Args
- yarn:run
- Runs yarn command.
- yarn:init
Event flow:
- on Event "deploy" (shipit-deploy initialized)
- Runs yarn:init
- on Event "yarn_inited"
- Runs yarn:install (Triggered on the
updatedorfetchedevent from shipit-deploy or by a customyarn.triggerEventas mentioned above.)
- Runs yarn:install (Triggered on the
License
MIT