Терраформ провайдер local-exec - aws cli - PullRequest
0 голосов
/ 19 ноября 2018

Попытка использовать AWS cli до put-public-access-block в s3 корзине, но столкнулась с проблемой и не может решить ее.

Это мой код;

resource "aws_s3_bucket" "test" {
  bucket = "blah-blah"

  versioning {
    enabled = false
  }

  server_side_encryption_configuration {
    rule {
        apply_server_side_encryption_by_default {
            sse_algorithm = "AES256"
        }
    }
  }

  tags {
    Name = "blah-blah"
  }
}

resource "null_resource" "s3publicpol" {
  provisioner "local-exec" {
    command = "aws s3api put-public-access-block --bucket blah-blah --public-access-block-configuration BlockPublicAcls=true,IgnorePublicAcls=true,BlockPublicPolicy=true,RestrictPublicBuckets=true"
  }   
}

При запуске этого из terraform я получаю это сообщение;

Произошла ошибка (AccessDenied) при вызове операции PutPublicAccessBlock: доступ запрещен

Но когда я пытаюсь запустить AWS cli и запустить команду над собой, она прекрасно работает, поэтому у меня есть разрешения в AWS.

Мне не хватает чего-то, что мне нужно сделать локально для Terraform?

Приветствие Стивен

...