Terraform 0.11

aws_api_gateway_stage




terraform

aws_api_gateway_stage

एक एपीआई गेटवे स्टेज प्रदान करता है।

उदाहरण उपयोग

resource "aws_api_gateway_stage" "test" {
  stage_name = "prod"
  rest_api_id = "${aws_api_gateway_rest_api.test.id}"
  deployment_id = "${aws_api_gateway_deployment.test.id}"
}

resource "aws_api_gateway_rest_api" "test" {
  name = "MyDemoAPI"
  description = "This is my API for demonstration purposes"
}

resource "aws_api_gateway_deployment" "test" {
  depends_on = ["aws_api_gateway_integration.test"]
  rest_api_id = "${aws_api_gateway_rest_api.test.id}"
  stage_name = "dev"
}

resource "aws_api_gateway_resource" "test" {
  rest_api_id = "${aws_api_gateway_rest_api.test.id}"
  parent_id   = "${aws_api_gateway_rest_api.test.root_resource_id}"
  path_part   = "mytestresource"
}

resource "aws_api_gateway_method" "test" {
  rest_api_id   = "${aws_api_gateway_rest_api.test.id}"
  resource_id   = "${aws_api_gateway_resource.test.id}"
  http_method   = "GET"
  authorization = "NONE"
}

resource "aws_api_gateway_method_settings" "s" {
  rest_api_id = "${aws_api_gateway_rest_api.test.id}"
  stage_name  = "${aws_api_gateway_stage.test.stage_name}"
  method_path = "${aws_api_gateway_resource.test.path_part}/${aws_api_gateway_method.test.http_method}"

  settings {
    metrics_enabled = true
    logging_level = "INFO"
  }
}

resource "aws_api_gateway_integration" "test" {
  rest_api_id = "${aws_api_gateway_rest_api.test.id}"
  resource_id = "${aws_api_gateway_resource.test.id}"
  http_method = "${aws_api_gateway_method.test.http_method}"
  type        = "MOCK"
}

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं:

  • rest_api_id - (आवश्यक) संबंधित REST API की आईडी
  • stage_name - (आवश्यक) मंच का नाम
  • deployment_id id - (आवश्यक) उस तैनाती की आईडी जो मंच को इंगित करती है
  • access_log_settings - (वैकल्पिक) API चरण के लिए प्रवेश लॉग को सक्षम करता है। नीचे विस्तृत
  • cache_cluster_enabled - (वैकल्पिक) निर्दिष्ट करता है कि चरण के लिए कैश क्लस्टर सक्षम है या नहीं
  • cache_cluster_size - (वैकल्पिक) यदि सक्षम किया गया है, तो चरण के लिए कैश क्लस्टर का आकार। अनुमत मूल्यों में 0.5 , 1.6 , 6.1 , 13.5 , 28.4 , 58.2 , 118 और 237
  • client_certificate_id - (वैकल्पिक) मंच के लिए क्लाइंट प्रमाणपत्र का पहचानकर्ता।
  • description - (वैकल्पिक) मंच का विवरण
  • documentation_version - (वैकल्पिक) संबद्ध एपीआई प्रलेखन का संस्करण
  • variables - (वैकल्पिक) एक नक्शा जो मंच चर को परिभाषित करता है
  • tags - (वैकल्पिक) संसाधन को असाइन करने के लिए टैग की मैपिंग।

नेस्टेड ब्लॉक

access_log_settings

  • गंतव्य_कार - (आवश्यक) लॉग को भेजने के लिए लॉग समूह का एआरएन। स्वचालित रूप से अनुगामी हटाता है :* यदि मौजूद है।
  • format - (आवश्यक) प्रारूपण और मान लॉग में दर्ज किए गए। लॉग प्रारूप नियमों को कॉन्फ़िगर करने के बारे में अधिक जानकारी के लिए AWS documentation जाएँ

गुण का संदर्भ

उपरोक्त सभी तर्कों के अलावा, निम्नलिखित विशेषताएँ निर्यात की जाती हैं:

  • id - मंच की आईडी
  • invoke_url - मंच की ओर इशारा करते हुए एपीआई को आमंत्रित करने के लिए URL, जैसे https://z4675bid1j.execute-api.eu-west-2.amazonaws.com/prod
  • lambda_permission - निष्पादन ARN का उपयोग lambda_permission में किया जाता है जब API गेटवे को एक लैम्ब्डा फंक्शन की अनुमति देता है, जैसे arn:aws:execute-api:eu-west-2:123456789012:z4675bid1j/prod