Skip to content

Conversation

@socraticDevBlog
Copy link
Owner

  • most recent version of AWS CLi might be more performant: dynamodb migrator container, without the sleep command, comes alive before the dynamodb instance is up and available

@socraticDevBlog socraticDevBlog self-assigned this Nov 4, 2025
@github-actions
Copy link

github-actions bot commented Nov 4, 2025

Terraform Format and Style 🖌success

Terraform Initialization ⚙️success

Terraform Plan 📖success

Show Plan

terraform
random_string.random: Refreshing state... [id=sZHL]
data.archive_file.layer_zip: Reading...
data.archive_file.lambda_zip: Reading...
data.archive_file.lambda_zip: Read complete after 0s [id=8a42fc87503ed542a35cbade99b4bf8f3c5d0a79]
aws_iam_policy.lambda_exec_role: Refreshing state... [id=arn:aws:iam::127449185323:policy/lambda-tf-pattern-ddb-post]
aws_sns_topic.budget_notification: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:BudgetNotificationTopic]
aws_cloudwatch_log_group.lambda_logs: Refreshing state... [id=/aws/lambda/pastebin-sZHL]
aws_sns_topic.api_requests_notification: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:APIRequestsNotificationTopic]
aws_cloudwatch_log_group.api_gw: Refreshing state... [id=/aws/api_gw/pastebin-sZHL]
aws_apigatewayv2_api.http_lambda: Refreshing state... [id=exj5m66tib]
aws_iam_role.lambda_exec: Refreshing state... [id=LambdaDdbPost]
aws_s3_bucket.lambda_bucket: Refreshing state... [id=pastebin20231223003519593600000001]
aws_dynamodb_table.paste: Refreshing state... [id=paste]
aws_iam_role_policy_attachment.lambda_policy: Refreshing state... [id=LambdaDdbPost-20231223010623714500000001]
aws_sns_topic_subscription.email_alerts["api_requests_notification"]: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:APIRequestsNotificationTopic:de5dc598-7048-4d4e-973c-99245f26f881]
aws_sns_topic_subscription.email_alerts["budget_notification"]: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:BudgetNotificationTopic:6fac9d94-197f-4a31-b6ee-8c9702c91d24]
aws_cloudwatch_metric_alarm.budget_alarm: Refreshing state... [id=MonthlyChargeAlarm]
aws_cloudwatch_metric_alarm.api_requests_alarm: Refreshing state... [id=APIGatewayRequestAlarm]
aws_s3_bucket_ownership_controls.lambda_bucket: Refreshing state... [id=pastebin20231223003519593600000001]
aws_s3_object.this: Refreshing state... [id=src.zip]
data.archive_file.layer_zip: Read complete after 1s [id=73356295ebbed74a2b34365b5031f5acfbe08428]
aws_lambda_layer_version.dependencies_layer: Refreshing state... [id=arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101]
aws_s3_bucket_acl.private_bucket: Refreshing state... [id=pastebin20231223003519593600000001,private]
aws_lambda_function.apigw_lambda_ddb: Refreshing state... [id=pastebin-sZHL]
aws_lambda_permission.api_gw: Refreshing state... [id=AllowExecutionFromAPIGateway]
aws_apigatewayv2_integration.apigw_lambda: Refreshing state... [id=v3fnxm6]
aws_apigatewayv2_route.read["OPTIONS /paste"]: Refreshing state... [id=1y3pfqk]
aws_apigatewayv2_route.write["POST /paste"]: Refreshing state... [id=arq6oei]
aws_apigatewayv2_route.read["GET /paste"]: Refreshing state... [id=pd3pcd6]
aws_apigatewayv2_route.read["GET /paste/api/pastes"]: Refreshing state... [id=i7knacg]
aws_apigatewayv2_route.write["POST /paste/api"]: Refreshing state... [id=eicvmug]
aws_apigatewayv2_route.read["GET /paste/api"]: Refreshing state... [id=95ed56b]
aws_apigatewayv2_stage.default: Refreshing state... [id=$default]

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
-/+ destroy and then create replacement

Terraform will perform the following actions:

  # aws_lambda_layer_version.dependencies_layer must be replaced
-/+ resource "aws_lambda_layer_version" "dependencies_layer" {
      ~ arn                         = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101" -> (known after apply)
      ~ code_sha256                 = "rjIVHL9QNUm9c7v8yMpXi8uYtjpTrbwm54c5aRLhOhg=" -> (known after apply)
      - compatible_architectures    = [] -> null
      ~ created_date                = "2025-05-24T18:34:28.141+0000" -> (known after apply)
      ~ id                          = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101" -> (known after apply)
      ~ layer_arn                   = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer" -> (known after apply)
      + signing_job_arn             = (known after apply)
      + signing_profile_version_arn = (known after apply)
      ~ source_code_hash            = "6b9ca2ec4c614332260b05a5b1a30c4b94df038e" -> "73356295ebbed74a2b34365b5031f5acfbe08428" # forces replacement
      ~ source_code_size            = 18847810 -> (known after apply)
      ~ version                     = "101" -> (known after apply)
        # (6 unchanged attributes hidden)
    }

Plan: 1 to add, 0 to change, 1 to destroy.

─────────────────────────────────────────────────────────────────────────────

Saved the plan to: tfplan

To perform exactly these actions, run the following command to apply:
    terraform apply "tfplan"

Pushed by: @socraticDevBlog, Action: pull_request

