-
Bogdan Cochior authoredcbb8af13
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
variables:
CONFIGURATION_REPOSITORY: https://gitlab.coko.foundation/bogdan/xpub-faraday-deployment-config.git
DOCKER_REPO: $CI_ECR_URL
stages:
- build
- test
- push
- deploy
- rollback
build:
image: docker:latest
stage: build
script:
# Setup
- export AWS_REGION="eu-west-1"
- export AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
- export AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY
- apk update
- apk --no-cache add --update curl python python-dev py-pip
- pip install awscli --upgrade --user
- export PATH=~/.local/bin:/usr/bin/:$PATH
# AUTH
- CERT=`aws ecr get-login --no-include-email --region ${AWS_REGION}`
- ${CERT}
# Build
- docker build -t ${CI_PROJECT_NAME}:$CI_COMMIT_SHA .
- docker tag $CI_PROJECT_NAME:$CI_COMMIT_SHA $DOCKER_REPO:$CI_COMMIT_SHA
- docker push $DOCKER_REPO:$CI_COMMIT_SHA
lint:
image: $DOCKER_REPO:$CI_COMMIT_SHA
stage: test
variables:
GIT_STRATEGY: none
script:
- cd ${HOME}
- npm run lint
test:
image: $DOCKER_REPO:$CI_COMMIT_SHA
stage: test
variables:
GIT_STRATEGY: none
script:
- cd ${HOME}
- npm run test
push:qa:
image: docker:latest
stage: push
only:
- develop
script:
# Setup
- export AWS_REGION="eu-west-1"
- export AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID
- export AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY
- apk update
- apk --no-cache add --update curl python python-dev py-pip
- pip install awscli --upgrade --user
- export PATH=~/.local/bin:/usr/bin/:$PATH
# AUTH
- CERT=`aws ecr get-login --no-include-email --region ${AWS_REGION}`
- ${CERT}
# Tag
- docker tag $DOCKER_REPO:$CI_COMMIT_SHA $DOCKER_REPO:latest
- docker push $DOCKER_REPO:latest