38 lines
1.3 KiB
YAML
38 lines
1.3 KiB
YAML
|
|
# PR Review Bot
|
||
|
|
# Triggers on PR open/sync, runs Claude Code review with rich context,
|
||
|
|
# posts structured review comment to Codeberg.
|
||
|
|
#
|
||
|
|
# NOTE: This runs on the host (not in Docker) because it needs:
|
||
|
|
# - claude CLI
|
||
|
|
# - git worktrees in the harb repo
|
||
|
|
# - ~/.netrc for Codeberg API
|
||
|
|
#
|
||
|
|
# For now, trigger manually or via webhook → script.
|
||
|
|
# TODO: Move to Woodpecker "local" backend when ready.
|
||
|
|
|
||
|
|
when:
|
||
|
|
event: pull_request
|
||
|
|
# Only review PRs targeting master
|
||
|
|
branch: master
|
||
|
|
|
||
|
|
steps:
|
||
|
|
review:
|
||
|
|
image: alpine
|
||
|
|
commands:
|
||
|
|
# This is a placeholder — actual review runs on host via script.
|
||
|
|
# Woodpecker's Docker backend can't access claude CLI.
|
||
|
|
#
|
||
|
|
# Two options for triggering:
|
||
|
|
#
|
||
|
|
# Option A: Codeberg webhook → OpenClaw cron/system event → review script
|
||
|
|
# - Codeberg sends PR webhook to OpenClaw gateway
|
||
|
|
# - Gateway triggers: scripts/review-pr.sh $PR_NUMBER
|
||
|
|
#
|
||
|
|
# Option B: Woodpecker local backend
|
||
|
|
# - Run woodpecker-agent with local backend (no Docker)
|
||
|
|
# - Pipeline runs directly on host
|
||
|
|
# - scripts/review-pr.sh ${CI_PULL_REQUEST_NUMBER}
|
||
|
|
#
|
||
|
|
- echo "PR review should be triggered via host script"
|
||
|
|
- echo "Run: scripts/review-pr.sh ${CI_PULL_REQUEST_NUMBER:-unknown}"
|