Add delete preview-env / auto-deploy a staging
This commit is contained in:
parent
1d0313229e
commit
a55693f967
10 changed files with 136 additions and 91 deletions
|
@ -50,6 +50,10 @@ container-release:
|
|||
deploy-preview:
|
||||
before_script:
|
||||
- appr login -u $DOCKER_USER -p $DOCKER_PASS quay.io
|
||||
- cd deploy/quay-ci-app
|
||||
- echo -n 1.0.0-${CI_COMMIT_REF_SLUG} > VERSION
|
||||
- 'echo "{\"domain\": \"$QUAY_DOMAIN\", \"image\": \"quay.io/quay/quay-ci:${CI_COMMIT_REF_SLUG}\", \"tag\": \"${CI_COMMIT_REF_SLUG}\"}" > params.json'
|
||||
- cat params.json
|
||||
environment:
|
||||
name: review/${CI_COMMIT_REF_SLUG}
|
||||
on_stop: stop-preview
|
||||
|
@ -58,17 +62,42 @@ deploy-preview:
|
|||
only:
|
||||
- branches
|
||||
script:
|
||||
- cd deploy/quay-demo-app
|
||||
- echo -n 1.0.0-${CI_COMMIT_REF_SLUG} > VERSION
|
||||
- 'echo "{\"image\": \"quay.io/quay/quay-ci:${CI_COMMIT_REF_SLUG}\", \"tag\": \"${CI_COMMIT_REF_SLUG}\"}" > params.json'
|
||||
- cat params.json
|
||||
- appr push quay.io/quay -f
|
||||
- appr deploy quay.io/quay/quay-demo-app@1.0.0-${CI_COMMIT_REF_SLUG} --namespace ci-quay-${CI_COMMIT_REF_SLUG} -x docker_user=$DOCKER_USER -x docker_pass=$DOCKER_PASS
|
||||
- appr push quay.io/quay/quay-ci-app -f
|
||||
- appr deploy quay.io/quay/quay-ci-app@1.0.0-${CI_COMMIT_REF_SLUG} --namespace ci-quay-${CI_COMMIT_REF_SLUG} -x docker_user=$DOCKER_USER -x docker_pass=$DOCKER_PASS
|
||||
- kubectl get ingresses -n ci-quay-${CI_COMMIT_REF_SLUG} -o wide
|
||||
stage: deploy
|
||||
stage: deploy_preview
|
||||
tags:
|
||||
- kubernetes
|
||||
variables:
|
||||
K8S_NAMESPACE: ci-quay-${CI_COMMIT_REF_SLUG}
|
||||
QUAY_DOMAIN: quay-${CI_COMMIT_REF_SLUG}.k8s.devtable.com
|
||||
when: manual
|
||||
deploy-staging:
|
||||
before_script:
|
||||
- appr login -u $DOCKER_USER -p $DOCKER_PASS quay.io
|
||||
- cd deploy/quay-ci-app
|
||||
- echo -n 1.0.0-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHA} > VERSION
|
||||
- 'echo "{\"domain\": \"$QUAY_DOMAIN\", \"image\": \"quay.io/quay/quay:${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHA}\", \"tag\": \"${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHA}\"}" > params.json'
|
||||
- cat params.json
|
||||
environment:
|
||||
name: staging
|
||||
url: https://quay-staging.k8s.devtable.com
|
||||
image: quay.io/appr/appr:kubectl
|
||||
only:
|
||||
- master
|
||||
script:
|
||||
- appr push quay.io/quay/quay-ci-app -f
|
||||
- appr push quay.io/quay/quay-ci-app -c master
|
||||
- appr push quay.io/quay/quay-ci-app -c beta
|
||||
- appr push quay.io/quay/quay-ci-app -c latest
|
||||
- appr deploy quay.io/quay/quay-ci-app@1.0.0-${CI_COMMIT_REF_SLUG}-${CI_COMMIT_SHA} --namespace ci-staging -x docker_user=$DOCKER_USER -x docker_pass=$DOCKER_PASS
|
||||
- kubectl get ingresses -n ci-staging -o wide
|
||||
stage: deploy_staging
|
||||
tags:
|
||||
- kubernetes
|
||||
variables:
|
||||
K8S_NAMESPACE: ci-staging
|
||||
QUAY_DOMAIN: quay-staging.k8s.devtable.com
|
||||
karma-tests:
|
||||
before_script:
|
||||
- cd $QUAYDIR
|
||||
|
@ -152,16 +181,16 @@ registry-tests:
|
|||
QUAYDIR: /quay-registry
|
||||
TEST: 'true'
|
||||
stages:
|
||||
- deploy
|
||||
- docker_build
|
||||
- docker_base
|
||||
- docker_build
|
||||
- deploy_preview
|
||||
- unit_tests
|
||||
- integration
|
||||
- docker_release
|
||||
- deploy_staging
|
||||
- teardown
|
||||
stop-preview:
|
||||
before_script:
|
||||
- appr login -u $DOCKER_USER -p $DOCKER_PASS quay.io
|
||||
before_script: []
|
||||
environment:
|
||||
action: stop
|
||||
name: review/${CI_COMMIT_REF_SLUG}
|
||||
|
@ -170,15 +199,15 @@ stop-preview:
|
|||
only:
|
||||
- branches
|
||||
script:
|
||||
- 'echo "{\"image\": \"quay.io/quay/quay-ci:${CI_COMMIT_REF_SLUG}\", \"tag\": \"${CI_COMMIT_REF_SLUG}\"}" > params.json'
|
||||
- cat params.json
|
||||
- appr remove quay.io/quay/quay-demo-app@1.0.0-${CI_COMMIT_REF_SLUG} --namespace ci-quay-${CI_COMMIT_REF_SLUG} -x docker_user=$DOCKER_USER -x docker_pass=$DOCKER_PASS -x params.json
|
||||
- kubectl get pods -n ci-quay-${CI_COMMIT_REF_SLUG} -o wide
|
||||
stage: deploy
|
||||
- kubectl delete ns $K8S_NAMESPACE
|
||||
- kubectl get pods -o wide -n $K8S_NAMESPACE
|
||||
stage: deploy_preview
|
||||
tags:
|
||||
- kubernetes
|
||||
variables:
|
||||
GIT_STRATEGY: none
|
||||
K8S_NAMESPACE: ci-quay-${CI_COMMIT_REF_SLUG}
|
||||
QUAY_DOMAIN: quay-${CI_COMMIT_REF_SLUG}.k8s.devtable.com
|
||||
when: manual
|
||||
unit-tests:
|
||||
before_script:
|
||||
|
|
Reference in a new issue