image: registry.gitlab.com/openstapps/projectmanagement/node before_script: - npm install stages: - build - test - audit - deploy - publish build: tags: - performance stage: build script: - npm run build artifacts: paths: - lib expire_in: 1 week audit: stage: audit script: - npm audit allow_failure: true except: - schedules scheduled-audit: stage: audit script: - npm audit --audit-level=high only: - schedules test: dependencies: - build stage: test script: - npm test artifacts: paths: - report - coverage mapping: dependencies: - build stage: test services: - name: registry.gitlab.com/openstapps/database:master alias: elasticsearch script: - node ./node_modules/@openstapps/core-tools/lib/cli.js put-es-templates ./src http://elasticsearch:9200/ "pattern,see,minlength,tjs-format" package: dependencies: - build tags: - secrecy stage: publish 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