Commit 87154a12 authored by Noel Alonso's avatar Noel Alonso
Browse files

Adapta CI para el uso de plantillas

parent 75e89cf8
Loading
Loading
Loading
Loading
+112 −187
Original line number Diff line number Diff line
include:
  - project: 'redmic-project/gitlab-ci-templates'
    ref: master
    file: '/_deployment.yml'

stages:
  - deploy

image: registry.gitlab.com/redmic-project/docker/docker-deploy:${DOCKER_DEPLOY_IMAGE_TAG}

services:
  - docker:dind

variables:
  DOCKER_DRIVER: overlay2
  STACK: confluent
  PROJECT_PARENT_NAME: confluent

deploy-zk-1-supporting-branch-develop:
  stage: deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '1'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
.deploy-development:
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - branches
  except:
    - master
  when: manual
    name: dev/${SERVICE_NAME}

deploy-zk-2-supporting-branch-develop:
  stage: deploy
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '2'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
.deploy-production:
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - branches
  except:
    - master
  when: manual
    name: pro/${SERVICE_NAME}

deploy-zk-3-supporting-branch-develop:
  stage: deploy
.deploy-zk-1:
  variables: &deploy-zk-1-variables
    SERVICE_NAME: zk-1
    SERVICES_TO_CHECK: ${PROJECT_PARENT_NAME}_${CI_PROJECT_NAME}-1

.deploy-zk-2:
  variables: &deploy-zk-2-variables
    SERVICE_NAME: zk-2
    SERVICES_TO_CHECK: ${PROJECT_PARENT_NAME}_${CI_PROJECT_NAME}-2

.deploy-zk-3:
  variables: &deploy-zk-3-variables
    SERVICE_NAME: zk-3
    SERVICES_TO_CHECK: ${PROJECT_PARENT_NAME}_${CI_PROJECT_NAME}-3

.deploy-zk-1-development:
  extends: .deploy-development
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '3'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - branches
  except:
    - master
  when: manual
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-1.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-1.dev.yml
    <<: *deploy-zk-1-variables

deploy-zk-1-stable-branch-develop:
  stage: deploy
.deploy-zk-2-development:
  extends: .deploy-development
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '1'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - master
  when: manual
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-2.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-2.dev.yml
    <<: *deploy-zk-2-variables

deploy-zk-2-stable-branch-develop:
  stage: deploy
.deploy-zk-3-development:
  extends: .deploy-development
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '2'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - master
  when: manual
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-3.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-3.dev.yml
    <<: *deploy-zk-3-variables

deploy-zk-3-stable-branch-develop:
  stage: deploy
.deploy-zk-1-production:
  extends: .deploy-production
  variables:
    SSH_REMOTE: ${DEV_SSH_REMOTE}
    INSTANCE_ID: '3'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${DEV_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.dev.yml
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE}
  environment:
    name: dev/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - master
  when: manual
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-1.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-1.prod.yml
    <<: *deploy-zk-1-variables

deploy-zk-1-supporting-branch-production:
  stage: deploy
.deploy-zk-2-production:
  extends: .deploy-production
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '1'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - branches
  except:
    - master
  when: manual
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-2.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-2.prod.yml
    <<: *deploy-zk-2-variables

deploy-zk-2-supporting-branch-production:
  stage: deploy
.deploy-zk-3-production:
  extends: .deploy-production
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '2'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-3.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-3.prod.yml
    <<: *deploy-zk-3-variables

.deploy-support-branch: &deploy-support-branch
  only:
    - branches
  except:
    - master
  when: manual
    - schedules

deploy-zk-3-supporting-branch-production:
  stage: deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '3'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
deploy-zk-1-support-branch-development:
  extends: .deploy-zk-1-development
  <<: *deploy-support-branch

deploy-zk-2-support-branch-development:
  extends: .deploy-zk-2-development
  <<: *deploy-support-branch

deploy-zk-3-support-branch-development:
  extends: .deploy-zk-3-development
  <<: *deploy-support-branch

.deploy-stable-branch: &deploy-stable-branch
  only:
    - branches
  except:
    - master
  when: manual
  except:
    - schedules

deploy-zk-1-stable-branch-development:
  extends: .deploy-zk-1-development
  <<: *deploy-stable-branch

deploy-zk-2-stable-branch-development:
  extends: .deploy-zk-2-development
  <<: *deploy-stable-branch

deploy-zk-3-stable-branch-development:
  extends: .deploy-zk-3-development
  <<: *deploy-stable-branch

deploy-zk-1-stable-branch-production:
  stage: deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '1'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - master
  when: manual
  extends: .deploy-zk-1-production
  <<: *deploy-stable-branch

deploy-zk-2-stable-branch-production:
  stage: deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '2'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
  only:
    - master
  when: manual
  extends: .deploy-zk-2-production
  <<: *deploy-stable-branch

deploy-zk-3-stable-branch-production:
  stage: deploy
  variables:
    SSH_REMOTE: ${PRO_SSH_REMOTE}
    INSTANCE_ID: '3'
    SERVICES_TO_CHECK: ${STACK}_${CI_PROJECT_NAME}-${INSTANCE_ID}
    IMAGE_TAG: ${PRO_CONFLUENT_VERSION}
    COMPOSE_FILE: docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.tmpl.yml:docker-compose.${CI_PROJECT_NAME}-${INSTANCE_ID}.prod.yml
    AWS_REGION: ${AWS_REGION}
  script:
    - deploy.sh IMAGE_TAG=${IMAGE_TAG} COMPOSE_FILE=${COMPOSE_FILE} AWS_REGION=${AWS_REGION}
  environment:
    name: pro/${CI_PROJECT_NAME}-${INSTANCE_ID}
  extends: .deploy-zk-3-production
  <<: *deploy-stable-branch

.deploy-tag: &deploy-tag
  only:
    - master
  when: manual
    - tags

deploy-zk-1-tag-development:
  extends: .deploy-zk-1-development
  <<: *deploy-tag

deploy-zk-2-tag-development:
  extends: .deploy-zk-2-development
  <<: *deploy-tag

deploy-zk-3-tag-development:
  extends: .deploy-zk-3-development
  <<: *deploy-tag

deploy-zk-1-tag-production:
  extends: .deploy-zk-1-production
  <<: *deploy-tag

deploy-zk-2-tag-production:
  extends: .deploy-zk-2-production
  <<: *deploy-tag

deploy-zk-3-tag-production:
  extends: .deploy-zk-3-production
  <<: *deploy-tag