dist | ||
ts | ||
.gitignore | ||
.gitlab-ci.yml | ||
.npmignore | ||
alias.json | ||
appveyor.yml | ||
LICENSE | ||
package.json | ||
README.md |
NPMCI
npmci is your friend when it comes to handling npm packages during CI builds. It is optimized for GitLab CI
Status
Usage
npmci is designed to work in docker CI environments. The following docker images come with npmci presinstalled:
Docker Hub:
- hosttoday/ht-docker-node
has LTS node version preinstalled. Change it with npmci - hosttoday/ht-docker-node-python-3
like ht-docker-node, but with python3 instead of python2.7
npmci can be called from commandline:
# Install any node version:
npmci install lts # will install latest LTS node version and update PATH for node and npm versions
npmci install stable # will install latest stable node version and update PATH for node and npm
npmci install legacy # will install latest legacy node version and update PATH for node and npm
npmci install x.x.x # will install any specific node version.
# Install any node version, install dependencies and run test in cwd:
npmci test lts # will install latest lts node version and run "npm install" and "npm test".
npmci test stable # will install latest stable node version and run "npm install" and "npm test".
npmci test legacy # will install latest legacy node version and run "npm install" and "npm test".
npmci test x.x.x # will install any specific node version and run "npm install" and "npm test".
npmci test docker # will test any build image with tests defined in ./npmci/dockertest_1.sh to ./npmci/dockertest_100.sh
# prepare tools
npmci prepare npm # will look for $NPMCI_TOKEN_NPM env var and create .npmrc, so npm is authenticated
npmci prepare docker # will look for $NPMCI_LOGIN_DOCKER in form username|password and authenticate docker
npmci prepare docker-gitlab # will authenticate docker for gitlab container registry
# build containers
npmci build docker # will build container and tag it
# publish npm module
npmci publish npm # will look vor $NPMCI_TOKEN_NPM env var and push any module in cwd to npm
npmci publish docker
# trigger webhooks
npmci trigger # will look for NPMCI_TRIGGER_1 to NPMCI_TRIGGER_100 in form domain|id|token|ref|name