Fix Code and first dev-prod deploy

This commit is contained in:
2024-05-25 15:20:52 +02:00
parent 499a4f8480
commit 42918d3dd6
9 changed files with 229 additions and 159 deletions

1
.gitignore vendored
View File

@@ -167,6 +167,7 @@ cython_debug/
# .tfstate files
#*.tfstate
#*.tfstate.*
*.plan
# Crash log files
crash.log

View File

@@ -2,7 +2,6 @@ import os
import json
import boto3
from uuid import uuid4
from mypy_boto3_s3 import S3Client
from pydantic import BaseModel
from typing import Dict, Optional
from redirects_base import Content, Customer, Redirects, Tag
@@ -103,7 +102,7 @@ def getObjectKeys(record: Record) -> list[str]:
keys.reverse()
return keys
def processAdd(record: Record, redirects: Redirects, client: S3Client) -> None:
def processAdd(record: Record, redirects: Redirects, client) -> None:
# splitta la chiave per capire la directory
keys = getObjectKeys(record=record)

View File

@@ -144,7 +144,7 @@ resource "aws_iam_role_policy_attachment" "iam_for_lambda_allow_logs" {
policy_arn = "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
}
data "archive_file" "lambda_standout_code" {
data "archive_file" "lambda_standout_redirect_code" {
type = "zip"
source_dir = "./lambda_redirect"
output_path = "./lambda_zip/standout_lambda_redirect-${var.env}.zip"
@@ -176,7 +176,7 @@ resource "aws_lambda_function" "lambda_standout_redirect" {
role = aws_iam_role.iam_for_lambda.arn
handler = "lambda_redirect.lambda_handler"
source_code_hash = data.archive_file.lambda_standout_code.output_base64sha256
source_code_hash = data.archive_file.lambda_standout_redirect_code.output_base64sha256
runtime = "python3.12"
@@ -200,7 +200,7 @@ resource "aws_lambda_function" "lambda_standout_config" {
role = aws_iam_role.iam_for_lambda.arn
handler = "lambda_config.lambda_handler"
source_code_hash = data.archive_file.lambda_standout_code.output_base64sha256
source_code_hash = data.archive_file.lambda_standout_config_code.output_base64sha256
runtime = "python3.12"

Binary file not shown.

Binary file not shown.

View File

@@ -1,7 +1,7 @@
{
"version": 4,
"terraform_version": "1.8.3",
"serial": 86,
"serial": 97,
"lineage": "c4760d73-7122-ff64-ba30-f5482ab084b8",
"outputs": {},
"resources": [
@@ -40,7 +40,39 @@
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_code",
"name": "lambda_standout_config_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "c70e679bb3c7f54d8ebf05e81f2757cae660be79",
"output_base64sha256": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"output_base64sha512": "39KD5BHf3LEcSJpNUHrQ6R9mzmNWSVojgsdDlZIHAhy7c5tjNepQbdaquHGE18mVEAuOXc0mD8wSQrTO5kIcEA==",
"output_file_mode": null,
"output_md5": "1b73b73d80a3b5095ea415fd5665b397",
"output_path": "./lambda_zip/standout_lambda_config-dev.zip",
"output_sha": "c70e679bb3c7f54d8ebf05e81f2757cae660be79",
"output_sha256": "dc18155352d92003464aa151b30b5f70a38f6546d0467b725e4601bda954a3f6",
"output_sha512": "dfd283e411dfdcb11c489a4d507ad0e91f66ce6356495a2382c743959207021cbb739b6335ea506dd6aab87184d7c995100b8e5dcd260fcc1242b4cee6421c10",
"output_size": 4619,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_config",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_redirect_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
@@ -69,38 +101,6 @@
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_config_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "a401470a001300338fa7d09cdffe3f16277971d8",
"output_base64sha256": "7cpCQD1Lf6QDwSPk/edCa8XDZReUu7rRhhCagnooAic=",
"output_base64sha512": "oUyZrUKNQPvZt3crReW69Vapq3IGvHD5hk617XXamv8G99f62CoJO1lsd07gaVlf5ln2EyPj+cQleaXg5w3JCg==",
"output_file_mode": null,
"output_md5": "e97ce8be22567986c9fcff5165b4afdb",
"output_path": "./lambda_zip/standout_lambda_config-dev.zip",
"output_sha": "a401470a001300338fa7d09cdffe3f16277971d8",
"output_sha256": "edca42403d4b7fa403c123e4fde7426bc5c3651794bbbad186109a827a280227",
"output_sha512": "a14c99ad428d40fbd9b7772b45e5baf556a9ab7206bc70f9864eb5ed75da9aff06f7d7fad82a093b596c774ee069595fe659f61323e3f9c42579a5e0e70dc90a",
"output_size": 4639,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_config",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "aws_iam_policy_document",
@@ -317,7 +317,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -356,7 +356,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -420,7 +420,9 @@
"force_detach_policies": false,
"id": "iam_for_lambda-dev",
"inline_policy": [],
"managed_policy_arns": [],
"managed_policy_arns": [
"arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
],
"max_session_duration": 3600,
"name": "iam_for_lambda-dev",
"name_prefix": "",
@@ -473,7 +475,7 @@
"x86_64"
],
"arn": "arn:aws:lambda:eu-west-1:654654203111:function:standout-config-dev",
"code_sha256": "7cpCQD1Lf6QDwSPk/edCa8XDZReUu7rRhhCagnooAic=",
"code_sha256": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"code_signing_config_arn": "",
"dead_letter_config": [],
"description": "",
@@ -500,7 +502,7 @@
"image_uri": "",
"invoke_arn": "arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:654654203111:function:standout-config-dev/invocations",
"kms_key_arn": "",
"last_modified": "2024-05-25T12:28:52.179+0000",
"last_modified": "2024-05-25T13:16:55.000+0000",
"layers": [
"arn:aws:lambda:eu-west-1:654654203111:layer:lambda_deps:7"
],
@@ -529,8 +531,8 @@
"signing_profile_version_arn": "",
"skip_destroy": false,
"snap_start": [],
"source_code_hash": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"source_code_size": 4639,
"source_code_hash": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"source_code_size": 4619,
"tags": {},
"tags_all": {},
"timeout": 10,
@@ -552,7 +554,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -647,7 +649,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -721,7 +723,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -759,7 +761,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -992,7 +994,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}

View File

@@ -1,7 +1,7 @@
{
"version": 4,
"terraform_version": "1.8.3",
"serial": 84,
"serial": 95,
"lineage": "c4760d73-7122-ff64-ba30-f5482ab084b8",
"outputs": {},
"resources": [
@@ -37,38 +37,6 @@
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "bf96d8f34aad3a86e985be53a3a6682d62164e73",
"output_base64sha256": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"output_base64sha512": "R+OeVTikvIPAsYIjKtRdZdFCZQWLp/PUtIvpTIwc726mIuccBlur53ethzlJezoXubQmtF9CEiUdjzsrfb3/pQ==",
"output_file_mode": null,
"output_md5": "6971a02ee30cd8591ded93920a6b994a",
"output_path": "./lambda_zip/standout_lambda_redirect-dev.zip",
"output_sha": "bf96d8f34aad3a86e985be53a3a6682d62164e73",
"output_sha256": "9a41356c2426097b20764a495f5cac7086c034b626716953c802f37f1d81a9b2",
"output_sha512": "47e39e5538a4bc83c0b182232ad45d65d14265058ba7f3d4b48be94c8c1cef6ea622e71c065babe777ad8739497b3a17b9b426b45f4212251d8f3b2b7dbdffa5",
"output_size": 51368,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_redirect",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "archive_file",
@@ -101,6 +69,38 @@
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_redirect_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "bf96d8f34aad3a86e985be53a3a6682d62164e73",
"output_base64sha256": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"output_base64sha512": "R+OeVTikvIPAsYIjKtRdZdFCZQWLp/PUtIvpTIwc726mIuccBlur53ethzlJezoXubQmtF9CEiUdjzsrfb3/pQ==",
"output_file_mode": null,
"output_md5": "6971a02ee30cd8591ded93920a6b994a",
"output_path": "./lambda_zip/standout_lambda_redirect-dev.zip",
"output_sha": "bf96d8f34aad3a86e985be53a3a6682d62164e73",
"output_sha256": "9a41356c2426097b20764a495f5cac7086c034b626716953c802f37f1d81a9b2",
"output_sha512": "47e39e5538a4bc83c0b182232ad45d65d14265058ba7f3d4b48be94c8c1cef6ea622e71c065babe777ad8739497b3a17b9b426b45f4212251d8f3b2b7dbdffa5",
"output_size": 51368,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_redirect",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "aws_iam_policy_document",
@@ -317,7 +317,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -356,7 +356,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -420,7 +420,9 @@
"force_detach_policies": false,
"id": "iam_for_lambda-dev",
"inline_policy": [],
"managed_policy_arns": [],
"managed_policy_arns": [
"arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole"
],
"max_session_duration": 3600,
"name": "iam_for_lambda-dev",
"name_prefix": "",
@@ -438,6 +440,28 @@
}
]
},
{
"mode": "managed",
"type": "aws_iam_role_policy_attachment",
"name": "iam_for_lambda_allow_logs",
"provider": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"id": "iam_for_lambda-dev-20240525125938547100000001",
"policy_arn": "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole",
"role": "iam_for_lambda-dev"
},
"sensitive_attributes": [],
"private": "bnVsbA==",
"dependencies": [
"aws_iam_role.iam_for_lambda",
"data.aws_iam_policy_document.lambda_role"
]
}
]
},
{
"mode": "managed",
"type": "aws_lambda_function",
@@ -478,7 +502,7 @@
"image_uri": "",
"invoke_arn": "arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:654654203111:function:standout-config-dev/invocations",
"kms_key_arn": "",
"last_modified": "2024-05-25T12:28:52.179+0000",
"last_modified": "2024-05-25T13:15:18.000+0000",
"layers": [
"arn:aws:lambda:eu-west-1:654654203111:layer:lambda_deps:7"
],
@@ -507,7 +531,7 @@
"signing_profile_version_arn": "",
"skip_destroy": false,
"snap_start": [],
"source_code_hash": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"source_code_hash": "7cpCQD1Lf6QDwSPk/edCa8XDZReUu7rRhhCagnooAic=",
"source_code_size": 4639,
"tags": {},
"tags_all": {},
@@ -530,7 +554,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -625,7 +649,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -699,7 +723,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -737,7 +761,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -970,7 +994,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}

