1
我想在啓用了cloudwatch指標的階段部署此工具。爲此,我需要使用需要舞臺名稱的aws_api_gateway_method_settings
。如果不使用aws_api_gateway_stage
創建舞臺,則會拋出一個錯誤,指出舞臺不存在。當我試圖創造一個舞臺時,它的說法已經存在。如何使用terraform在已啓用cloudwatch指標的API網關中創建階段?
我試過的一個解決方案是使用aws_api_gateway_deployment
和另一個使用aws_api_gateway_stage
兩個不同的名稱創建兩個階段之一。有沒有其他解決方案呢?
resource "aws_api_gateway_deployment" "test-deploy" {
depends_on = [ /*something goes here*/]
rest_api_id = "${aws_api_gateway_rest_api.test.id}"
stage_name = "${var.stage_name}"
variables = {
"function" = "${var.lambda_function_name}"
}
}
resource "aws_api_gateway_stage" "test" {
stage_name = "${var.stage_name}"
rest_api_id = "${aws_api_gateway_rest_api.test.id}"
deployment_id = "${aws_api_gateway_deployment.test-deploy.id}"
}
resource "aws_api_gateway_method_settings" "settings" {
rest_api_id = "${aws_api_gateway_rest_api.test.id}"
stage_name = "${aws_api_gateway_stage.test.stage_name}"
method_path = "*/*"
settings {
metrics_enabled = true
logging_level = "INFO"
}
}
例外:
aws_api_gateway_stage.test: Error creating API Gateway Stage: ConflictException: Stage already exists
似乎你已經創建了雄鹿,先從控制檯清理它。 – BMW
@寶馬,我不是從控制檯創建任何東西。 'aws_api_gateway_deployment'和'aws_api_gateway_stage'試圖單獨創建舞臺。 – Gangaraju