W Terraform documentation for AWS_API_GATEWAY_INTEGRATION, obsługiwane są następujące parametry:Określanie szablonu prośba o aws_api_gateway_integration w terraform
- rest_api_id
- RESOURCE_ID
- http_method
- typu
- uri
- integration_http_method
Dają poniższym przykładzie:
resource "aws_api_gateway_integration" "MyDemoIntegration" {
rest_api_id = "${aws_api_gateway_rest_api.MyDemoAPI.id}"
resource_id = "${aws_api_gateway_resource.MyDemoResource.id}"
http_method = "${aws_api_gateway_method.MyDemoMethod.http_method}"
type = "MOCK"
}
Ale chciałbym, aby określić szablon Mapping (jak również integrację lambda), jak można z UI:
jednak Nie widzę możliwości zrobienia tego z Terraform. Czy to możliwe?
Uwaga: Co Jestem obecnie robi się apply
ing resztę konfiguracji (lambda, S3, iam etc ...), a następnie dodając szablon mapowania ręcznie potem (jak również rodzaj integracji lambda) .
Ale za każdym razem, gdy mogę terraform apply
zastosować inną konfigurację (np. S3), Terraform powraca do szablonu mapowania i typu integracji.
z "powrotu" plan wygląda następująco:
~ aws_api_gateway_integration.post_hit_integration
request_templates.#: "1" => "0"
request_templates.application/json: "{\n \"body\" : $input.json('$'),\n \"headers\": {\n #foreach($param in $input.params().header.keySet())\n \"$param\": \"$util.escapeJavaScript($input.params().header.get($param))\" #if($foreach.hasNext),#end\n \n #end \n },\n \"stage\" : \"$context.stage\"\n}" => ""
uri: "arn:aws:apigateway:eu-west-1:lambda:path/2015-03-31/functions/arn:aws:lambda:eu-west-1:000000000000:function:create_hit/invocations" => ""
Szukałem wszędzie za to bardzo dziękuję. Miałem zamiar zacząć wyczerpująco wyliczać nagłówki. – jstlaurent