Terraform 0.11

google_cloudbuild_trigger




terraform

google_cloudbuild_trigger

GCR के भीतर एक नया बिल्ड ट्रिगर बनाता है। अधिक जानकारी के लिए, आधिकारिक दस्तावेज और API

उदाहरण उपयोग

resource "google_cloudbuild_trigger" "build_trigger" {
  project  = "my-project"
  trigger_template {
    branch_name = "master"
    project     = "my-project"
    repo_name   = "some-repo"
  }
  build {
    images = ["gcr.io/$PROJECT_ID/$REPO_NAME:$COMMIT_SHA"]
    step {
      name = "gcr.io/cloud-builders/docker"
      args = "build -t gcr.io/$PROJECT_ID/$REPO_NAME:$COMMIT_SHA -f Dockerfile ."
    }
  }
}

या

resource "google_cloudbuild_trigger" "build_trigger" {
  project  = "my-project"
  trigger_template {
    branch_name = "master"
    project     = "my-project"
    repo_name   = "some-repo"
  }
  filename = "cloudbuild.yaml"
}

तर्क संदर्भ

(तर्क विवरण API )

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

  • description - (वैकल्पिक) इस संसाधन का एक संक्षिप्त विवरण।

  • trigger_template - (वैकल्पिक) Google क्लाउड स्रोत रिपॉजिटरी में स्रोत का स्थान। संरचना नीचे प्रलेखित है।

  • build - (वैकल्पिक) कंटेनर बिल्डर एपीआई में एक निर्माण संसाधन। संरचना नीचे प्रलेखित है। एक उच्च स्तर पर, एक build बताता है कि स्रोत कोड कहां खोजना है, इसका निर्माण कैसे करें (उदाहरण के लिए, स्रोत पर चलने के लिए बिल्डर छवि), और निर्मित कलाकृतियों को कहां संग्रहीत करें। फ़ील्ड में निम्न चर शामिल हो सकते हैं, जो निर्माण के समय विस्तारित होंगे:

    • $PROJECT_ID : बिल्ड की प्रोजेक्ट आईडी।
    • $BUILD_ID : $BUILD_ID आईडी।
    • $REPO_NAME : RepoSource द्वारा निर्दिष्ट स्रोत भंडार नाम।
    • $BRANCH_NAME : $BRANCH_NAME द्वारा निर्दिष्ट शाखा नाम।
    • $TAG_NAME : RepoSource द्वारा निर्दिष्ट टैग नाम।
    • $REVISION_ID या $COMMIT_SHA : $COMMIT_SHA द्वारा निर्दिष्ट या निर्दिष्ट शाखा या टैग से हल किया गया वचन।
    • $SHORT_SHA : $REVISION_ID या $COMMIT_SHA पहले 7 अक्षर।
  • filename - (वैकल्पिक) Git रेपो में क्लाउड बिल्ड कॉन्फ़िगरेशन फ़ाइल के लिए पथ निर्दिष्ट करें। यह build साथ परस्पर अनन्य है। यह आमतौर पर cloudbuild.yaml हालांकि इसे उपयोगकर्ता द्वारा निर्दिष्ट किया जा सकता है।

trigger_template ब्लॉक का समर्थन करता है:

  • branch_name - (ऑप्शनल) बनाने के लिए ब्रांच का नाम।

  • commit_sha - (वैकल्पिक) स्पष्ट करने के लिए SHA commit_sha

  • dir - (वैकल्पिक) निर्देशिका, स्रोत रूट के सापेक्ष, जिसमें बिल्ड को चलाना है। यह एक सापेक्ष पथ होना चाहिए। यदि किसी चरण की dir निर्दिष्ट है और एक निरपेक्ष पथ है, तो यह मान उस चरण के निष्पादन के लिए अनदेखा कर दिया जाता है।

  • project - (वैकल्पिक) क्लाउड स्रोत भंडार के स्वामित्व वाली परियोजना की आईडी।

  • repo_name - (वैकल्पिक) क्लाउड स्रोत रिपॉजिटरी का नाम।

  • tag_name - (वैकल्पिक) बनाने के लिए टैग का नाम।

build ब्लॉक सपोर्ट करता है:

  • images - (वैकल्पिक) सभी बिल्ड चरणों के सफल समापन पर धकेलने के लिए छवियों की एक सूची।

  • step - (वैकल्पिक) कार्यक्षेत्र पर किए जाने वाले कार्य। संरचना नीचे प्रलेखित है।

  • tags - (वैकल्पिक) एक निर्माण के एनोटेशन के लिए टैग। ये डॉकटर टैग नहीं हैं

step ब्लॉक का समर्थन करता है:

  • name - (ऑप्शनल) कंटेनर इमेज का नाम जो इस विशेष बिल्ड स्टेप को रन करेगा। यदि छवि होस्ट के डॉकर डेमन के कैश में उपलब्ध है, तो इसे सीधे चलाया जाएगा। यदि नहीं, तो मेजबान छवि को खींचने का प्रयास करेगा, यदि आवश्यक हो तो बिल्डर सेवा खाते की क्रेडेंशियल्स का उपयोग करके। डॉकर डेमन के कैश में पहले से ही आधिकारिक रूप से समर्थित बिल्ड चरणों ( https://github.com/GoogleCloudPlatform/cloud-builders ) के सभी नवीनतम संस्करण होंगे। डोकर डेमॉन ने कुछ लोकप्रिय छवियों के लिए कई परतों को भी कैश किया होगा, जैसे "उबंटू", "डेबियन", लेकिन जिस समय आप उनका उपयोग करने का प्रयास करेंगे, उन्हें ताज़ा किया जाएगा। यदि आपने पिछले बिल्ड चरण में एक छवि बनाई है, तो इसे होस्ट के डॉकर डेमन के कैश में संग्रहीत किया जाएगा और बाद के बिल्ड चरण के लिए नाम के रूप में उपयोग करने के लिए उपलब्ध है।

  • args - (वैकल्पिक) तर्कों की एक सूची जो इसे शुरू करने पर चरण में प्रस्तुत की जाएगी। यदि चरण के कंटेनर को चलाने के लिए उपयोग की जाने वाली छवि में एक प्रविष्टि बिंदु है, तो उस प्रविष्टि के तर्क के रूप में आर्ग का उपयोग किया जाता है। यदि छवि किसी प्रविष्टि बिंदु को परिभाषित नहीं करती है, तो args में पहला तत्व प्रविष्टि बिंदु के रूप में उपयोग किया जाता है, और शेष का उपयोग तर्कों के रूप में किया जाएगा।