Something went wrong on our end
-
derrabauke authoredderrabauke authored
.gitlab-ci.yml 2.01 KiB
image: node:12.16.3
stages:
- test
- build
- deploy
variables:
MONGODB_VERSION: '4.2.6'
MONGODB_URL: 'mongodb://mongodb:27017/test'
PORT: '3002'
JWT_SECRET: 'test'
# http://docs.gitlab.com/ee/ci/yaml/README.html#cache
cache:
paths:
- app/client/node_modules/
- app/server/node_modules/
test_client:
stage: test
script:
- cd app/client
- npm install
- npm run test
when: always
test_server:
stage: test
# Info: http://docs.gitlab.com/ee/ci/docker/using_docker_images.html#what-is-a-service
services:
- name: mongo:$MONGODB_VERSION
alias: mongodb
script:
- cd app/server
- npm install
- npm run test
when: always
build_client:
stage: build
tags:
- docker-privileged
image: docker:19.03.12
rules:
- if: $CI_COMMIT_TAG
when: always
services:
- docker:19.03.12-dind
before_script:
- echo $CI_REGISTRY
- echo $CI_REGISTRY_USER
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
variables:
CLIENT_IMAGE_TAG: $CI_REGISTRY/client:$CI_COMMIT_TAG
CLIENT_RELEASE_IMAGE_TAG: $CI_REGISTRY/client:latest
script:
- cd app/client
- docker build -t $CLIENT_IMAGE_TAG .
- docker tag $CLIENT_IMAGE_TAG $CLIENT_RELEASE_IMAGE_TAG
- docker image push $CLIENT_IMAGE_TAG
- docker image push $CLIENT_RELEASE_IMAGE_TAG
build_server:
stage: build
tags:
- docker-privileged
rules:
- if: $CI_COMMIT_TAG
when: always