Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Add first party support for Github App

Abierto
#3,005 6 comentarios 10 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
30/100
Tipo de issue
Nueva funcionalidad
Claridad
Necesita aclaración
Estado de actividad
Estancado
Stack tecnológico
github, go

Línea de trabajo

Comienza revisando github.Client, AppServiceCreateInstallationToken y ChecksService, junto con los tres flujos de autenticación de GitHub enlazados en el issue. Define la compatibilidad first-party necesaria para las credenciales de app, instalación y usuario, incluido el uso seguro y la renovación de tokens de corta duración entre llamadas a la API.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

enhancement

Many of the apis requires to be invoked as Github App, eg. https://docs.github.com/en/rest/checks/runs?apiVersion=2022-11-28. And currently we need to use third-party packages like ghinstallation to do so.

However, this is not the full story. When creating a Github App, it involves many different kinds of creds:

And we need to use different cred to call different APIs. For now, the only way to do so is to create many different github.Clients, each holding a different credential.

And we need to do this with extra care, as all these token are short-lived, and need to be cached/refreshed periodically. Which means, blindly creating those clients will cause lots of rate limiting issues.

For instance, to use github.ChecksService, we need:

  • Auth as Github App itself by creating a JWT with app's private key, to call github.AppServiceCreateInstallationToken
  • Once we have the token, we can auth as app installation, then calling github.ChecksService

Which requires 2 github.Clients in total.

Lenguaje dominante
Go
Estrellas
11.3k
Forks
2.6k
Merge medio
2 d 12 h
PR fusionados (30 d)
43

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de google/go-github

Todos los issues de google/go-github

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.