View File

@@ -1,7 +1,7 @@
{
"version": 4,
"terraform_version": "1.8.3",
"serial": 34,
"serial": 37,
"lineage": "bfb14822-28e1-8bec-1200-85cd7662a2f9",
"outputs": {},
"resources": [
@@ -40,7 +40,39 @@
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_code",
"name": "lambda_standout_config_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "c70e679bb3c7f54d8ebf05e81f2757cae660be79",
"output_base64sha256": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"output_base64sha512": "39KD5BHf3LEcSJpNUHrQ6R9mzmNWSVojgsdDlZIHAhy7c5tjNepQbdaquHGE18mVEAuOXc0mD8wSQrTO5kIcEA==",
"output_file_mode": null,
"output_md5": "1b73b73d80a3b5095ea415fd5665b397",
"output_path": "./lambda_zip/standout_lambda_config-prod.zip",
"output_sha": "c70e679bb3c7f54d8ebf05e81f2757cae660be79",
"output_sha256": "dc18155352d92003464aa151b30b5f70a38f6546d0467b725e4601bda954a3f6",
"output_sha512": "dfd283e411dfdcb11c489a4d507ad0e91f66ce6356495a2382c743959207021cbb739b6335ea506dd6aab87184d7c995100b8e5dcd260fcc1242b4cee6421c10",
"output_size": 4619,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_config",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_redirect_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
@@ -69,38 +101,6 @@
}
]
},
{
"mode": "data",
"type": "archive_file",
"name": "lambda_standout_config_code",
"provider": "provider[\"registry.terraform.io/hashicorp/archive\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"exclude_symlink_directories": null,
"excludes": null,
"id": "a401470a001300338fa7d09cdffe3f16277971d8",
"output_base64sha256": "7cpCQD1Lf6QDwSPk/edCa8XDZReUu7rRhhCagnooAic=",
"output_base64sha512": "oUyZrUKNQPvZt3crReW69Vapq3IGvHD5hk617XXamv8G99f62CoJO1lsd07gaVlf5ln2EyPj+cQleaXg5w3JCg==",
"output_file_mode": null,
"output_md5": "e97ce8be22567986c9fcff5165b4afdb",
"output_path": "./lambda_zip/standout_lambda_config-prod.zip",
"output_sha": "a401470a001300338fa7d09cdffe3f16277971d8",
"output_sha256": "edca42403d4b7fa403c123e4fde7426bc5c3651794bbbad186109a827a280227",
"output_sha512": "a14c99ad428d40fbd9b7772b45e5baf556a9ab7206bc70f9864eb5ed75da9aff06f7d7fad82a093b596c774ee069595fe659f61323e3f9c42579a5e0e70dc90a",
"output_size": 4639,
"source": [],
"source_content": null,
"source_content_filename": null,
"source_dir": "./lambda_config",
"source_file": null,
"type": "zip"
},
"sensitive_attributes": []
}
]
},
{
"mode": "data",
"type": "aws_iam_policy_document",
@@ -317,7 +317,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -356,7 +356,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -438,6 +438,28 @@
}
]
},
{
"mode": "managed",
"type": "aws_iam_role_policy_attachment",
"name": "iam_for_lambda_allow_logs",
"provider": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"id": "iam_for_lambda-prod-20240525131933911000000001",
"policy_arn": "arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole",
"role": "iam_for_lambda-prod"
},
"sensitive_attributes": [],
"private": "bnVsbA==",
"dependencies": [
"aws_iam_role.iam_for_lambda",
"data.aws_iam_policy_document.lambda_role"
]
}
]
},
{
"mode": "managed",
"type": "aws_lambda_function",
@@ -451,7 +473,7 @@
"x86_64"
],
"arn": "arn:aws:lambda:eu-central-1:654654203111:function:standout-config-prod",
"code_sha256": "7cpCQD1Lf6QDwSPk/edCa8XDZReUu7rRhhCagnooAic=",
"code_sha256": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"code_signing_config_arn": "",
"dead_letter_config": [],
"description": "",
@@ -478,7 +500,7 @@
"image_uri": "",
"invoke_arn": "arn:aws:apigateway:eu-central-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-central-1:654654203111:function:standout-config-prod/invocations",
"kms_key_arn": "",
"last_modified": "2024-05-25T12:34:13.337+0000",
"last_modified": "2024-05-25T13:19:36.000+0000",
"layers": [
"arn:aws:lambda:eu-central-1:654654203111:layer:lambda_deps:2"
],
@@ -507,8 +529,8 @@
"signing_profile_version_arn": "",
"skip_destroy": false,
"snap_start": [],
"source_code_hash": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"source_code_size": 4639,
"source_code_hash": "3BgVU1LZIANGSqFRswtfcKOPZUbQRntyXkYBvalUo/Y=",
"source_code_size": 4619,
"tags": {},
"tags_all": {},
"timeout": 10,
@@ -530,7 +552,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -625,7 +647,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -699,7 +721,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_redirect_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -737,7 +759,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}
@@ -777,7 +799,7 @@
"logging": [],
"object_lock_configuration": [],
"object_lock_enabled": false,
"policy": "",
"policy": "{\"Statement\":[{\"Action\":[\"s3:Put*\",\"s3:List*\",\"s3:Get*\"],\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Resource\":\"arn:aws:s3:::standout-data-prod/*\"}],\"Version\":\"2012-10-17\"}",
"region": "eu-central-1",
"replication_configuration": [],
"request_payer": "BucketOwner",
@@ -970,7 +992,7 @@
"aws_lambda_layer_version.lambda_layer",
"aws_s3_bucket.s3_standout",
"aws_s3_bucket.s3_standout_config",
"data.archive_file.lambda_standout_code",
"data.archive_file.lambda_standout_config_code",
"data.aws_iam_policy_document.lambda_role"
]
}

