¿Hay alguna forma de referirse al evento de lanzamiento de otro repositorio?
Bastante seguro de que esta característica no existe.
Si tiene acceso al repositorio que crea la versión, puede llamar a un evento webhook para activar un on: repository_dispatch
flujo de trabajo para que se ejecute en otro repositorio. la acción de despacho de repositorio puede ayudar en este caso.
Si no tiene acceso al repositorio que crea la versión (que supongo que es el caso aquí), esta sería mi sugerencia. Primero, cree el siguiente flujo de trabajo que verifica periódicamente la etiqueta de la versión de lanzamiento del repositorio que desea rastrear. Si difiere de la versión de lanzamiento que ha guardado actualmente en su repositorio, se confirmará la nueva versión.
Tenga en cuenta que primero debe preparar el archivo de destino (p. Ej., Versiones de lanzamiento / swagger-ui-latest.txt) para que la verificación de los archivos modificados funcione. Además, debe usar un repo
token con ámbito en lugar del predeterminado GITHUB_TOKEN
. Para obtener más detalles al respecto, consulte Push to origin from GitHub action
name: Get latest release version
on:
schedule:
- cron: '0 10 * * *'
jobs:
get-version:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
token: ${{ secrets.REPO_SCOPED_TOKEN }}
- name: Fetch release version
run: |
curl -sL https://api.github.com/repos/swagger-api/swagger-ui/releases/latest | \
jq -r ".tag_name" > release-versions/swagger-ui-latest.txt
- name: Check for modified files
id: git-check
run: echo ::set-output name=modified::$(if git diff-index --quiet HEAD --; then echo "false"; else echo "true"; fi)
- name: Commit latest release version
if: steps.git-check.outputs.modified == 'true'
run: |
git config --global user.name 'Your Name'
git config --global user.email 'your-email@users.noreply.github.com'
git commit -am "New release version"
git push
Luego, puede crear un segundo flujo de trabajo que solo se ejecuta cuando ve algún cambio en el directorio release-versions
.
on:
push:
paths:
- 'release-versions/*'
En este flujo de trabajo, puede usar la versión guardada para obtener los activos que necesita y realizar cualquier procesamiento que necesite.