From d89a4771f9e069c66509921026653cf2ab923324 Mon Sep 17 00:00:00 2001 From: skeris Date: Sat, 27 Jan 2024 16:48:27 +0300 Subject: [PATCH] ci: preparation for production --- .env.development.local | 2 +- .env.production.local | 2 +- .gitlab-ci.yml | 58 ++++++------------------- deployments/main/docker-compose.yaml | 13 ++++++ deployments/staging/docker-compose.yaml | 2 +- 5 files changed, 29 insertions(+), 48 deletions(-) create mode 100644 deployments/main/docker-compose.yaml diff --git a/.env.development.local b/.env.development.local index 71abd43..fb98eb7 100644 --- a/.env.development.local +++ b/.env.development.local @@ -1 +1 @@ -REACT_APP_DOMAIN="https://sadmin.pena" \ No newline at end of file +REACT_APP_DOMAIN="" diff --git a/.env.production.local b/.env.production.local index 71abd43..fb98eb7 100644 --- a/.env.production.local +++ b/.env.production.local @@ -1 +1 @@ -REACT_APP_DOMAIN="https://sadmin.pena" \ No newline at end of file +REACT_APP_DOMAIN="" diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c4f5987..f443023 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,59 +1,27 @@ 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: - tags: - - frontbuild - 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: - tags: - - frontbuild - 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 - 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 $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 - variables: - DEPLOY_TO: "staging" - BRANCH: "main" +deploy-to-prod: + rules: + - if: "$CI_COMMIT_BRANCH == $PRODUCTION_BRANCH" + tags: + - prod + - front + extends: .deploy_template diff --git a/deployments/main/docker-compose.yaml b/deployments/main/docker-compose.yaml new file mode 100644 index 0000000..8c8da21 --- /dev/null +++ b/deployments/main/docker-compose.yaml @@ -0,0 +1,13 @@ +version: "3.3" +services: + admin_front: + container_name: admin_front + restart: unless-stopped + image: $CI_REGISTRY_IMAGE/main:$CI_COMMIT_REF_SLUG.$CI_PIPELINE_ID + networks: + - default + hostname: admin + ports: + - 10.8.0.8:80:80 + - 10.8.0.8:443:443 + tty: true diff --git a/deployments/staging/docker-compose.yaml b/deployments/staging/docker-compose.yaml index d7042bb..1382983 100644 --- a/deployments/staging/docker-compose.yaml +++ b/deployments/staging/docker-compose.yaml @@ -3,7 +3,7 @@ services: admin_front: container_name: admin_front 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 networks: - marketplace_penahub_frontend - default