Моя цель — добраться до точки, где я могу ввести /run-black
в качестве комментария к запросу на вытягивание в GitHub, а затем GitHubActions запустит black .
в ветке запроса на вытягивание и добавит фиксацию.
Случай использования заключается в том, что иногда случайные участники делают небольшой запрос на включение в мою библиотеку (например, исправление опечатки), и я хотел бы иметь возможность просто написать комментарий, например /run-black
, чтобы средство форматирования black
запускалось на их файлах, прежде чем я объединим их. .
Используйте действие Slash Command Dispatch. Добавьте PAT с областью действия repo
с именем PAT
в свои секреты и создайте два рабочих процесса со следующими определениями.
name: Slash Command Dispatch
on:
issue_comment:
types: [created]
jobs:
slashCommandDispatch:
runs-on: ubuntu-latest
steps:
- name: Slash Command Dispatch
uses: peter-evans/slash-command-dispatch@v2
with:
token: ${{ secrets.PAT }}
issue-type: pull-request
commands: |
run-black
on:
repository_dispatch:
types: [run-black-command]
jobs:
runBlack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
repository: ${{github.event.client_payload.pull_request.head.repo.full_name}}
ref: ${{github.event.client_payload.pull_request.head.ref}}
token: ${{ secrets.PAT }}
- name: Slash Command Dispatch
run: black .
- run: |
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git commit -m "Run black" -a
git push
@ignoring_gravity попробуйте мое редактирование, но оно работает только в том случае, если ветка, из которой извлекается, находится либо в вашем репозитории, либо PR позволяет вам отправить их в свою вилку.
Есть ли способ выполнить это действие с токеном приложения вместо PAT?
Спасибо! Я пробовал это, но получил ошибку «1 файл изменен, 1 вставка (+), 1 удаление (-) фатально: вы в данный момент не находитесь в ветке. Чтобы отправить историю, ведущую к текущему (отсоединенному) состоянию HEAD, используйте git push origin HEAD:<name-of-remote-branch>" Любое предложение о том, как нажать на ветку запроса на вытягивание?