diff options
| author | Olivier Gonzalez <ogonzalez@gitlab.com> | 2018-12-20 17:13:08 +0100 |
|---|---|---|
| committer | Olivier Gonzalez <ogonzalez@gitlab.com> | 2018-12-20 17:13:08 +0100 |
| commit | 9b526b649a77705c56994b99e3127b505da75c07 (patch) | |
| tree | 82a947944aac34950db49aef47607bd1c6086d81 | |
| parent | ef71b028125109d14e453b110dcedd092eb0799e (diff) | |
add QA
| -rw-r--r-- | .gitlab-ci.yml | 62 |
1 files changed, 44 insertions, 18 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 653ba6d..6bd8686 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -9,7 +9,8 @@ services: stages: - build - # - test + - qa + - pre-deploy - deploy .build: @@ -20,8 +21,6 @@ stages: - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - export IMAGE=$CI_REGISTRY_IMAGE:$IMAGE_TAG - docker build -t $IMAGE . - # TODO: Remove this, move to QA as this is not really test - - docker run $IMAGE test - docker push $IMAGE build branch: @@ -47,8 +46,43 @@ build tag: only: - tags -build major: +.QA: + image: docker:stable + stage: qa + before_script: + - docker info + - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY + - export IMAGE=$CI_REGISTRY_IMAGE:$IMAGE_TAG + script: + - docker pull $IMAGE + - docker run "$CI_REGISTRY_IMAGE/$CI_COMMIT_REF_SLUG:$CI_COMMIT_SHA" test + +QA branch: + extends: .QA + variables: + IMAGE_TAG: $CI_COMMIT_REF_SLUG + only: + - branches + except: + - master + +QA edge: + extends: .QA + variables: + IMAGE_TAG: edge + only: + - master + +QA tag: + extends: .QA + before_script: + - export IMAGE_TAG=${CI_COMMIT_TAG/v/} + only: + - tags + +tag major: extends: .build + stage: pre-deploy variables: IMAGE_TAG: $MAJOR only: @@ -56,14 +90,14 @@ build major: when: manual allow_failure: false -tag latest: +.deploy: image: docker:stable stage: deploy before_script: - docker info - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - export SOURCE_IMAGE=$CI_REGISTRY_IMAGE:$MAJOR - - export TARGET_IMAGE=$CI_REGISTRY_IMAGE:latest + - export TARGET_IMAGE=$CI_REGISTRY_IMAGE:$CI_JOB_NAME script: - docker pull $SOURCE_IMAGE - docker tag $SOURCE_IMAGE $TARGET_IMAGE @@ -71,18 +105,10 @@ tag latest: only: - tags -.deploy: - image: docker:stable - stage: deploy - before_script: - - docker info - - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - - export IMAGE=$CI_REGISTRY_IMAGE:$CI_JOB_NAME - script: - - docker build -t $IMAGE -f $DOCKERFILE . - - docker push $IMAGE - only: - - tags +latest: + extends: .deploy + variables: + DOCKERFILE: Dockerfile.v1 11-7-stable: extends: .deploy |
