Terraform 0.11

google_endpoints_service




terraform

google_endpoints_service

यह संसाधन OpenAPI या gRPC का उपयोग करके क्लाउड एंडपॉइंट सेवा बनाता है और उसे रोल आउट करता है। OpenAPI और gRPC लिए प्रासंगिक डॉक्स देखें।

उदाहरण उपयोग

resource "google_endpoints_service" "openapi_service" {
  service_name = "api-name.endpoints.project-id.cloud.goog"
  project = "project-id"
  openapi_config = "${file("openapi_spec.yml")}"
}

resource "google_endpoints_service" "grpc_service" {
  service_name = "api-name.endpoints.project-id.cloud.goog"
  project = "project-id"
  grpc_config = "${file("service_spec.yml")}"
  protoc_output = "${file("compiled_descriptor_file.pb")}"
}

examples/endpoints_on_compute_engine में examples/endpoints_on_compute_engine एक कॉम्प्यूट इंजन वीएम पर चलने वाले क्विकस्टार्ट से एपीआई दिखाता है और क्लाउड एंडपॉइंट के माध्यम से पहुंच योग्य है, जो उपयोगी भी हो सकता है।

तर्क संदर्भ

निम्नलिखित तर्क समर्थित हैं: * service_name : (आवश्यक) सेवा का नाम। आमतौर पर $apiname.endpoints.$projectid.cloud.goog । * openapi_config : (वैकल्पिक) OpenAPI YAML विन्यास का पूरा पाठ here वर्णित here । या तो यह, या दोनों grpc_config और protoc_output निर्दिष्ट होना चाहिए। * grpc_config : (वैकल्पिक) सेवा विन्यास YAML फ़ाइल का पूर्ण पाठ (उदाहरण here स्थित)। यदि प्रदान किया गया है, तो protoc_output भी प्रदान करना चाहिए। open_api config प्रदान नहीं किया जाना चाहिए। * protoc_output_base64 : (वैकल्पिक) protoc_output_base64 द्वारा बनाई गई सर्विस protoc_output_base64 फ़ाइल की पूरी सामग्री। यह एक संकलित .pb फ़ाइल, base64- एन्कोडेड होना चाहिए। * protoc_output : (पदावनत) protoc_output द्वारा उत्पन्न सेवा Descriptor फ़ाइल की पूरी सामग्री। यह एक संकलित .pb फ़ाइल होनी चाहिए। गैर-UTF8 बाइट्स के स्टेटफाइल के मूंगिंग से एक स्थायी अंतर को रोकने के बजाय protoc_output_base64 उपयोग करें। * project : (वैकल्पिक) परियोजना आईडी जो सेवा से संबंधित है। यदि प्रदान नहीं किया गया है, तो प्रदाता परियोजना का उपयोग किया जाता है।

संदर्भ संदर्भित करता है

तर्कों के अतिरिक्त, निम्नलिखित विशेषताएं उपलब्ध हैं: * config_id : कॉन्फ़िगरेशन के लिए config_id आईडी जो इस संसाधन के निर्माण के भाग के रूप में रोल आउट किया गया है। टैग के रूप में इंजन उदाहरणों की गणना करने के लिए प्रदान किया जाना चाहिए। * dns_address : वह पता जिस पर सेवा पाई जा सकती है - आमतौर पर सेवा नाम के समान। * apis : एपीआई वस्तुओं की एक सूची; संरचना नीचे प्रलेखित है। * endpoints : एंडपॉइंट ऑब्जेक्ट्स की एक सूची; संरचना नीचे प्रलेखित है।

एपीआई वस्तु संरचना

  • name : एपीआई के FQDN के रूप में प्रदान की गई विन्यास में वर्णित है।
  • syntax : SYNTAX_PROTO2 या SYNTAX_PROTO3
  • version : इस एपीआई के लिए एक संस्करण स्ट्रिंग। यदि निर्दिष्ट किया गया है, तो प्रपत्र प्रमुख- version.minor- संस्करण, उदाहरण के लिए 1.10
  • methods : मेथड ऑब्जेक्ट्स की एक सूची; संरचना नीचे प्रलेखित है।

विधि वस्तु संरचना

  • name : इस विधि का सरल नाम जैसा कि प्रदान किए गए विन्यास में वर्णित है।
  • syntax : SYNTAX_PROTO2 या SYNTAX_PROTO3
  • request_type : इस API के अनुरोध के लिए URL टाइप करें।
  • response_type : इस API से प्रतिक्रिया के लिए URL टाइप करें।

समापन बिंदु ऑब्जेक्ट संरचना

  • name : विन्यास में वर्णित के रूप में समापन बिंदु का सरल नाम।
  • address : कॉन्फ़िगरेशन में वर्णित के रूप में समापन बिंदु का FQDN।