diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 3d32e75..791c0d1 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -49,12 +49,22 @@ test: deploy: stage: deploy script: + - echo "Настраиваем SSH-ключ для доступа к серверам..." + # Создаем директорию .ssh и настраиваем права доступа + - mkdir -p ~/.ssh + - chmod 700 ~/.ssh + # Записываем SSH-ключ в файл ~/.ssh/id_rsa + - echo "$SSH_PRIVATE_KEY" | tr -d '\r' > ~/.ssh/id_rsa + - chmod 600 ~/.ssh/id_rsa + # Запускаем основной пайплайн - echo "Распаковываем секреты..." - ansible-vault decrypt --vault-password-file ./vault-password.txt vars/secrets.yml - echo "Все ок. Деплоим в прод..." - ansible-playbook roles/deploy.yaml - echo "Упаковываем секреты..." - ansible-vault encrypt vars/secrets.yml --encrypt-vault-id default --vault-password-file ./vault-password.txt + # Удаляем ключ + - rm -rf ~/.ssh rules: - if: $CI_COMMIT_REF_NAME != "main" && $CI_COMMIT_REF_NAME != "master" when: manual