diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dd1fdd2..aaede0b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,57 +1,26 @@ include: - project: "devops/pena-continuous-integration" file: "/templates/docker/build-template.gitlab-ci.yml" - - project: "devops/pena-continuous-integration" - file: "/templates/docker/clean-template.gitlab-ci.yml" - project: "devops/pena-continuous-integration" file: "/templates/docker/deploy-template.gitlab-ci.yml" stages: - - clean - build - deploy -clear-old-images: - extends: .clean_template - variables: - STAGING_BRANCH: "main" - PRODUCTION_BRANCH: "main" - image: - name: docker/compose:1.28.0 - entrypoint: [""] - before_script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker images - script: - - docker system prune -af - build-app: - stage: build - before_script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - echo STAGING_BRANCH = $STAGING_BRANCH - - echo CI_REGISTRY = $CI_REGISTRY - - echo CI_REGISTRY_USER = $CI_REGISTRY_USER - - echo CI_PROJECT_DIR = $CI_PROJECT_DIR - - echo CI_REGISTRY_IMAGE = $CI_REGISTRY_IMAGE - - echo CI_COMMIT_REF_SLUG = $CI_COMMIT_REF_SLUG - - echo DOCKER_BUILD_PATH = $DOCKER_BUILD_PATH - - echo CI_PIPELINE_ID = $CI_PIPELINE_ID - - echo JWT_SECRET = $JWT_SECRET - - variables: - DOCKER_BUILD_PATH: "build/Dockerfile" - PRODUCTION_BRANCH: main - STAGING_BRANCH: "main" - rules: - - if: $CI_COMMIT_BRANCH == $PRODUCTION_BRANCH || $CI_COMMIT_BRANCH == $STAGING_BRANCH - - script: - - docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID --build-arg GITLAB_TOKEN=$GITLAB_TOKEN $CI_PROJECT_DIR - - docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID - + extends: .build_template deploy-to-staging: + rules: + - if: "$CI_COMMIT_BRANCH == $STAGING_BRANCH" + extends: .deploy_template + tags: + - staging + extends: .deploy_template + +deploy-to-prod: + rules: + - if: "$CI_COMMIT_BRANCH == $PRODUCTION_BRANCH" + tags: + - prod extends: .deploy_template - variables: - DEPLOY_TO: "staging" - BRANCH: "main" diff --git a/deployments/main/docker-compose.yaml b/deployments/main/docker-compose.yaml new file mode 100644 index 0000000..d77d94c --- /dev/null +++ b/deployments/main/docker-compose.yaml @@ -0,0 +1,19 @@ +services: + verification: + container_name: verification_service + restart: unless-stopped + image: $CI_REGISTRY_IMAGE/main:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID + hostname: verification_service + ports: + - 10.8.0.8:7035:7035 + environment: + MONGO_URI: mongodb://$MONGO_USER-prod:$MONGO_PASSWORD@10.8.0.8:27017/?authSource=verification + PENADISK_URL: $PENADISK_URL + TELEGRAM_TOKEN: $TELEGRAM_TOKEN + TELEGRAM_CHANNEL_ID: $TELEGRAM_CHANNEL_ID + S3_ENDPOINT: $S3_ENDPOINT + S3_ACCESS_KEY_ID: $S3_ACCESS_KEY_ID + S3_SECRET_KEY: $S3_SECRET_KEY + JWT_SECRET: $JWT_SECRET + + tty: true diff --git a/deployments/staging/docker-compose.yaml b/deployments/staging/docker-compose.yaml index bfb6bcb..4af518f 100644 --- a/deployments/staging/docker-compose.yaml +++ b/deployments/staging/docker-compose.yaml @@ -2,7 +2,7 @@ services: verification: container_name: verification_service restart: unless-stopped - image: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID + image: $CI_REGISTRY_IMAGE/staging:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID hostname: verification_service ports: - "7035:7035"