GOOGLE ADS

domingo, 17 de abril de 2022

Cómo llegar a la sucursal a la que se dirige el PR en CircleCI

CircleCI have a CIRCLE_BRANCH env variable that tells you the name of the branch of the PR itself.

Pero quiero al revés, necesito el nombre de la sucursal del PR contra el que se intenta fusionar.


Solución del problema

No hay una variable de entorno integrada (consulte la lista completa aquí ) para obtener el nombre de la rama base de una solicitud de extracción. Sin embargo, puede obtener el número de solicitud de extracción usando la CIRCLE_PR_NUMBERvariable de entorno y usar la API REST de GitHub para recuperar el nombre de la rama base.

Vas a necesitar:

  • Cree un token de acceso personal de GitHub usando el repoalcance

  • Establezca una variable de entorno del proyecto llamadaGITHUB_ACCESS_TOKEN

  • Recuperar los datos de la solicitud de extracción en formato JSON

  • Analice el JSON para obtener la referencia de la rama base: hay algunas formas de lograrlo

  • Aquí hay una secuencia de comandos bash de muestra que recupera los datos de una solicitud de extracción determinada en formato JSON y los analiza usando Python 2:

    #!/bin/bash
    REPO_OWNER="replace_me"
    GITHUB_API_URL="https://api.github.com/repos/$REPO_OWNER/$CIRCLE_PROJECT_REPONAME/pulls/$CIRCLE_PR_NUMBER?access_token=$GITHUB_ACCESS_TOKEN"
    export PYTHONIOENCODING=utf8
    export PULL_REQUEST_BASE_REF=$(curl -s "$GITHUB_API_URL" | python -c "import sys, json; print json.load(sys.stdin)['base']['ref']")

    No hay comentarios:

    Publicar un comentario

    Regla de Firestore para acceder a la generación de subcolección Permisos faltantes o insuficientes

    Tengo problemas con las reglas de Firestore para permitir el acceso a algunos recursos en una subcolección. Tengo algunos requests document...