jacksonfire1re
Estoy tratando de convertir una solicitud de extracción nuevamente en un borrador, usando acciones de github y gh.
Pero mi acción siempre falla al convertir un PR abierto de nuevo en borrador, con el registro:
API call failed: GraphQL: github-actions[bot] does not have permission to convert the pull request PR_somenumbers to draft. (convertPullRequestToDraft)
Información:
Al momento de escribir esta pregunta, GitHub se enfrentó a una interrupción. Probé nuevamente ahora un día después y el error aún existe. Así es no relacionado con la interrupción de GitHub.
Mis acciones se ven (recortadas) así:
- En una nueva solicitud de extracción abierta, haz lo siguiente:
- echa un vistazo al repositorio
- Obtener la rama base de esta solicitud de extracción
- Busque solicitudes de extracción abiertas, que tengan esta rama base de 3. como cabeza
- Iterar a través de las solicitudes de extracción abiertas de 4. y si la base de este PR es mi rama principal, entonces:
- Establezca el estado de relaciones públicas en ‘borrador’
name: Bot
on:
pull_request:
types:
- opened
jobs:
comment:
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
MAIN_BRANCH_NAME: 'main'
BASE_PR_REF: ${{ github.base_ref }}
steps:
- name: Check out repository code
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- run: |
for base_pr_id in $(gh pr list --search "head:${{ env.BASE_PR_REF }}" --json number --jq '.[].number'); do
if [ ${{ env.MAIN_BRANCH_NAME }} == $( gh pr view $base_pr_id --json baseRefName --jq '.baseRefName') ]; then
gh pr ready $base_pr_id --undo <-- This won't work
fi
done
También traté de agregar permisos específicos, pero ninguno de ellos funcionó:
permissions:
pull-requests: write
contents: write
statuses: write
También otorgué a las acciones permisos de lectura y escritura en la configuración de GitHub. Sin éxito. Cualquier idea es muy bienvenida.
-
¿Por qué parece ser así (¿pruebas propias? ¿documentación?)? Proporcione una referencia para la respuesta para que suene menos especulativo.
– hakré
hace 2 días
-
@hakre, mire la pregunta, incluyeron el mensaje de error que recibieron: “Falló la llamada a la API: GraphQL: github-actions[bot] no tiene permiso para convertir la solicitud de extracción PR_somenumbers en borrador. (convertPullRequestToDraft).” Desde mi propia experiencia, el usuario de acciones de GitHub predeterminado no puede realizar algunas acciones, como fusionar PR en algunos casos, por lo que también tuve que usar un PAT para algunos flujos de trabajo relacionados con PR. He editado mi comentario para incluir un enlace a la documentación oficial.
– Yonatan
hace 2 días
GitHub parece estar completamente operativo nuevamente. Dale otra oportunidad a esto.
– Spevacus
4 de mayo a las 16:57
Intentó de nuevo. Todavía no funciona y todavía me enfrento al error de permiso. No está relacionado con el apagón.
– JacksOnF1re
5 de mayo a las 9:30
Lo siento si este comentario parece estúpido, pero solo pido que esté completo: la cuenta de Github en cuestión permite que todos (incluidos los privados) y específicamente este (¿es público?) Repositorio tenga solicitudes de extracción con estado de borrador?
– hakré
hace 2 días
@hakre De ninguna manera. Estoy realmente incómodo con esto, pero por supuesto probé mi acción primero en un repositorio privado. Trabajando todo el tiempo en repositorios públicos o de la empresa, no sabía que los repositorios privados (no de la empresa) no admiten borradores como una característica. Y adivina qué, lo cambié para que sea público y ahora funciona. Así que esta no era absolutamente ninguna pregunta estúpida. Me siento muy tonto ahora. Agregue esto como respuesta y, dado que resuelve mi problema, lo marcaré como la respuesta de resolución. Para más lectores: github.com/precios (desplácese hasta el flujo de trabajo de código).
– JacksOnF1re
hace 2 días
@JacksOnF1re: De acuerdo, esa fue exactamente la razón por la que estaba preguntando, ya que he estado allí (solo que no a través de la API), así que me recordó que es posible que en realidad no haya derechos de acceso. Se agregó una respuesta.
– hakré
hace 2 días