hexagonal-lambda icon indicating copy to clipboard operation
hexagonal-lambda copied to clipboard

Terraform apply fails first, then works 2nd time in some cases

Open focusaurus opened this issue 7 years ago • 3 comments

Sometimes a terraform apply run does some things successfully but fails before completing. Then I rerun it again immediately without any other changes/actions and it succeeds. My strong hunch about this is that most likely my resource dependencies are not modeled correctly in terraform. I have seen this in at least 2 specific cases.

  1. Fresh install into a blank slate AWS account.
aws_api_gateway_deployment.hexagonal-lambda-dev: Error creating API Gateway Deployment: BadRequestException: The REST API doesn't contain any methods
	status code: 400, request id: redacted
  1. Creating a new lambda function.
Error applying plan:

1 error(s) occurred:

* aws_iam_role_policy_attachment.post-up: 1 error(s) occurred:

* aws_iam_role_policy_attachment.post-up: [WARN] Error attaching policy arn:aws:iam::REDACTED:policy/terraform-redacted to IAM Role post-up: NoSuchEntity: Role not found for post-up
	status code: 404, request id: redacted

focusaurus avatar Jul 13 '17 15:07 focusaurus

@cludden Might you be willing to review the terraform stuff in this repo? Mostly just for generally "am I doing this right" but also if you have experienced some of the dependency issues when using modules and have suggestions I'd love to hear them.

focusaurus avatar Sep 28 '17 15:09 focusaurus

@focusaurus I'm not exactly sure what's causing you're errors, but I pushed an example project that I through together based on past projects. Maybe you can spot the differences. Hope it helps

cludden avatar Sep 28 '17 22:09 cludden

Thanks! Already picked up a nice tip with aws_caller_identity. Will study in more detail soon too.

focusaurus avatar Sep 29 '17 16:09 focusaurus