Чи є спосіб звернутися до події випуску іншого сховища?
Досить впевнений, що ця функція не існує.
Якщо у вас є доступ до сховища, яке створює випуск, ви можете викликати подію webhook, щоб запустити on: repository_dispatch
робочий процес для запуску в іншому сховищі. Дія з відправлення-сховища може допомогти у цьому випадку.
Якщо у вас немає доступу до сховища, яке створює випуск (я припускаю, що тут справа), то це буде моєю пропозицією. Спочатку створіть наступний робочий процес, який періодично перевіряє тег версії випуску сховища, яке ви хочете відстежувати. Якщо вона відрізняється від версії випуску, яку ви зберегли у своєму сховищі, то нова версія буде виконана.
Зауважте, що спочатку потрібно підготувати цільовий файл (наприклад, версії-релізи / swagger-ui-latest.txt), щоб модифіковані файли перевірили роботу. Крім того, ви повинні використовувати repo
токен масштабування замість типового GITHUB_TOKEN
. Більш детально про це дивіться " Натисніть на походження від дії GitHub"
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
Тоді ви можете створити другий робочий процес, який запускається лише тоді, коли він побачить будь-які зміни в каталозі release-versions
.
on:
push:
paths:
- 'release-versions/*'
У цьому робочому процесі ви можете використовувати збережену версію, щоб отримати потрібні вам активи та зробити будь-яку обробку, яка вам потрібна.