mirror of
https://github.com/go-gitea/gitea.git
synced 2026-05-23 05:42:33 +09:00
## What This PR updates the giteabot workflows to use the newer action version that supports selecting individual checks, and splits the workflow into two separate jobs: - `giteabot backport` runs only the `backport` check on pushes to `main` - `giteabot` handles the remaining bot tasks on PR-related events, scheduled runs, and manual dispatch ## Why Previously, the single workflow handled both backporting and the other maintenance tasks together. With the new giteabot action supporting configurable checks, splitting the workflow makes the triggers clearer and avoids running non-backport maintenance on every push to `main`. ## Changes - upgrade `go-gitea/giteabot` to a revision that supports the `checks` input - move the `main` branch `push` trigger into a dedicated backport workflow - keep non-backport automation in the existing workflow - add a `workflow_dispatch` input so non-backport checks can be selected manually when needed --- Helped by a coding agent with Codex 5.4 --------- Co-authored-by: Nicolas <bircni@icloud.com>
52 lines
1.8 KiB
YAML
52 lines
1.8 KiB
YAML
name: giteabot
|
|
|
|
on:
|
|
# pull_request_target gives this workflow access to GITEABOT_TOKEN on PRs from
|
|
# forks, which the bot needs to write labels, statuses and comments. Safe here
|
|
# because the job only runs a pinned action and never checks out PR HEAD.
|
|
pull_request_target: # zizmor: ignore[dangerous-triggers]
|
|
types:
|
|
- opened
|
|
- synchronize
|
|
- labeled
|
|
- unlabeled
|
|
- closed
|
|
- review_requested
|
|
- review_request_removed
|
|
pull_request_review:
|
|
types:
|
|
- submitted
|
|
- edited
|
|
- dismissed
|
|
schedule:
|
|
- cron: "15 3 * * *"
|
|
workflow_dispatch:
|
|
inputs:
|
|
checks:
|
|
description: Comma-separated list of non-backport checks to run
|
|
required: false
|
|
default: labels,merge_queue,lock,feedback,last_call,milestones,lgtm,translation_comment,pr_actions
|
|
|
|
permissions:
|
|
contents: read
|
|
issues: write
|
|
pull-requests: write
|
|
statuses: write
|
|
|
|
concurrency:
|
|
group: ${{ format('{0}-{1}', github.workflow, (github.event_name == 'pull_request_target' || github.event_name == 'pull_request_review') && format('pr-{0}', github.event.pull_request.number) || 'maintenance') }}
|
|
cancel-in-progress: false
|
|
|
|
jobs:
|
|
giteabot:
|
|
if: github.repository == 'go-gitea/gitea'
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 30
|
|
steps:
|
|
# pull_request_review runs without repository secrets on fork PRs, so fall
|
|
# back to the workflow token for the non-backport checks handled here.
|
|
- uses: go-gitea/giteabot@40d7c74f93d479578978c4ef47a655a467b8dab1 # Add config options (#5)
|
|
with:
|
|
github_token: ${{ secrets.GITEABOT_TOKEN || github.token }}
|
|
checks: ${{ github.event.inputs.checks || 'labels,merge_queue,lock,feedback,last_call,milestones,lgtm,translation_comment,pr_actions' }}
|