sync: latest working state before Gitea migration (2026-08-10)
ci / test (push) Failing after 1m31s
ci / postgres-readiness (push) Failing after 18s
ci / build-image (push) Has been skipped

This commit is contained in:
Codex
2026-08-10 05:53:49 +00:00
parent 5236ee74ac
commit d57c50bdc4
2 changed files with 58 additions and 1 deletions
+1 -1
View File
@@ -2,7 +2,7 @@
on: on:
push: push:
branches: ["main", "master"] branches: ["main", "master", "sales"]
pull_request: pull_request:
jobs: jobs:
+57
View File
@@ -284,6 +284,63 @@ deploy-production-source:
- if: '$CI_PIPELINE_SOURCE == "web" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' - if: '$CI_PIPELINE_SOURCE == "web" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
allow_failure: false allow_failure: false
deploy-sales-source:
stage: deploy
tags:
- call-center-prod
needs:
- test
- job: postgres-readiness
optional: true
variables:
DOCKER_HOST: ""
DOCKER_TLS_VERIFY: ""
DOCKER_CERT_PATH: ""
DOCKER_TLS_CERTDIR: ""
APP_IMAGE_NAME: call-center-app
SALES_APP_IMAGE_TAG: active-sales
SALES_DEPLOY_COMPOSE_FILE: /opt/konturai-migration/sales-call-center/docker-compose.yml
environment:
name: sales
url: https://sales.konturai.kz
before_script:
- command -v docker >/dev/null
- command -v ssh >/dev/null
- command -v scp >/dev/null
- command -v gzip >/dev/null
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- cp "$DEPLOY_SSH_PRIVATE_KEY" ~/.ssh/id_ed25519
- chmod 600 ~/.ssh/id_ed25519
- ssh-keyscan -H "$DEPLOY_HOST" >> ~/.ssh/known_hosts
script:
- test -n "$DEPLOY_HOST"
- test -n "$DEPLOY_USER"
- test -n "$SALES_DEPLOY_COMPOSE_FILE"
- IMAGE_ARCHIVE="call-center-app-sales-${CI_COMMIT_SHORT_SHA}.tar.gz"
- docker build -t "${APP_IMAGE_NAME}:sales-${CI_COMMIT_SHORT_SHA}" -t "${APP_IMAGE_NAME}:${SALES_APP_IMAGE_TAG}" .
- docker save "${APP_IMAGE_NAME}:sales-${CI_COMMIT_SHORT_SHA}" "${APP_IMAGE_NAME}:${SALES_APP_IMAGE_TAG}" | gzip > "$IMAGE_ARCHIVE"
- scp "$IMAGE_ARCHIVE" "${DEPLOY_USER}@${DEPLOY_HOST}:/tmp/$IMAGE_ARCHIVE"
- |
ssh "${DEPLOY_USER}@${DEPLOY_HOST}" "
set -e
SALES_COMPOSE_FILE='$SALES_DEPLOY_COMPOSE_FILE'
SALES_COMPOSE_DIR=\$(dirname \"\$SALES_COMPOSE_FILE\")
test -f \"\$SALES_COMPOSE_FILE\"
test -f \"\$SALES_COMPOSE_DIR/.env.production\"
gunzip -c /tmp/$IMAGE_ARCHIVE | sudo docker load
rm -f /tmp/$IMAGE_ARCHIVE
sudo env CALL_CENTER_IMAGE='${APP_IMAGE_NAME}:${SALES_APP_IMAGE_TAG}' docker compose -f \"\$SALES_COMPOSE_FILE\" config -q
sudo env CALL_CENTER_IMAGE='${APP_IMAGE_NAME}:${SALES_APP_IMAGE_TAG}' docker compose -f \"\$SALES_COMPOSE_FILE\" run --rm migrate
sudo env CALL_CENTER_IMAGE='${APP_IMAGE_NAME}:${SALES_APP_IMAGE_TAG}' docker compose -f \"\$SALES_COMPOSE_FILE\" up -d --no-build --remove-orphans --force-recreate
sudo docker image prune -f --filter dangling=true
sudo docker ps --filter 'name=^sales-call-center-app$' --format 'table {{.Names}}\t{{.Image}}\t{{.Status}}'
"
rules:
- if: '$CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_BRANCH == "sales"'
- if: '$CI_PIPELINE_SOURCE == "web" && $CI_COMMIT_BRANCH == "sales"'
allow_failure: false
hotfix-analyst-assets: hotfix-analyst-assets:
stage: deploy stage: deploy
tags: tags: