chore(github): add foc-wg-eng access and clean team/repo config#44
Conversation
Grant foc-wg-eng write access to early-repair and read access to infra, add needed members, and apply related repository/team cleanup updates in FilOzone org config. Co-authored-by: Cursor <cursoragent@cursor.com>
|
The following access changes will be introduced as a result of applying the plan: Access Changes |
There was a problem hiding this comment.
Pull request overview
Updates the FilOzone GitHub-as-code configuration to introduce the new foc-wg-eng team, ensure requested org/team membership changes are applied, and adjust repository access/cleanup (including archiving some repos) in a single scoped config update.
Changes:
- Added org membership entries for
LexLuthr,snadrus, andsilent-cipher, and created thefoc-wg-engteam with the requested maintainers/members. - Granted
foc-wg-engwrite (push) access toearly-repairand read (pull) access toinfra. - Cleaned up several repo collaborator lists and marked multiple legacy repos as
archived: trueusing the repo’s “archived stub” pattern.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| members: | ||
| maintainer: | ||
| - jennijuju | ||
| - momack2 | ||
| member: | ||
| - timfong888 | ||
| github-mgmt approvers: | ||
| # Notes: |
Retain timfong888 in FilOzone members to avoid destroying a protected github_membership resource with prevent_destroy enabled during terraform plan. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Before merge, verify that all the following plans are correct. After merge, Apply will regenerate the plans from the merged commit and continue only if they match. Terraform plansFilOzoneTerraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
+ create
~ update in-place
- destroy
Terraform will perform the following actions:
# github_membership.this["lexluthr"] will be created
+ resource "github_membership" "this" {
+ downgrade_on_destroy = false
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ username = "LexLuthr"
}
# github_membership.this["silent-cipher"] will be created
+ resource "github_membership" "this" {
+ downgrade_on_destroy = false
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ username = "silent-cipher"
}
# github_membership.this["snadrus"] will be created
+ resource "github_membership" "this" {
+ downgrade_on_destroy = false
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ username = "snadrus"
}
# github_repository.this["sdk-user-stories"] will be updated in-place
~ resource "github_repository" "this" {
~ archived = false -> true
id = "sdk-user-stories"
name = "sdk-user-stories"
# (35 unchanged attributes hidden)
}
# github_repository.this["sp-telemetry-stories"] will be updated in-place
~ resource "github_repository" "this" {
~ archived = false -> true
id = "sp-telemetry-stories"
name = "sp-telemetry-stories"
# (35 unchanged attributes hidden)
# (1 unchanged block hidden)
}
# github_repository.this["tim-docs"] will be updated in-place
~ resource "github_repository" "this" {
~ archived = false -> true
id = "tim-docs"
name = "tim-docs"
# (35 unchanged attributes hidden)
}
# github_repository.this["tim-import"] will be updated in-place
~ resource "github_repository" "this" {
~ archived = false -> true
id = "tim-import"
name = "tim-import"
# (35 unchanged attributes hidden)
}
# github_repository.this["tim-workstream"] will be updated in-place
~ resource "github_repository" "this" {
~ archived = false -> true
id = "tim-workstream"
name = "tim-workstream"
# (35 unchanged attributes hidden)
}
# github_repository_collaborator.this["filecoin-cloud:charlymartin"] will be destroyed
# (because key ["filecoin-cloud:charlymartin"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-cloud:CharlyMartin" -> null
- permission = "push" -> null
- repository = "filecoin-cloud" -> null
- username = "CharlyMartin" -> null
}
# github_repository_collaborator.this["filecoin-cloud:gmoranxyz"] will be destroyed
# (because key ["filecoin-cloud:gmoranxyz"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-cloud:gmoranxyz" -> null
- permission = "push" -> null
- repository = "filecoin-cloud" -> null
- username = "gmoranxyz" -> null
}
# github_repository_collaborator.this["filecoin-pay-auction-bot:bajtos"] will be destroyed
# (because key ["filecoin-pay-auction-bot:bajtos"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-pay-auction-bot:bajtos" -> null
- permission = "maintain" -> null
- repository = "filecoin-pay-auction-bot" -> null
- username = "bajtos" -> null
}
# github_repository_collaborator.this["filecoin-pay-auction-bot:geomatrick"] will be destroyed
# (because key ["filecoin-pay-auction-bot:geomatrick"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-pay-auction-bot:geomatrick" -> null
- permission = "maintain" -> null
- repository = "filecoin-pay-auction-bot" -> null
- username = "geomatrick" -> null
}
# github_repository_collaborator.this["filecoin-pay-console-stories:timfong888"] will be destroyed
# (because key ["filecoin-pay-console-stories:timfong888"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-pay-console-stories:timfong888" -> null
- permission = "admin" -> null
- repository = "filecoin-pay-console-stories" -> null
- username = "timfong888" -> null
}
# github_repository_collaborator.this["filecoin-services:bajtos"] will be destroyed
# (because key ["filecoin-services:bajtos"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-services:bajtos" -> null
- permission = "push" -> null
- repository = "filecoin-services" -> null
- username = "bajtos" -> null
}
# github_repository_collaborator.this["filecoin-services:geomatrick"] will be destroyed
# (because key ["filecoin-services:geomatrick"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-services:geomatrick" -> null
- permission = "push" -> null
- repository = "filecoin-services" -> null
- username = "geomatrick" -> null
}
# github_repository_collaborator.this["filecoin-services:pyropy"] will be destroyed
# (because key ["filecoin-services:pyropy"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "filecoin-services:pyropy" -> null
- permission = "push" -> null
- repository = "filecoin-services" -> null
- username = "pyropy" -> null
}
# github_repository_collaborator.this["fs-pm:bajtos"] will be destroyed
# (because key ["fs-pm:bajtos"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "fs-pm:bajtos" -> null
- permission = "push" -> null
- repository = "fs-pm" -> null
- username = "bajtos" -> null
}
# github_repository_collaborator.this["fs-pm:geomatrick"] will be destroyed
# (because key ["fs-pm:geomatrick"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "fs-pm:geomatrick" -> null
- permission = "admin" -> null
- repository = "fs-pm" -> null
- username = "geomatrick" -> null
}
# github_repository_collaborator.this["fs-pm:pyropy"] will be destroyed
# (because key ["fs-pm:pyropy"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "fs-pm:pyropy" -> null
- permission = "push" -> null
- repository = "fs-pm" -> null
- username = "pyropy" -> null
}
# github_repository_collaborator.this["requests-for-startups:geomatrick"] will be destroyed
# (because key ["requests-for-startups:geomatrick"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "requests-for-startups:geomatrick" -> null
- permission = "admin" -> null
- repository = "requests-for-startups" -> null
- username = "geomatrick" -> null
}
# github_repository_collaborator.this["requests-for-startups:jennijuju"] will be created
+ resource "github_repository_collaborator" "this" {
+ id = (known after apply)
+ invitation_id = (known after apply)
+ permission = "admin"
+ permission_diff_suppression = false
+ repository = "requests-for-startups"
+ username = "jennijuju"
}
# github_repository_collaborator.this["synapse-sdk:bajtos"] will be destroyed
# (because key ["synapse-sdk:bajtos"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:bajtos" -> null
- permission = "push" -> null
- repository = "synapse-sdk" -> null
- username = "bajtos" -> null
}
# github_repository_collaborator.this["synapse-sdk:geomatrick"] will be destroyed
# (because key ["synapse-sdk:geomatrick"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:geomatrick" -> null
- permission = "push" -> null
- repository = "synapse-sdk" -> null
- username = "geomatrick" -> null
}
# github_repository_collaborator.this["synapse-sdk:jennijuju"] will be destroyed
# (because key ["synapse-sdk:jennijuju"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:jennijuju" -> null
- permission = "admin" -> null
- permission_diff_suppression = false -> null
- repository = "synapse-sdk" -> null
- username = "jennijuju" -> null
}
# github_repository_collaborator.this["synapse-sdk:momack2"] will be destroyed
# (because key ["synapse-sdk:momack2"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:momack2" -> null
- permission = "admin" -> null
- repository = "synapse-sdk" -> null
- username = "momack2" -> null
}
# github_repository_collaborator.this["synapse-sdk:pyropy"] will be destroyed
# (because key ["synapse-sdk:pyropy"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:pyropy" -> null
- permission = "push" -> null
- repository = "synapse-sdk" -> null
- username = "pyropy" -> null
}
# github_repository_collaborator.this["synapse-sdk:zenground0"] will be destroyed
# (because key ["synapse-sdk:zenground0"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-sdk:ZenGround0" -> null
- permission = "admin" -> null
- repository = "synapse-sdk" -> null
- username = "ZenGround0" -> null
}
# github_repository_collaborator.this["synapse-website:charlymartin"] will be destroyed
# (because key ["synapse-website:charlymartin"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-website:CharlyMartin" -> null
- invitation_id = "294227370" -> null
- permission = "push" -> null
- repository = "synapse-website" -> null
- username = "CharlyMartin" -> null
}
# github_repository_collaborator.this["synapse-website:timfong888"] will be destroyed
# (because key ["synapse-website:timfong888"] is not in for_each map)
- resource "github_repository_collaborator" "this" {
- id = "synapse-website:timfong888" -> null
- permission = "maintain" -> null
- repository = "synapse-website" -> null
- username = "timfong888" -> null
}
# github_team.this["foc-wg-eng"] will be created
+ resource "github_team" "this" {
+ create_default_maintainer = false
+ etag = (known after apply)
+ id = (known after apply)
+ members_count = (known after apply)
+ name = "foc-wg-eng"
+ node_id = (known after apply)
+ parent_team_read_id = (known after apply)
+ parent_team_read_slug = (known after apply)
+ privacy = "secret"
+ slug = (known after apply)
}
# github_team_membership.this["filoz-fs:timfong888"] will be destroyed
# (because key ["filoz-fs:timfong888"] is not in for_each map)
- resource "github_team_membership" "this" {
- etag = "W/\"4dc9b7c1908136803fd35d9a55345e6b66c24463e40ff3baa0acce61bc6381cd\"" -> null
- id = "13124042:timfong888" -> null
- role = "member" -> null
- team_id = "13124042" -> null
- username = "timfong888" -> null
}
# github_team_membership.this["foc-wg-eng:beck-8"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "beck-8"
}
# github_team_membership.this["foc-wg-eng:biglep"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "maintainer"
+ team_id = (known after apply)
+ username = "BigLep"
}
# github_team_membership.this["foc-wg-eng:filozzy"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "FilOzzy"
}
# github_team_membership.this["foc-wg-eng:hugomrdias"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "hugomrdias"
}
# github_team_membership.this["foc-wg-eng:juliangruber"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "juliangruber"
}
# github_team_membership.this["foc-wg-eng:kubuxu"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "Kubuxu"
}
# github_team_membership.this["foc-wg-eng:lexluthr"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "LexLuthr"
}
# github_team_membership.this["foc-wg-eng:rjan90"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "maintainer"
+ team_id = (known after apply)
+ username = "rjan90"
}
# github_team_membership.this["foc-wg-eng:rvagg"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "maintainer"
+ team_id = (known after apply)
+ username = "rvagg"
}
# github_team_membership.this["foc-wg-eng:sgtpooki"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "SgtPooki"
}
# github_team_membership.this["foc-wg-eng:silent-cipher"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "silent-cipher"
}
# github_team_membership.this["foc-wg-eng:snadrus"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "snadrus"
}
# github_team_membership.this["foc-wg-eng:tippyflitsuk"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "TippyFlitsUK"
}
# github_team_membership.this["foc-wg-eng:wjmelements"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "member"
+ team_id = (known after apply)
+ username = "wjmelements"
}
# github_team_membership.this["foc-wg-eng:zenground0"] will be created
+ resource "github_team_membership" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ role = "maintainer"
+ team_id = (known after apply)
+ username = "ZenGround0"
}
# github_team_membership.this["fs-pm:timfong888"] will be destroyed
# (because key ["fs-pm:timfong888"] is not in for_each map)
- resource "github_team_membership" "this" {
- etag = "W/\"c12e297b5aab815c60286934cc51eed7f1e9ab78654473bda7cf811da7123457\"" -> null
- id = "13891370:timfong888" -> null
- role = "member" -> null
- team_id = "13891370" -> null
- username = "timfong888" -> null
}
# github_team_repository.this["foc-wg-eng:early-repair"] will be created
+ resource "github_team_repository" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ permission = "push"
+ repository = "early-repair"
+ team_id = (known after apply)
}
# github_team_repository.this["foc-wg-eng:infra"] will be created
+ resource "github_team_repository" "this" {
+ etag = (known after apply)
+ id = (known after apply)
+ permission = "pull"
+ repository = "infra"
+ team_id = (known after apply)
}
Plan: 22 to add, 5 to change, 22 to destroy. |
|
I will remove @timfong888 from the org afterwards (manual action required). |
|
@snadrus, @LexLuthr, and @silent-cipher. You should have received an invite to join the FilOzone org per https://github.com/orgs/FilOzone/people/pending_invitations . Please accept.
|
|
@timfong888 : was moved as an outside collaborator and his admin access was removed from repos that have been archived:
|


Summary
foc-wg-engteam and add requested members, including org membership updates forsilent-cipher,LexLuthr, andsnadrusfoc-wg-engwrite access toearly-repairand read access toinfraMotivation
A primary goal is ensuring the foc WG has the right access to
early-repairandinfra, while bundling related access cleanup in the same change set.Test plan
github/FilOzone.ymlearly-repairhasteams.push: [foc-wg-eng]infrahasteams.pull: [foc-wg-eng]foc-wg-engexists with the requested membershipMade with Cursor