@socraticDevBlog socraticDevBlog merged commit a092651 into main Nov 4, 2025
3 checks passed
@socraticDevBlog socraticDevBlog deleted the 20251103-upgradeawslocaldependencies branch November 4, 2025 01:25
@github-actions
Copy link

github-actions bot commented Nov 4, 2025

Terraform Format and Style 🖌success

Terraform Initialization ⚙️success

Terraform Plan 📖success

Show Plan

terraform
data.archive_file.lambda_zip: Reading...
random_string.random: Refreshing state... [id=sZHL]
data.archive_file.layer_zip: Reading...
data.archive_file.lambda_zip: Read complete after 0s [id=8a42fc87503ed542a35cbade99b4bf8f3c5d0a79]
aws_sns_topic.api_requests_notification: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:APIRequestsNotificationTopic]
aws_cloudwatch_log_group.lambda_logs: Refreshing state... [id=/aws/lambda/pastebin-sZHL]
aws_cloudwatch_log_group.api_gw: Refreshing state... [id=/aws/api_gw/pastebin-sZHL]
aws_iam_policy.lambda_exec_role: Refreshing state... [id=arn:aws:iam::127449185323:policy/lambda-tf-pattern-ddb-post]
aws_dynamodb_table.paste: Refreshing state... [id=paste]
aws_sns_topic.budget_notification: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:BudgetNotificationTopic]
aws_apigatewayv2_api.http_lambda: Refreshing state... [id=exj5m66tib]
aws_iam_role.lambda_exec: Refreshing state... [id=LambdaDdbPost]
aws_s3_bucket.lambda_bucket: Refreshing state... [id=pastebin20231223003519593600000001]
aws_cloudwatch_metric_alarm.api_requests_alarm: Refreshing state... [id=APIGatewayRequestAlarm]
aws_sns_topic_subscription.email_alerts["api_requests_notification"]: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:APIRequestsNotificationTopic:de5dc598-7048-4d4e-973c-99245f26f881]
aws_sns_topic_subscription.email_alerts["budget_notification"]: Refreshing state... [id=arn:aws:sns:ca-central-1:127449185323:BudgetNotificationTopic:6fac9d94-197f-4a31-b6ee-8c9702c91d24]
aws_cloudwatch_metric_alarm.budget_alarm: Refreshing state... [id=MonthlyChargeAlarm]
aws_iam_role_policy_attachment.lambda_policy: Refreshing state... [id=LambdaDdbPost-20231223010623714500000001]
data.archive_file.layer_zip: Read complete after 1s [id=c4228d6b54b2c5771af2145bd05fddc5f42b8da8]
aws_lambda_layer_version.dependencies_layer: Refreshing state... [id=arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101]
aws_s3_bucket_ownership_controls.lambda_bucket: Refreshing state... [id=pastebin20231223003519593600000001]
aws_s3_object.this: Refreshing state... [id=src.zip]
aws_s3_bucket_acl.private_bucket: Refreshing state... [id=pastebin20231223003519593600000001,private]
aws_lambda_function.apigw_lambda_ddb: Refreshing state... [id=pastebin-sZHL]
aws_lambda_permission.api_gw: Refreshing state... [id=AllowExecutionFromAPIGateway]
aws_apigatewayv2_integration.apigw_lambda: Refreshing state... [id=v3fnxm6]
aws_apigatewayv2_route.write["POST /paste/api"]: Refreshing state... [id=eicvmug]
aws_apigatewayv2_route.read["GET /paste/api/pastes"]: Refreshing state... [id=i7knacg]
aws_apigatewayv2_route.write["POST /paste"]: Refreshing state... [id=arq6oei]
aws_apigatewayv2_route.read["GET /paste/api"]: Refreshing state... [id=95ed56b]
aws_apigatewayv2_route.read["OPTIONS /paste"]: Refreshing state... [id=1y3pfqk]
aws_apigatewayv2_route.read["GET /paste"]: Refreshing state... [id=pd3pcd6]
aws_apigatewayv2_stage.default: Refreshing state... [id=$default]

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
-/+ destroy and then create replacement

Terraform will perform the following actions:

  # aws_lambda_layer_version.dependencies_layer must be replaced
-/+ resource "aws_lambda_layer_version" "dependencies_layer" {
      ~ arn                         = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101" -> (known after apply)
      ~ code_sha256                 = "rjIVHL9QNUm9c7v8yMpXi8uYtjpTrbwm54c5aRLhOhg=" -> (known after apply)
      - compatible_architectures    = [] -> null
      ~ created_date                = "2025-05-24T18:34:28.141+0000" -> (known after apply)
      ~ id                          = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer:101" -> (known after apply)
      ~ layer_arn                   = "arn:aws:lambda:ca-central-1:127449185323:layer:python-layer" -> (known after apply)
      + signing_job_arn             = (known after apply)
      + signing_profile_version_arn = (known after apply)
      ~ source_code_hash            = "6b9ca2ec4c614332260b05a5b1a30c4b94df038e" -> "c4228d6b54b2c5771af2145bd05fddc5f42b8da8" # forces replacement
      ~ source_code_size            = 18847810 -> (known after apply)
      ~ version                     = "101" -> (known after apply)
        # (6 unchanged attributes hidden)
    }

Plan: 1 to add, 0 to change, 1 to destroy.

─────────────────────────────────────────────────────────────────────────────

Saved the plan to: tfplan

To perform exactly these actions, run the following command to apply:
    terraform apply "tfplan"

Pushed by: @socraticDevBlog, Action: pull_request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants