Я запускаю сценарий terragrunt
через ansible play, используя модуль ansible shell
.
Ansible task
environment:
AWS_ACCESS_KEY_ID: "{{aws_access_key_id}}"
AWS_SECRET_ACCESS_KEY: "{{aws_secret_access_key}}"
AWS_DEFAULT_REGION: "{{aws_region}}"
AWS_SESSION_TOKEN: "{{aws_session_token}}"
shell: "{{command}}"
Здесь я привожу command
в качестве аргумента, он выглядит как
terragrunt plan --terragrunt-working-dir /workspace/terraform/vpc
Внутри моего скрипта terragrunt некоторые модули terraform ссылаются на частный репозиторий Github, и его следует быть загруженным как часть выполнения команды.
terraform {
source = "git::https://<accesstoken>@<domanian>/vpc.git?ref=v0.2.0"
}
Но когда я запускаю роль ansible, я получаю ошибку аутентификации от git, но клонирование репо на хост-машине работает нормально (Нет проблемы с аутентификацией).
У меня проблема с аутентификацией git из-за игры ansible не с хост-машины (сейчас мой хост - localhost)
ERROR FROM TERRAGRUNT
error downloading 'https://<token>@<domain>/repo.git?ref=v0.7.0': /usr/local/bin/git exited with 128: Cloning into '/Users/<name>/Projects/terraform/integration/hli/eks/.terragrunt-cache/odeTjZcnAck1LSD4uQ9-Wn_30cQ/xBn6R6SbWXfZ6nabGc-LFpX6RXk'...
fatal: Authentication failed for 'https://<token>@<domain>/repo.git/'