stages: - dependencies - build - deploy .docker_template: image: node:dubnium-buster tags: - docker node_modules: extends: .docker_template stage: dependencies script: npm ci artifacts: paths: - node_modules build: extends: .docker_template stage: build script: npm run build deploy: extends: .docker_template stage: deploy environment: name: sol-journal url: http://sol-journal.spencassemble.com/ script: - docker login -u $DOCKERUSER -p $DOCKERPASS - docker image push spencerpincott/sol-journal:1.$CI_PIPELINE_IID - docker stop sol-journal - docker rm sol-journal - docker run -dit -p 5000:80 --name sol-journal --restart=always spencerpincott/sol-journal:1.$CI_PIPELINE_IID rules: - if: $CI_COMMIT_REF_NAME == "master" when: on_success - when: never