Repository navigation
feat(github): require the docs sync check on monorepo main - #1115
Merged
Merged
Conversation
The Docs Sync Check workflow is on monorepo main (panicboat/monorepo#1714) and writes the commit status on every pull request, so main can require it without leaving pull requests waiting. Claude-Session: https://claude.ai/code/session_01G93vHYG85bcS1N49AfuvrM Signed-off-by: panicboat <panicboat@gmail.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
Contributor
Plan Result (branch/master)
Change Result (Click me) # github_repository_ruleset.branches["monorepo-main"] will be updated in-place
~ resource "github_repository_ruleset" "branches" {
id = "15519991"
name = "monorepo-main"
# (6 unchanged attributes hidden)
~ rules {
# (7 unchanged attributes hidden)
~ required_status_checks {
# (2 unchanged attributes hidden)
+ required_check {
+ context = "Docs Sync Check"
+ integration_id = 0
}
# (3 unchanged blocks hidden)
}
# (1 unchanged block hidden)
}
# (3 unchanged blocks hidden)
}
Plan: 0 to add, 1 to change, 0 to destroy. |
Contributor
✅ Apply Succeeded (branch/master)Details (Click me)Oct 24 15:18:26.372 INF download and unarchive the package program=aqua version=2.64.0 env=linux/amd64 exe_name=terragrunt package_name=gruntwork-io/terragrunt package_version=v1.0.2 registry=standard
Initializing the backend...
Successfully configured the backend "s3"! OpenTofu will automatically
use this backend unless the backend configuration changes.
Initializing provider plugins...
- Finding integrations/github versions matching "~> 6.13"...
- Installing integrations/github v6.13.0 to the shared cache directory...
- Installed integrations/github v6.13.0 (signed, key ID 38027F80D7FD5FB2)
- Using integrations/github v6.13.0 from the shared cache directory
Providers are signed by their developers.
If you'd like to know more about provider signing, you can read about it here:
https://opentofu.org/docs/cli/plugins/signing/
OpenTofu has created a lock file .terraform.lock.hcl to record the provider
selections it made above. Include this file in your version control repository
so that OpenTofu can guarantee to make the same selections by default when
you run "tofu init" in the future.
OpenTofu has been successfully initialized!
You may now begin working with OpenTofu. Try running "tofu plan" to see
any changes that are required for your infrastructure. All OpenTofu commands
should now work.
If you ever set or change modules or backend configuration for OpenTofu,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.
data.github_repository.repo["monorepo"]: Reading...
data.github_repository.repo["deploy-actions"]: Reading...
data.github_repository.repo["platform"]: Reading...
data.github_repository.repo["monorepo"]: Read complete after 0s [id=monorepo]
data.github_repository.repo["platform"]: Read complete after 1s [id=platform]
data.github_repository.repo["deploy-actions"]: Read complete after 1s [id=deploy-actions]
github_repository_ruleset.branches["platform-main"]: Refreshing state... [id=15519990]
github_repository_ruleset.branches["monorepo-main"]: Refreshing state... [id=15519991]
github_repository_ruleset.branches["deploy-actions-main"]: Refreshing state... [id=15519988]
OpenTofu used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
~ update in-place (current -> planned)
OpenTofu will perform the following actions:
# github_repository_ruleset.branches["monorepo-main"] will be updated in-place
~ resource "github_repository_ruleset" "branches" {
id = "15519991"
name = "monorepo-main"
# (6 unchanged attributes hidden)
~ rules {
# (7 unchanged attributes hidden)
~ required_status_checks {
# (2 unchanged attributes hidden)
+ required_check {
+ context = "Docs Sync Check"
+ integration_id = 0
}
# (3 unchanged blocks hidden)
}
# (1 unchanged block hidden)
}
# (3 unchanged blocks hidden)
}
Plan: 0 to add, 1 to change, 0 to destroy.
github_repository_ruleset.branches["monorepo-main"]: Modifying... [id=15519991]
github_repository_ruleset.branches["monorepo-main"]: Modifications complete after 1s [id=15519991]
Apply complete! Resources: 0 added, 1 changed, 0 destroyed.
Outputs:
branch_protection_rulesets = {
"deploy-actions-main" = {
"id" = "15519988"
"name" = "deploy-actions-main"
"repository" = "deploy-actions"
}
"monorepo-main" = {
"id" = "15519991"
"name" = "monorepo-main"
"repository" = "monorepo"
}
"platform-main" = {
"id" = "15519990"
"name" = "platform-main"
"repository" = "platform"
}
}
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
monorepo の main の ruleset で、commit status
Docs Sync Checkを必須チェックにします。Why
panicboat/monorepo#1714 で、dystopia の変更が仕様書・規約・ポリシーに追いついているかを判定する workflow を足しました。
必須にしないと、判定が落ちても merge できてしまいます。
CI Gatekeeperはこの workflow を待たないので、CI Gatekeeper経由では止まりません。Before / After
Docs Sync Checkが落ちていても merge できる。Docs Sync Checkがsuccessになるまで merge できない。successになります。docs-check-approvedラベルを付けると通ります。Decisions
successになります。gh apiで status をsuccessにします(monorepo の設計書どおり)。Verification
tofu fmt -check -recursive github/branchは出力なしで通りました。Docs Sync Checkが PR ごとに書かれることを確かめました。deploy:branchの terragrunt plan は0 to add, 1 to change, 0 to destroyでした。github_repository_ruleset.branches["monorepo-main"]にrequired_check { context = "Docs Sync Check" }が 1 件増えることだけです。Relations
🤖 Generated with Claude Code
https://claude.ai/code/session_01G93vHYG85bcS1N49AfuvrM