This commit is contained in:
Заид Омар Медхат 2025-12-14 00:13:50 +05:00
parent 96f0b6ba80
commit 1d21861615

View File

@ -16,9 +16,10 @@ build_and_push:
DOCKER_TLS_CERTDIR: "" DOCKER_TLS_CERTDIR: ""
DOCKER_HOST: tcp://docker:2375 DOCKER_HOST: tcp://docker:2375
rules: rules:
- if: '$CI_COMMIT_BRANCH == "main"' - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
script: script:
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" "$CI_REGISTRY" - test -n "$CI_REGISTRY" -a -n "$CI_REGISTRY_IMAGE" || (echo "GitLab Container Registry is not enabled/configured for this project." && exit 1)
- echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin "$CI_REGISTRY"
- docker build --target production -t "$IMAGE_TAG" -t "$IMAGE_TAG_LATEST" . - docker build --target production -t "$IMAGE_TAG" -t "$IMAGE_TAG_LATEST" .
- docker push "$IMAGE_TAG" - docker push "$IMAGE_TAG"
- docker push "$IMAGE_TAG_LATEST" - docker push "$IMAGE_TAG_LATEST"
@ -30,7 +31,7 @@ deploy_production:
name: production name: production
url: https://api-finance.ai-assistant-bot.xyz url: https://api-finance.ai-assistant-bot.xyz
rules: rules:
- if: '$CI_COMMIT_BRANCH == "main"' - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH'
when: manual when: manual
allow_failure: false allow_failure: false
before_script: before_script:
@ -49,6 +50,7 @@ deploy_production:
--exclude='coverage' \ --exclude='coverage' \
--exclude='dist' \ --exclude='dist' \
./ "$DEPLOY_USER@$DEPLOY_HOST:/opt/apps/api-finance/" ./ "$DEPLOY_USER@$DEPLOY_HOST:/opt/apps/api-finance/"
- ssh "$DEPLOY_USER@$DEPLOY_HOST" "docker login -u '$CI_REGISTRY_USER' -p '$CI_REGISTRY_PASSWORD' '$CI_REGISTRY'" - test -n "$CI_REGISTRY" -a -n "$CI_REGISTRY_IMAGE" || (echo "GitLab Container Registry is not enabled/configured for this project." && exit 1)
- ssh "$DEPLOY_USER@$DEPLOY_HOST" "echo '$CI_REGISTRY_PASSWORD' | docker login -u '$CI_REGISTRY_USER' --password-stdin '$CI_REGISTRY'"
- ssh "$DEPLOY_USER@$DEPLOY_HOST" "cd /opt/apps/api-finance && APP_IMAGE='$IMAGE_TAG' docker compose -f docker-compose.server.yml pull" - ssh "$DEPLOY_USER@$DEPLOY_HOST" "cd /opt/apps/api-finance && APP_IMAGE='$IMAGE_TAG' docker compose -f docker-compose.server.yml pull"
- ssh "$DEPLOY_USER@$DEPLOY_HOST" "cd /opt/apps/api-finance && APP_IMAGE='$IMAGE_TAG' docker compose -f docker-compose.server.yml up -d" - ssh "$DEPLOY_USER@$DEPLOY_HOST" "cd /opt/apps/api-finance && APP_IMAGE='$IMAGE_TAG' docker compose -f docker-compose.server.yml up -d"