Бэкэнд-аутентификация Terraform S3 на Codeship / Docker - PullRequest
0 голосов
/ 20 ноября 2018

Я использую Terraform версии 0.11.10 и настроил бэкэнд S3, и он работает локально, когда я использую AWS_ACCESS_KEY_ID и AWS_SECRET_ACCESS_KEY переменные среды для аутентификации.

provider "aws" {
  region  = "eu-west-1"
}

terraform {
  backend "s3" {
    bucket         = "terraform-state-xxxxx"
    region         = "eu-west-1"
    key            = "terraform/dev.tfstate"
    dynamodb_table = "terraform-locks"
  }
}

Однако когдаЯ пытаюсь запустить точно такой же код в hashicorp / terraform: 0.11.10 Контейнер Docker на Codeship с теми же переменными среды выдает следующую ошибку:

Инициализация бэкэнда ...

Ошибка при настройке серверной части "s3": InvalidClientTokenId: маркер безопасности, включенный в запрос, недействителен.

Если я установлю skip_credentials_validation = "true", то получу следующее:

InvalidAccessKeyId: предоставленный вами идентификатор ключа доступа AWS не существует в наших записях.

Почему он не использует учетные данные из переменных среды?

Нет ~Файл /.aws/credentials или любое другое место, где он может получать учетные данные, о которых мне известно.

...