diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7438afb..9322e3b 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -29,6 +29,8 @@ lint: - echo "Упаковываем секреты..." - ansible-vault encrypt vars/secrets.yml --encrypt-vault-id default --vault-password-file ./vault-password.txt allow_failure: false + rules: + - if: $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "master" test: stage: test @@ -40,6 +42,8 @@ test: - echo "Упаковываем секреты..." - ansible-vault encrypt vars/secrets.yml --encrypt-vault-id default --vault-password-file ./vault-password.txt allow_failure: false + rules: + - if: $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "master" deploy: stage: deploy @@ -50,9 +54,25 @@ deploy: - ansible-playbook roles/deploy.yaml - echo "Упаковываем секреты..." - ansible-vault encrypt vars/secrets.yml --encrypt-vault-id default --vault-password-file ./vault-password.txt - only: - - /^cluster-.*$/ + rules: + - if: $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "master" + when: manual + +notify: + stage: notify + script: + - | + if [ "$CI_JOB_STATUS" == "success" ]; then + MESSAGE="✅ Пайплайн успешно завершен!%0AПроект: $CI_PROJECT_NAME%0AВетка: $CI_COMMIT_REF_NAME%0AСтатус: $CI_JOB_STATUS" + else + MESSAGE="❌ Пайплайн завершен с ошибкой!%0AПроект: $CI_PROJECT_NAME%0AВетка: $CI_COMMIT_REF_NAME%0AСтатус: $CI_JOB_STATUS" + fi +# curl -s -X POST "https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage" \ +# -d "chat_id=$TELEGRAM_CHAT_ID" \ +# -d "text=$MESSAGE" + rules: + - if: $CI_JOB_STATUS # Отправлять уведомление только после завершения пайплайна after_script: - - echo "Removing symlink..." - #- rm -rf /ansible + - echo "Работа пайплайна завершена" +