56 lines
1.0 KiB
YAML
56 lines
1.0 KiB
YAML
image: docker:latest
|
|
|
|
stages:
|
|
- build
|
|
- test
|
|
- deploy
|
|
- clean
|
|
|
|
#before_script:
|
|
## - apk add --update python python-dev py-pip gcc libc-dev libffi-dev openssl-dev make
|
|
# - pip install docker-compose
|
|
|
|
clean:
|
|
stage: clean
|
|
script:
|
|
- docker-compose -f compose-ci.yml stop
|
|
- docker-compose -f compose-ci.yml rm --force gm_app
|
|
when: always
|
|
|
|
|
|
buid:
|
|
stage: build
|
|
script:
|
|
- docker-compose -f compose-ci.yml build gm_app
|
|
when: always
|
|
|
|
|
|
test:
|
|
stage: test
|
|
script:
|
|
- docker-compose -f compose-ci.yml run db up -d
|
|
- docker-compose -f compose-ci.yml run db down
|
|
- docker-compose -f compose-ci.yml run gm_app python manage.py test -v 3 --noinput
|
|
when: always
|
|
|
|
|
|
|
|
deploy-develop:
|
|
stage: deploy
|
|
only:
|
|
- feature/develop_ci
|
|
script:
|
|
- fab --roles=develop deploy
|
|
environment:
|
|
name: Develop
|
|
|
|
|
|
deploy-staging:
|
|
stage: deploy
|
|
only:
|
|
- master
|
|
script:
|
|
- fab --roles=staging deploy
|
|
environment:
|
|
name: Staging
|