stackabletech / stackabletech/stackable-utils

Add tool to manage branch protection rules across many repositories

Aberta
#66 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Linguagem predominante
Shell
Estrelas
2
Forks
1
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

We currently have a branch protection rule in place that protects "release-*" branches in our repositories.

This has drawbacks:

  • it will cause release scripts to fail because the newly created release branches cannot be pushed to by the script
  • prs on these branches cannot use the merge queue (not possible with wildcards in the branch name)

It might be worth switching to individual protection rules for every release, but that would make them hard to change/administer.

The github api allows managing these rules: https://docs.github.com/en/rest/branches/branch-protection?apiVersion=2022-11-28

We should look into writing a simple python script that takes a list of repos and release names and updates these protection rules.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Direção de pesquisa

Comece pela GitHub branch protection REST API vinculada na issue e determine como as regras de proteção podem ser gerenciadas para vários repositórios. Defina as entradas do script como listas de repositórios e nomes de release; considera-se concluído quando as regras puderem ser atualizadas centralmente sem depender do wildcard release-*, de modo que os pushes de release e as filas de merge funcionem.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
github, python
Domínio
devops, release
Tipo de issue
Funcionalidade
Dificuldade
3/5
Tempo estimado
1-2 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.