The NPM actions in Continua are a wrapper around the npm command line. If you're having trouble using any of the NPM actions, please refer to the Command Line Reference.
The NPM Install action is used to install NPM packages to the workspace.
A friendly name for this action (will be displayed in the actions workflow area).
Determines if this action will be run within the relevant stage.
Where to install the package. Relative paths will be anchored to the workspace folder.
The type of package location. This can be a directory, file, URL or definition which describes the location of the package.
Enter the path to the folder which contains the package.json file describing the installation.
Enter the path to a gzipped tarball containing the NPM package to install.
Enter the URL to a gzipped tarball or Git repository containing the NPM package to install. You can enter a HTTP or HTTPS URL or one of the following special URL formats for accessing Git repositories.
<protocol>://[<user>[:<password>]@]<hostname>[:<port>][:/]<path>[#<commit-ish>]
where protocol is one of git
, git+ssh
, git+http
, or git+https
<githubname>/<githubrepo>[#<commit-ish>]
or github:<githubname>/<githubrepo>[#<commit-ish>]
for installing packages from github.com repositoriesgist:[<githubname>/]<gistID>[#<commit-ish>]
for installing packages uploaded to gist.github.combitbucket:<bitbucketname>/<bitbucketrepo>[#<commit-ish>]
for installing packages from bitbucket.org repositoriesgitlab:<gitlabname>/<gitlabrepo>[#<commit-ish>]
for installing packages from gitlab.com repositorieswhere <commit-ish>
indicates a commit hash, branch or tag name. This defaults to master.
Enter the name of a package that is published on the official NPM registry. You can also optionally specify the scope, tag or version using the following formats:
[@<scope>/]<name>
[@<scope>/]<name>@<tag>
[@<scope>/]<name>@<version>
[@<scope>/]<name>@<version range>
You can also specify multiple package definitions separated with a space.
Tick this to save the package name and version to your package dependencies.
Where to save the package dependency. Select "Save in dependencies" [---save], "Save in dev dependencies" [---save-dev] or "Save in optional dependencies" [---save-optional] to save under the dependencies, devDependencies or optionalDependencies node in the package.json file.
Tick this to save the dependency using the exact version rather than using NPM's default semver range operator. [---save-exact]
Tick to open a new Registry tab to specify a custom NPM registry rather than the default registry of NPM. [---registry=]
The Using drop down is populated with any property collector whose namespace matches the pattern defined by the NPM Install action. The pattern for this action is ^NPM.*
If you create a property collector for this action, make sure you select the Path Finder PlugIn type and give it a name that will match the pattern above in blue. Example names listed here, search the table's Plugin column for "NPM Install".
For more in-depth explanations on property collectors see Property Collectors.
Alternatively, you can select the Custom option from the Using drop down list and specify a path in the resulting input field that will be displayed. Please read Why it's a good idea to use a property collector before using this option.
The full URL end-point of the registry to use. The registry in question will be logged into before the action is run, and then logged out of when the action has completed.
The username of the user with credentials to access the registry entered above. Note that the user should have permission to perform the action in question - whether that be publishing or downloading packages.
The password for the username listed above. Note that some registries allow for either a user password, or feed specific API key to be used when logging into the registry. The password in question will be written to the project specific NPM configuration file and removed after the action has been completed. It is advised to use a user with access limited to the tasks performed by this action.
The email address of the user accessing the registry. For publishing, this is the user to whom the published package will be associated with.
Indicates that all requests to the given registry should include authorisation information.
Allows for setting any configuration option for NPM. This is useful for defining registry scopes or any specific system settings that are required for NPM. For information on what options are available and the values that they support please refer to the npmrc help.
The configuration file that is written is project specific and will be saved to the target directory specified in the action. This will override any other options specified in the user, and system NPM configuration files on the agent.
Tick this to apply the --tag argument to multiple install definitions. If a tag with the given name exists, the tagged version is preferred over newer versions.
Force NPM to fetch remote resources even if a local copy exists on disk. [---force]
Clear this to use --no-optional argument to prevent optional dependencies from being installed.
Ignore an available ShrinkWrap file and use the package.json instead. [---no-shrinkwrap]
The path to node source code so that NPM can compile native modules.
If this is ticked, the command line output is written to the build log.
Tick this to get more detailed output from the NPM command line. [---verbose]
How long to wait for the action to finish running before timing out. Leaving this blank (or zero) will default to 86400 seconds (24 hours).
Tick to continue build on failure marking the action with a warning status.
If this is ticked, any warnings logged will not mark the action with a warning status.
Multiple environment variables can be defined - one per line. These are set before the command line is run.
If this is ticked, environment variable values are written to the build log.
Tick this checkbox to set up a list of new environment variables prefixed with 'ContinuaCI.' for all current system expression objects and variables.
This checkbox is visible only if the 'Generate system environment variables' checkbox is ticked.
If this is ticked, the values of any variables marked as sensitive will be masked with **** when setting system environment variables. Clear this to expose the values.