--- variables: MGM_BUNDLER_BUILD_VERSION: 0.1.1 BUILDER: $CI_REGISTRY/docker-images/bundler-build:$MGM_BUNDLER_BUILD_VERSION stages: - javascript test - build deps - test - push # Define a per-branch cache cache: key: "$CI_BUILD_REF_NAME" untracked: true cache npm installation and run karma tests: stage: javascript test script: - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY - docker run -u `id -u`:`id -g` --rm -v ${CI_PROJECT_DIR}:/build ${BUILDER} npm --cache /tmp/.npm-dev/ install - docker run -u `id -u`:`id -g` --rm -v ${CI_PROJECT_DIR}:/build ${BUILDER} /build/node_modules/karma/bin/karma start - rm -drf node_modules build dependencies: stage: build deps script: - docker login -u gitlab-ci-token -p $CI_BUILD_TOKEN $CI_REGISTRY - docker run -u `id -u`:`id -g` --rm -v ${CI_PROJECT_DIR}:/build ${BUILDER} npm --cache /tmp/.npm-prod/ install --only=production # TODO add step for publishing node module ?