Loading .gitlab-ci.yml +35 −16 Original line number Original line Diff line number Diff line stages: - build - deploy-staging - deploy-production .docker: .docker: stage: build stage: build image: docker:git image: docker:git Loading @@ -15,21 +19,30 @@ docker: rules: rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' docker-latest: docker-build-image-latest: extends: .docker extends: .docker script: script: - docker build -t $CI_REGISTRY_IMAGE:latest -f app/Dockerfile app - docker build -t $CI_REGISTRY_IMAGE:latest -f app/Dockerfile app - docker push $CI_REGISTRY_IMAGE:latest - docker push $CI_REGISTRY_IMAGE:latest when: manual when: manual # rules: rules: # - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' # - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'merge_request_event' trigger_deploy: docker-build-image-tag: needs: ["docker-latest"] extends: .docker # rules: script: # - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - docker build -t $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} -f app/Dockerfile app # - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - docker push $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} rules: - if: '$CI_COMMIT_TAG' deploy_staging: stage: deploy-staging needs: ["docker-build-image-latest"] rules: - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - if: $CI_PIPELINE_SOURCE == 'merge_request_event' trigger: trigger: project: e/online-services/infra/web/web-easy-installer project: e/online-services/infra/web/web-easy-installer branch: main branch: main Loading @@ -38,13 +51,19 @@ trigger_deploy: variables: variables: TRIGGER_STAGING: true TRIGGER_STAGING: true TRIGGER_PRODUCTION: false TRIGGER_PRODUCTION: false IMAGE_TAG: latest docker-tag: deploy_production: extends: .docker stage: deploy-production script: needs: ["docker-build-image-tag"] - docker build -t $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} -f app/Dockerfile app - docker push $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} rules: rules: - if: '$CI_COMMIT_TAG' - if: '$CI_COMMIT_TAG' trigger: project: e/online-services/infra/web/web-easy-installer branch: main strategy: depend when: manual variables: TRIGGER_STAGING: false TRIGGER_PRODUCTION: true IMAGE_TAG: $CI_COMMIT_TAG Loading
.gitlab-ci.yml +35 −16 Original line number Original line Diff line number Diff line stages: - build - deploy-staging - deploy-production .docker: .docker: stage: build stage: build image: docker:git image: docker:git Loading @@ -15,21 +19,30 @@ docker: rules: rules: - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' - if: '$CI_PIPELINE_SOURCE == "merge_request_event"' docker-latest: docker-build-image-latest: extends: .docker extends: .docker script: script: - docker build -t $CI_REGISTRY_IMAGE:latest -f app/Dockerfile app - docker build -t $CI_REGISTRY_IMAGE:latest -f app/Dockerfile app - docker push $CI_REGISTRY_IMAGE:latest - docker push $CI_REGISTRY_IMAGE:latest when: manual when: manual # rules: rules: # - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' # - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - if: $CI_PIPELINE_SOURCE == 'merge_request_event' trigger_deploy: docker-build-image-tag: needs: ["docker-latest"] extends: .docker # rules: script: # - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - docker build -t $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} -f app/Dockerfile app # - if: $CI_PIPELINE_SOURCE == 'merge_request_event' - docker push $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} rules: - if: '$CI_COMMIT_TAG' deploy_staging: stage: deploy-staging needs: ["docker-build-image-latest"] rules: - if: '$CI_COMMIT_REF_NAME == "main" && $CI_PIPELINE_SOURCE != "schedule"' - if: $CI_PIPELINE_SOURCE == 'merge_request_event' trigger: trigger: project: e/online-services/infra/web/web-easy-installer project: e/online-services/infra/web/web-easy-installer branch: main branch: main Loading @@ -38,13 +51,19 @@ trigger_deploy: variables: variables: TRIGGER_STAGING: true TRIGGER_STAGING: true TRIGGER_PRODUCTION: false TRIGGER_PRODUCTION: false IMAGE_TAG: latest docker-tag: deploy_production: extends: .docker stage: deploy-production script: needs: ["docker-build-image-tag"] - docker build -t $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} -f app/Dockerfile app - docker push $CI_REGISTRY_IMAGE:${CI_COMMIT_TAG/v/} rules: rules: - if: '$CI_COMMIT_TAG' - if: '$CI_COMMIT_TAG' trigger: project: e/online-services/infra/web/web-easy-installer branch: main strategy: depend when: manual variables: TRIGGER_STAGING: false TRIGGER_PRODUCTION: true IMAGE_TAG: $CI_COMMIT_TAG