Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
282 changes: 282 additions & 0 deletions docs/data-sources/repository_ruleset.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,282 @@
---
page_title: "github_repository_ruleset (Data Source) - GitHub"
description: |-
Get information on a single GitHub repository ruleset.
---

# github_repository_ruleset (Data Source)

Use this data source to retrieve information about a specific GitHub repository ruleset.

## Example Usage

```terraform
data "github_repository_ruleset" "example" {
repository = "example-repo"
ruleset_id = 12345
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `repository` (String) Name of the repository to get the ruleset from.
- `ruleset_id` (Number) GitHub ID for the ruleset.

### Read-Only

- `bypass_actors` (List of Object) The actors that can bypass the rules in this ruleset. (see [below for nested schema](#nestedatt--bypass_actors))
- `conditions` (List of Object) Parameters for a repository ruleset ref name condition. (see [below for nested schema](#nestedatt--conditions))
- `enforcement` (String) Possible values for Enforcement are `disabled`, `active`, `evaluate`.
- `id` (String) The ID of this resource.
- `name` (String) The name of the ruleset.
- `node_id` (String) GraphQL global node id for use with v4 API.
- `rules` (List of Object) Rules within the ruleset. (see [below for nested schema](#nestedatt--rules))
- `target` (String) Possible values are `branch`, `push`, and `tag`.

<a id="nestedatt--bypass_actors"></a>
### Nested Schema for `bypass_actors`

Read-Only:

- `actor_id` (Number)
- `actor_type` (String)
- `bypass_mode` (String)


<a id="nestedatt--conditions"></a>
### Nested Schema for `conditions`

Read-Only:

- `ref_name` (List of Object) (see [below for nested schema](#nestedobjatt--conditions--ref_name))

<a id="nestedobjatt--conditions--ref_name"></a>
### Nested Schema for `conditions.ref_name`

Read-Only:

- `exclude` (List of String)
- `include` (List of String)



<a id="nestedatt--rules"></a>
### Nested Schema for `rules`

Read-Only:

- `branch_name_pattern` (List of Object) (see [below for nested schema](#nestedobjatt--rules--branch_name_pattern))
- `commit_author_email_pattern` (List of Object) (see [below for nested schema](#nestedobjatt--rules--commit_author_email_pattern))
- `commit_message_pattern` (List of Object) (see [below for nested schema](#nestedobjatt--rules--commit_message_pattern))
- `committer_email_pattern` (List of Object) (see [below for nested schema](#nestedobjatt--rules--committer_email_pattern))
- `copilot_code_review` (List of Object) (see [below for nested schema](#nestedobjatt--rules--copilot_code_review))
- `creation` (Boolean)
- `deletion` (Boolean)
- `file_extension_restriction` (List of Object) (see [below for nested schema](#nestedobjatt--rules--file_extension_restriction))
- `file_path_restriction` (List of Object) (see [below for nested schema](#nestedobjatt--rules--file_path_restriction))
- `max_file_path_length` (List of Object) (see [below for nested schema](#nestedobjatt--rules--max_file_path_length))
- `max_file_size` (List of Object) (see [below for nested schema](#nestedobjatt--rules--max_file_size))
- `merge_queue` (List of Object) (see [below for nested schema](#nestedobjatt--rules--merge_queue))
- `non_fast_forward` (Boolean)
- `pull_request` (List of Object) (see [below for nested schema](#nestedobjatt--rules--pull_request))
- `required_code_scanning` (List of Object) (see [below for nested schema](#nestedobjatt--rules--required_code_scanning))
- `required_deployments` (List of Object) (see [below for nested schema](#nestedobjatt--rules--required_deployments))
- `required_linear_history` (Boolean)
- `required_signatures` (Boolean)
- `required_status_checks` (List of Object) (see [below for nested schema](#nestedobjatt--rules--required_status_checks))
- `tag_name_pattern` (List of Object) (see [below for nested schema](#nestedobjatt--rules--tag_name_pattern))
- `update` (Boolean)
- `update_allows_fetch_and_merge` (Boolean)

<a id="nestedobjatt--rules--branch_name_pattern"></a>
### Nested Schema for `rules.branch_name_pattern`

Read-Only:

- `name` (String)
- `negate` (Boolean)
- `operator` (String)
- `pattern` (String)


<a id="nestedobjatt--rules--commit_author_email_pattern"></a>
### Nested Schema for `rules.commit_author_email_pattern`

Read-Only:

- `name` (String)
- `negate` (Boolean)
- `operator` (String)
- `pattern` (String)


<a id="nestedobjatt--rules--commit_message_pattern"></a>
### Nested Schema for `rules.commit_message_pattern`

Read-Only:

- `name` (String)
- `negate` (Boolean)
- `operator` (String)
- `pattern` (String)


<a id="nestedobjatt--rules--committer_email_pattern"></a>
### Nested Schema for `rules.committer_email_pattern`

Read-Only:

- `name` (String)
- `negate` (Boolean)
- `operator` (String)
- `pattern` (String)


<a id="nestedobjatt--rules--copilot_code_review"></a>
### Nested Schema for `rules.copilot_code_review`

Read-Only:

- `review_draft_pull_requests` (Boolean)
- `review_on_push` (Boolean)


<a id="nestedobjatt--rules--file_extension_restriction"></a>
### Nested Schema for `rules.file_extension_restriction`

Read-Only:

- `restricted_file_extensions` (Set of String)


<a id="nestedobjatt--rules--file_path_restriction"></a>
### Nested Schema for `rules.file_path_restriction`

Read-Only:

- `restricted_file_paths` (List of String)


<a id="nestedobjatt--rules--max_file_path_length"></a>
### Nested Schema for `rules.max_file_path_length`

Read-Only:

- `max_file_path_length` (Number)


<a id="nestedobjatt--rules--max_file_size"></a>
### Nested Schema for `rules.max_file_size`

Read-Only:

- `max_file_size` (Number)


<a id="nestedobjatt--rules--merge_queue"></a>
### Nested Schema for `rules.merge_queue`

Read-Only:

- `check_response_timeout_minutes` (Number)
- `grouping_strategy` (String)
- `max_entries_to_build` (Number)
- `max_entries_to_merge` (Number)
- `merge_method` (String)
- `min_entries_to_merge` (Number)
- `min_entries_to_merge_wait_minutes` (Number)


<a id="nestedobjatt--rules--pull_request"></a>
### Nested Schema for `rules.pull_request`

Read-Only:

- `allowed_merge_methods` (List of String)
- `dismiss_stale_reviews_on_push` (Boolean)
- `require_code_owner_review` (Boolean)
- `require_last_push_approval` (Boolean)
- `required_approving_review_count` (Number)
- `required_review_thread_resolution` (Boolean)
- `required_reviewers` (List of Object) (see [below for nested schema](#nestedobjatt--rules--pull_request--required_reviewers))

<a id="nestedobjatt--rules--pull_request--required_reviewers"></a>
### Nested Schema for `rules.pull_request.required_reviewers`

Read-Only:

- `file_patterns` (List of String)
- `minimum_approvals` (Number)
- `reviewer` (List of Object) (see [below for nested schema](#nestedobjatt--rules--pull_request--required_reviewers--reviewer))

<a id="nestedobjatt--rules--pull_request--required_reviewers--reviewer"></a>
### Nested Schema for `rules.pull_request.required_reviewers.reviewer`

Read-Only:

- `id` (Number)
- `type` (String)




<a id="nestedobjatt--rules--required_code_scanning"></a>
### Nested Schema for `rules.required_code_scanning`

Read-Only:

- `required_code_scanning_tool` (Set of Object) (see [below for nested schema](#nestedobjatt--rules--required_code_scanning--required_code_scanning_tool))

<a id="nestedobjatt--rules--required_code_scanning--required_code_scanning_tool"></a>
### Nested Schema for `rules.required_code_scanning.required_code_scanning_tool`

Read-Only:

- `alerts_threshold` (String)
- `security_alerts_threshold` (String)
- `tool` (String)



<a id="nestedobjatt--rules--required_deployments"></a>
### Nested Schema for `rules.required_deployments`

Read-Only:

- `required_deployment_environments` (List of String)


<a id="nestedobjatt--rules--required_status_checks"></a>
### Nested Schema for `rules.required_status_checks`

Read-Only:

- `do_not_enforce_on_create` (Boolean)
- `required_check` (Set of Object) (see [below for nested schema](#nestedobjatt--rules--required_status_checks--required_check))
- `strict_required_status_checks_policy` (Boolean)

<a id="nestedobjatt--rules--required_status_checks--required_check"></a>
### Nested Schema for `rules.required_status_checks.required_check`

Read-Only:

- `context` (String)
- `integration_id` (Number)



<a id="nestedobjatt--rules--tag_name_pattern"></a>
### Nested Schema for `rules.tag_name_pattern`

Read-Only:

- `name` (String)
- `negate` (Boolean)
- `operator` (String)
- `pattern` (String)



46 changes: 46 additions & 0 deletions docs/data-sources/repository_rulesets.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
page_title: "github_repository_rulesets (Data Source) - GitHub"
description: |-
Get information on all GitHub repository rulesets for a repository.
---

# github_repository_rulesets (Data Source)

Use this data source to retrieve information about all GitHub repository rulesets for a given repository.

## Example Usage

```terraform
data "github_repository_rulesets" "example" {
repository = "example-repo"
}

output "all_rulesets" {
value = data.github_repository_rulesets.example.rulesets
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `repository` (String) Name of the repository to get rulesets from.

### Read-Only

- `id` (String) The ID of this resource.
- `rulesets` (List of Object) List of rulesets for the repository. (see [below for nested schema](#nestedatt--rulesets))

<a id="nestedatt--rulesets"></a>
### Nested Schema for `rulesets`

Read-Only:

- `enforcement` (String)
- `name` (String)
- `node_id` (String)
- `ruleset_id` (Number)
- `target` (String)


Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
data "github_repository_ruleset" "example" {
repository = "example-repo"
ruleset_id = 12345
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
data "github_repository_rulesets" "example" {
repository = "example-repo"
}

output "all_rulesets" {
value = data.github_repository_rulesets.example.rulesets
}
Loading
Loading