image: registry.gitlab.com/openstapps/projectmanagement/node cache: key: ${CI_COMMIT_REF_SLUG} paths: - node_modules before_script: - npm install stages: - build - test - deploy npm: stage: build script: - npm run build artifacts: paths: - lib docker-builder: image: registry.gitlab.com/openstapps/projectmanagement/builder stage: build only: - schedules variables: DOCKER_DRIVER: overlay2 services: - docker:dind script: - cd images/builder - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN registry.gitlab.com - docker build -t registry.gitlab.com/openstapps/projectmanagement/builder . - docker push registry.gitlab.com/openstapps/projectmanagement/builder tags: - docker before_script: [] docker-node: image: registry.gitlab.com/openstapps/projectmanagement/builder stage: build only: - schedules variables: DOCKER_DRIVER: overlay2 services: - docker:dind script: - cd images/node - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN registry.gitlab.com/openstapps/projectmanagement/ - docker build -t registry.gitlab.com/openstapps/projectmanagement/node . - docker push registry.gitlab.com/openstapps/projectmanagement/node tags: - docker before_script: [] audit: allow_failure: true except: - schedules script: - npm audit stage: test scheduled-audit: only: - schedules script: - npm audit stage: test package: dependencies: - build tags: - secrecy stage: deploy script: - echo "//registry.npmjs.org/:_authToken=$NPM_AUTH_TOKEN" > ~/.npmrc - npm publish only: - /^v[0-9]+.[0-9]+.[0-9]+$/ artifacts: paths: - lib pages: stage: deploy script: - npm run documentation - mv docs public only: - /^v[0-9]+\.[0-9]+\.[0-9]+$/ artifacts: paths: - public