반응형
테라폼 리소스에 사용되기 전에 파일에 값을 삽입하는 것이 가능합니까?
다음 설명서에 따라 연락처 흐름이 연결된 Amazon Connect 인스턴스를 배포하고 있습니다:
연락처 흐름이 파일에 저장되므로 다음을 사용합니다:
resource "aws_connect_contact_flow" "general" {
instance_id = aws_connect_instance.dev.id
name = "General"
description = "General Flow routing customers to queues"
filename = "flows/contact_flow.json"
content_hash = filebase64sha256("flows/contact_flow.json")
}
그러나 내 연락처 흐름에 따라 한 특정 섹션에서 AWS 람다 기능의 ARN을 지정해야 합니다:
...
"parameters":[
{
"name":"FunctionArn",
"value":"<lambda function arn>",
"namespace":null
},
{
"name":"TimeLimit",
"value":"3"
}
],
</snip>
...
연락처 흐름이 생성되기 전에 <lambda function arn>에서 JSON 파일로 대체하려는 값은 다음에서 액세스할 수 있습니다
data.terraform_remote_state.remote.outputs.lambda_arn
이것을 달성할 수 있는 방법이 있나요? 아니면 위에 링크된 문서의 '' 방법을 사용하여 필요한 것을 달성해야 합니까?
를 사용하려면 를 사용하여 렌더링된 템플릿을 임시 파일에 써야 합니다.
하지만 이를 위해 직접 사용하는 것이 더 쉬울 것입니다. 이를 위해 의 템플릿 형식으로 변환해야 합니다:
"parameters":[
{
"name":"FunctionArn",
"value":"$arn",
"namespace":null
},
{
"name":"TimeLimit",
"value":"3"
}
],
예를 들어, 다음과 같습니다:
locals {
contact_flow = templatefile("flows/contact_flow.json", {
arn = data.terraform_remote_state.remote.outputs.lambda_arn
})
}
resource "aws_connect_contact_flow" "general" {
instance_id = aws_connect_instance.dev.id
name = "General"
description = "General Flow routing customers to queues"
content = local.contact_flow
}
반응형
'개발하자' 카테고리의 다른 글
형식 스크립트, 자동으로 모든 약속 반환 기능 호출 대기 (0) | 2023.09.02 |
---|---|
FastAPI를 사용하여 쿼리 매개 변수의 목록 필드를 사용하도록 Swagger UI를 설정하는 방법은 무엇입니까? (0) | 2023.09.01 |
테라폼: 수정이 감지된 경우에만 태그를 업데이트하는 방법 (0) | 2023.08.31 |
유형 스크립트 오류 JSX 요소 유형 '보기'가 JSX 요소에 대한 생성자 함수가 아닙니다 (0) | 2023.08.30 |
Terraform에서 GKE 노드에 대한 네트워크 태그를 생성하는 방법 (0) | 2023.08.30 |