mirror of
https://git.rwth-aachen.de/acs/public/villas/web/
synced 2025-03-16 00:00:03 +01:00
39 lines
No EOL
1 KiB
YAML
39 lines
No EOL
1 KiB
YAML
image: docker
|
|
|
|
services:
|
|
- docker:dind
|
|
|
|
before_script:
|
|
- docker info
|
|
- mkdir -p build
|
|
|
|
cache:
|
|
paths:
|
|
- build
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
- deploy
|
|
|
|
build_job:
|
|
stage: build
|
|
script:
|
|
- docker run --rm -v $(pwd)/package.json:/usr/src/app/package.json -v $(pwd)/build:/usr/src/app/build -v $(pwd)/public:/usr/src/app/public -v $(pwd)/src:/usr/src/app/src -w /usr/src/app node:7.9.0-slim bash -c 'npm install; npm run build'
|
|
|
|
test_job:
|
|
stage: test
|
|
script:
|
|
- docker run --rm -e CI=true -v $(pwd)/package.json:/usr/src/app/package.json -v $(pwd)/public:/usr/src/app/public -v $(pwd)/src:/usr/src/app/src -w /usr/src/app node:7.9.0-slim bash -c 'npm install; npm test'
|
|
|
|
deploy_review:
|
|
stage: deploy
|
|
environment: review
|
|
script:
|
|
- mkdir -p ~/.docker
|
|
- echo $DEPLOYMENT_CACERT > ~/.docker/ca.pem
|
|
- echo $DEPLOYMENT_CLIENT_CERT > ~/.docker/cert.pem
|
|
- echo $DEPLOYMENT_CLIENT_KEY > ~/.docker/key.pem
|
|
- docker-compose build
|
|
- docker-compose -d --tlsverify -H=$DEPLOYMENT_HOST down
|
|
- docker-compose -d --tlsverify -H=$DEPLOYMENT_HOST up |