O GitHub Blog apresentou o Evergreen, um aplicativo criado pela própria empresa para cuidar da organização de repositórios em uma conta compartilhada. Ele faz duas coisas automaticamente: revisa quais colaboradores externos ainda precisam de acesso e arquiva repositórios que já cumpriram seu papel.
O problema é comum: quando um projeto cresce e recebe pessoas de fora, alguém precisa lembrar de conferir quem ainda deve ter acesso, ajustar permissões e arquivar o que ficou parado. Esse trabalho manual é fácil de adiar e fica cada vez mais difícil de acompanhar.
O sistema segue um calendário trimestral. Dias antes da limpeza, o dono de cada repositório recebe uma lista de verificação em forma de issue, onde marca quem continua com acesso. Se ninguém responder no prazo, o Evergreen revoga o acesso de quem ficou sem confirmação. A própria fonte ressalta que o princípio é falhar de forma segura: na dúvida, o acesso é removido. Mas o sistema nunca apaga repositórios nem seu conteúdo, e cada mudança fica registrada na issue, o que facilita desfazer um erro.
O histórico de decisões fica guardado em arquivos JSON versionados no Git, funcionando como trilha de auditoria. Quando a remoção de algum acesso falha por erro temporário, o repositório não é marcado como concluído e a tentativa é repetida na execução seguinte.
Para evitar bloqueios por limite de uso da API, o Evergreen trabalha em lotes, espaça as requisições e respeita os limites de criação de conteúdo da plataforma, de 80 requisições por minuto e 500 por hora. Antes de valer de verdade, a ferramenta passou por um modo de teste que apenas registra o que faria, e as equipes foram avisadas com antecedência.
A fonte não informa datas de lançamento público da ferramenta. Quem quiser adaptar o modelo a outra organização pode usar apenas recursos nativos do GitHub, como aplicativos, ações agendadas, webhooks e issues.

Comentários