Terraform 0.11

github_branch_protection




terraform

github_branch_protection

GitHub शाखा की रक्षा करता है।

यह संसाधन आपको अपने संगठन में रिपॉजिटरी के लिए शाखा सुरक्षा को कॉन्फ़िगर करने की अनुमति देता है। जब लागू किया जाता है, तो शाखा को मजबूर धक्का और विलोपन से सुरक्षित किया जाएगा। अतिरिक्त बाधाएँ, जैसे कि आवश्यक स्थिति जाँच या उपयोगकर्ताओं और टीमों पर प्रतिबंध, को भी कॉन्फ़िगर किया जा सकता है।

उदाहरण उपयोग

# Protect the master branch of the foo repository. Additionally, require that
# the "ci/travis" context to be passing and only allow the engineers team merge
# to the branch.
resource "github_branch_protection" "foo_master" {
  repository = "foo"
  branch = "master"
  enforce_admins = true

  required_status_checks {
    strict = false
    contexts = ["ci/travis"]
  }

  required_pull_request_reviews {
    dismiss_stale_reviews = true
    dismissal_users = ["foo-user"]
    dismissal_teams = ["admins", "engineers"]
  }

  restrictions {
    users = ["foo-user"]
    teams = ["engineers"]
  }
}

तर्क संदर्भ

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

  • repository - (आवश्यक) GitHub रिपॉजिटरी नाम।
  • branch - (आवश्यक) सुरक्षा के लिए गिट शाखा।
  • enforce_admins - (वैकल्पिक) बूलियन, इसे रिपॉजिटरी एडमिनिस्ट्रेटर्स के लिए स्टेटस चेक के लिए लागू करता है।
  • required_status_checks - (वैकल्पिक) आवश्यक स्थिति जांच के लिए प्रतिबंध लागू करें। विवरण के लिए आवश्यक स्थिति जाँच नीचे देखें।
  • required_pull_request_reviews - (वैकल्पिक) पुल अनुरोध समीक्षा के लिए प्रतिबंध लागू करें। विवरण के लिए नीचे आवश्यक अनुरोध अनुरोध देखें।
  • restrictions - (वैकल्पिक) उन उपयोगकर्ताओं और टीमों के लिए प्रतिबंध लागू करता है जो शाखा को धक्का दे सकते हैं। विवरण के लिए नीचे दिए गए restrictions देखें।

आवश्यक स्थिति जाँच

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

  • strict : (वैकल्पिक) विलय से पहले शाखाओं की आवश्यकता होती है। false अवहेलना करता false
  • contexts : (वैकल्पिक) इस शाखा में विलय करने के लिए आवश्यक स्थिति की जाँच करता है। डिफ़ॉल्ट रूप से किसी भी स्थिति की जांच की आवश्यकता नहीं है।

आवश्यक पुल अनुरोध समीक्षा

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

  • dismiss_stale_reviews : (वैकल्पिक) नई dismiss_stale_reviews समीक्षा स्वतः ही स्वीकृत हो जाती है। false अवहेलना करता false
  • dismissal_users : (वैकल्पिक) बर्खास्तगी के साथ उपयोगकर्ता लॉगिन की सूची
  • dismissal_teams : (वैकल्पिक) बर्खास्तगी की पहुंच के साथ टीम की सूची
  • require_code_owner_reviews : (वैकल्पिक) निर्दिष्ट कोड स्वामी के साथ फ़ाइलों सहित पुल अनुरोधों में एक अनुमोदित समीक्षा की आवश्यकता है। false अवहेलना करता false

प्रतिबंध

restrictions निम्नलिखित तर्कों का समर्थन करते हैं:

  • users : (वैकल्पिक) पुश एक्सेस के साथ उपयोगकर्ता लॉगिन की सूची।
  • teams : (वैकल्पिक) टीम की सूची पुश एक्सेस के साथ आती है।

restrictions केवल संगठन के स्वामित्व वाली रिपॉजिटरी के लिए उपलब्ध है।

आयात

जीथब ब्रांच प्रोटेक्शन को repository:branch आईडी का उपयोग करके आयात किया जा सकता repository:branch , उदा

$ terraform import github_branch_protection.terraform terraform:master