View File

@@ -1,7 +1,7 @@
{
"version": 4,
"terraform_version": "1.8.3",
"serial": 32,
"serial": 34,
"lineage": "bfb14822-28e1-8bec-1200-85cd7662a2f9",
"outputs": {},
"resources": [
@@ -268,7 +268,7 @@
"protocol_type": "HTTP",
"route_key": null,
"route_selection_expression": "$request.method $request.path",
"tags": null,
"tags": {},
"tags_all": {},
"target": null,
"version": ""
@@ -301,8 +301,8 @@
"integration_uri": "arn:aws:apigateway:eu-central-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-central-1:654654203111:function:standout-redirect-prod/invocations",
"passthrough_behavior": "",
"payload_format_version": "1.0",
"request_parameters": null,
"request_templates": null,
"request_parameters": {},
"request_templates": {},
"response_parameters": [],
"template_selection_expression": "",
"timeout_milliseconds": 30000,
@@ -334,13 +334,13 @@
"attributes": {
"api_id": "2kvqe64ca1",
"api_key_required": false,
"authorization_scopes": null,
"authorization_scopes": [],
"authorization_type": "NONE",
"authorizer_id": "",
"id": "xsd9e7k",
"model_selection_expression": "",
"operation_name": "",
"request_models": null,
"request_models": {},
"request_parameter": [],
"route_key": "GET /api",
"route_response_selection_expression": "",
@@ -385,15 +385,15 @@
"throttling_rate_limit": 0
}
],
"deployment_id": "",
"deployment_id": "7vgrat",
"description": "",
"execution_arn": "arn:aws:execute-api:eu-central-1:654654203111:2kvqe64ca1/prod",
"id": "prod",
"invoke_url": "https://2kvqe64ca1.execute-api.eu-central-1.amazonaws.com/prod",
"name": "prod",
"route_settings": [],
"stage_variables": null,
"tags": null,
"stage_variables": {},
"tags": {},
"tags_all": {}
},
"sensitive_attributes": [],
@@ -426,7 +426,7 @@
"name_prefix": "",
"path": "/",
"permissions_boundary": "",
"tags": null,
"tags": {},
"tags_all": {},
"unique_id": "AROAZQ3DOMTTRSXZ5VXRN"
},
@@ -478,7 +478,7 @@
"image_uri": "",
"invoke_arn": "arn:aws:apigateway:eu-central-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-central-1:654654203111:function:standout-config-prod/invocations",
"kms_key_arn": "",
"last_modified": "2024-05-25T12:34:06.568+0000",
"last_modified": "2024-05-25T12:34:13.337+0000",
"layers": [
"arn:aws:lambda:eu-central-1:654654203111:layer:lambda_deps:2"
],
@@ -509,7 +509,7 @@
"snap_start": [],
"source_code_hash": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"source_code_size": 4639,
"tags": null,
"tags": {},
"tags_all": {},
"timeout": 10,
"timeouts": null,
@@ -575,7 +575,7 @@
"image_uri": "",
"invoke_arn": "arn:aws:apigateway:eu-central-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-central-1:654654203111:function:standout-redirect-prod/invocations",
"kms_key_arn": "",
"last_modified": "2024-05-25T12:33:56.589+0000",
"last_modified": "2024-05-25T12:34:06.514+0000",
"layers": [
"arn:aws:lambda:eu-central-1:654654203111:layer:lambda_deps:2"
],
@@ -606,7 +606,7 @@
"snap_start": [],
"source_code_hash": "mkE1bCQmCXsgdkpJX1yscIbANLYmcWlTyALzfx2BqbI=",
"source_code_size": 51368,
"tags": null,
"tags": {},
"tags_all": {},
"timeout": 10,
"timeouts": null,
@@ -642,7 +642,7 @@
"attributes": {
"arn": "arn:aws:lambda:eu-central-1:654654203111:layer:lambda_deps:2",
"code_sha256": "hQZ4vVgzztN2Bn+hTHGKDTA5kp9HbrZQmunevgsPhAY=",
"compatible_architectures": null,
"compatible_architectures": [],
"compatible_runtimes": [
"python3.12"
],
@@ -796,7 +796,7 @@
]
}
],
"tags": null,
"tags": {},
"tags_all": {},
"timeouts": null,
"versioning": [
@@ -848,7 +848,7 @@
"logging": [],
"object_lock_configuration": [],
"object_lock_enabled": false,
"policy": "",
"policy": "{\"Statement\":[{\"Action\":[\"s3:Put*\",\"s3:List*\",\"s3:Get*\"],\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Resource\":\"arn:aws:s3:::standout-config-prod/*\"}],\"Version\":\"2012-10-17\"}",
"region": "eu-central-1",
"replication_configuration": [],
"request_payer": "BucketOwner",
@@ -867,7 +867,7 @@
]
}
],
"tags": null,
"tags": {},
"tags_all": {},
"timeouts": null,
"versioning": [
@@ -1048,6 +1048,28 @@
}
]
},
{
"mode": "managed",
"type": "aws_s3_bucket_policy",
"name": "s3_standout_policy",
"provider": "provider[\"registry.terraform.io/hashicorp/aws\"]",
"instances": [
{
"schema_version": 0,
"attributes": {
"bucket": "standout-data-prod",
"id": "standout-data-prod",
"policy": "{\"Statement\":[{\"Action\":[\"s3:Put*\",\"s3:List*\",\"s3:Get*\"],\"Effect\":\"Allow\",\"Principal\":{\"AWS\":\"*\"},\"Resource\":\"arn:aws:s3:::standout-data-prod/*\"}],\"Version\":\"2012-10-17\"}"
},
"sensitive_attributes": [],
"private": "bnVsbA==",
"dependencies": [
"aws_s3_bucket.s3_standout",
"data.aws_iam_policy_document.s3_standout_allow_lambda"
]
}
]
},
{
"mode": "managed",
"type": "aws_s3_bucket_public_access_block",
@@ -1126,7 +1148,7 @@
"ipv6_netmask_length": 0,
"main_route_table_id": "rtb-0af448a1cbae5f0bc",
"owner_id": "654654203111",
"tags": null,
"tags": {},
"tags_all": {}
},
"sensitive_attributes": [],