Skip to content

Conversation

@Stebalien
Copy link
Member

Summary

The permissions here look like they're generally a mess, but this should make the situation a little better. This generally:

  1. Grants push access to rust repos to the rust team.
  2. Removes some special cases that should no longer be necessary.

Why do you need this?

I need to be able to push to some rust repos and am on the rust team.

What else do we need to know?

DRI: @BigLep

(because I can't merge this)

Reviewer's Checklist

  • It is clear where the request is coming from (if unsure, ask)
  • All the automated checks passed
  • The YAML changes reflect the summary of the request
  • The Terraform plan posted as a comment reflects the summary of the request

The permissions here look like they're generally a mess, but this should
make the situation a little better.
@Stebalien Stebalien requested review from a team as code owners February 12, 2025 19:45
@github-actions
Copy link
Contributor

The following access changes will be introduced as a result of applying the plan:

Access Changes
User dvc94ch:
  - will lose push permission to libipld
User molekilla:
  - will lose push permission to libipld
User stebalien:
  - will have the permission to libipld change from admin to push
  - will have the permission to rust-ipld-core change from pull to push
  - will have the permission to rust-ipld-dagpb change from pull to push
  - will have the permission to serde_ipld_dagjson change from pull to push

@github-actions
Copy link
Contributor

Before merge, verify that all the following plans are correct. They will be applied as-is after the merge.

Terraform plans

ipld

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  ~ update in-place
  - destroy

Terraform will perform the following actions:

  # github_repository_collaborator.this["libipld:dvc94ch"] will be destroyed
  # (because key ["libipld:dvc94ch"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "libipld:dvc94ch" -> null
      - permission = "push" -> null
      - repository = "libipld" -> null
      - username   = "dvc94ch" -> null
    }

  # github_repository_collaborator.this["libipld:molekilla"] will be destroyed
  # (because key ["libipld:molekilla"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "libipld:molekilla" -> null
      - permission = "push" -> null
      - repository = "libipld" -> null
      - username   = "molekilla" -> null
    }

  # github_repository_collaborator.this["libipld:stebalien"] will be destroyed
  # (because key ["libipld:stebalien"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "libipld:Stebalien" -> null
      - permission = "admin" -> null
      - repository = "libipld" -> null
      - username   = "Stebalien" -> null
    }

  # github_repository_collaborator.this["rust-ipld-core:vmx"] will be destroyed
  # (because key ["rust-ipld-core:vmx"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "rust-ipld-core:vmx" -> null
      - permission = "push" -> null
      - repository = "rust-ipld-core" -> null
      - username   = "vmx" -> null
    }

  # github_repository_collaborator.this["rust-ipld-dagpb:vmx"] will be destroyed
  # (because key ["rust-ipld-dagpb:vmx"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "rust-ipld-dagpb:vmx" -> null
      - permission = "push" -> null
      - repository = "rust-ipld-dagpb" -> null
      - username   = "vmx" -> null
    }

  # github_repository_collaborator.this["serde_ipld_dagjson:vmx"] will be destroyed
  # (because key ["serde_ipld_dagjson:vmx"] is not in for_each map)
  - resource "github_repository_collaborator" "this" {
      - id         = "serde_ipld_dagjson:vmx" -> null
      - permission = "push" -> null
      - repository = "serde_ipld_dagjson" -> null
      - username   = "vmx" -> null
    }

  # github_team_repository.this["rust team:rust-ipld-core"] will be updated in-place
  ~ resource "github_team_repository" "this" {
        id         = "2598323:rust-ipld-core"
      ~ permission = "pull" -> "push"
        # (3 unchanged attributes hidden)
    }

  # github_team_repository.this["rust team:rust-ipld-dagpb"] will be updated in-place
  ~ resource "github_team_repository" "this" {
        id         = "2598323:rust-ipld-dagpb"
      ~ permission = "pull" -> "push"
        # (3 unchanged attributes hidden)
    }

  # github_team_repository.this["rust team:serde_ipld_dagjson"] will be updated in-place
  ~ resource "github_team_repository" "this" {
        id         = "2598323:serde_ipld_dagjson"
      ~ permission = "pull" -> "push"
        # (3 unchanged attributes hidden)
    }

Plan: 0 to add, 3 to change, 6 to destroy.

Copy link
Contributor

@BigLep BigLep left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cc @rvagg , but I don't see any concerns here. I'll merge.

@BigLep
Copy link
Contributor

BigLep commented Feb 12, 2025

Actually, since this is IPLD, I don't have permissions to merge (see https://github.com/ipld/github-mgmt/blob/master/github/ipld.yml#L1515 ). I'll leave to @rvagg

@rvagg rvagg merged commit fcfcff1 into ipld:master Feb 12, 2025
6 checks passed
@Stebalien Stebalien deleted the steb/fix-rust-permissions branch February 12, 2025 23:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants