-
Notifications
You must be signed in to change notification settings - Fork 0
91 lines (86 loc) · 4.3 KB
/
Copy pathcopilot_commit.yml
File metadata and controls
91 lines (86 loc) · 4.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
name: Copilot - Commit
on:
push:
branches:
- '**'
- '!master'
- '!develop'
jobs:
copilot-commits:
if: ${{ vars.COPILOT_BOT_LOGIN == '' || github.actor != vars.COPILOT_BOT_LOGIN }}
name: Copilot - Commit
runs-on: [self-hosted, codex]
timeout-minutes: 120
concurrency:
group: copilot-bugbot-${{ github.repository }}-${{ github.event.pull_request.head.ref || github.ref_name }}
cancel-in-progress: true
permissions:
contents: read
steps:
- name: Checkout Repository
uses: actions/checkout@v5
with:
persist-credentials: false
fetch-depth: 0
- name: Set up Node.js 24 for pinned agent installation
uses: actions/setup-node@v7
with:
node-version: '24.x'
- name: Fetch push review range
if: github.event.after != '0000000000000000000000000000000000000000'
env:
BEFORE_SHA: ${{ github.event.before }}
AFTER_SHA: ${{ github.event.after }}
BRANCH_CREATED: ${{ github.event.created }}
run: |
git cat-file -e "${AFTER_SHA}^{commit}"
if [ "$BRANCH_CREATED" != "true" ] && ! git cat-file -e "${BEFORE_SHA}^{commit}"; then
echo "::notice::The previous push commit is unavailable; Bugbot will use its documented fallback scope."
fi
- uses: ./
with:
debug: ${{ vars.DEBUG }}
bugbot-severity: ${{ vars.BUGBOT_SEVERITY || 'low' }}
bugbot-comment-limit: ${{ vars.BUGBOT_COMMENT_LIMIT || '20' }}
bugbot-fix-verify-commands: ${{ vars.BUGBOT_AUTOFIX_VERIFY_COMMANDS }}
bugbot-dry-run: ${{ vars.BUGBOT_DRY_RUN || 'false' }}
bugbot-effort: ${{ vars.BUGBOT_EFFORT || 'smart' }}
bugbot-review-drafts: ${{ vars.BUGBOT_REVIEW_DRAFTS || 'false' }}
bugbot-trace-rules: ${{ vars.BUGBOT_TRACE_RULES || 'false' }}
bugbot-suggested-changes: ${{ vars.BUGBOT_SUGGESTED_CHANGES || 'true' }}
bugbot-telemetry: ${{ vars.BUGBOT_TELEMETRY || 'true' }}
bugbot-fail-on-unresolved: ${{ vars.BUGBOT_FAIL_ON_UNRESOLVED || 'false' }}
bugbot-organization-rules: ${{ vars.BUGBOT_ORGANIZATION_RULES }}
project-ids: ${{ vars.PROJECT_IDS }}
agent-provider: ${{ vars.AGENT_PROVIDER || 'codex' }}
agent-model-provider: ${{ vars.AGENT_MODEL_PROVIDER || 'openai' }}
agent-model: ${{ vars.AGENT_MODEL || 'gpt-5.6-luna' }}
agent-effort: ${{ vars.AGENT_EFFORT }}
agent-executable: ${{ vars.AGENT_EXECUTABLE }}
findings-provider: ${{ vars.FINDINGS_PROVIDER }}
findings-model-provider: ${{ vars.FINDINGS_MODEL_PROVIDER }}
findings-model: ${{ vars.FINDINGS_MODEL }}
findings-effort: ${{ vars.FINDINGS_EFFORT }}
findings-executable: ${{ vars.FINDINGS_EXECUTABLE }}
fixer-provider: ${{ vars.FIXER_PROVIDER }}
fixer-model-provider: ${{ vars.FIXER_MODEL_PROVIDER }}
fixer-model: ${{ vars.FIXER_MODEL }}
fixer-effort: ${{ vars.FIXER_EFFORT }}
fixer-executable: ${{ vars.FIXER_EXECUTABLE }}
token: ${{ secrets.PAT }}
env:
AGENT_PROVIDER: ${{ vars.AGENT_PROVIDER || 'codex' }}
AGENT_MODEL_PROVIDER: ${{ vars.AGENT_MODEL_PROVIDER || 'openai' }}
AGENT_MODEL: ${{ vars.AGENT_MODEL }}
AGENT_EFFORT: ${{ vars.AGENT_EFFORT }}
AGENT_PROVISIONING: ${{ vars.AGENT_PROVISIONING || 'auto' }}
AGENT_ALLOWED_MODEL_PROVIDERS: ${{ vars.AGENT_ALLOWED_MODEL_PROVIDERS || 'openai' }}
AGENT_ALLOWED_MODELS: ${{ vars.AGENT_ALLOWED_MODELS || 'openai/gpt-5.6-luna' }}
AGENT_EXECUTABLE: ${{ vars.AGENT_EXECUTABLE }}
OPENCODE_API_KEY: ${{ secrets.OPENCODE_API_KEY }}
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
OPENROUTER_API_KEY: ${{ secrets.OPENROUTER_API_KEY }}
CURSOR_API_KEY: ${{ (vars.AGENT_PROVIDER == 'cursor' || vars.FINDINGS_PROVIDER == 'cursor' || vars.FIXER_PROVIDER == 'cursor' || vars.PLANNER_PROVIDER == 'cursor' || vars.REVIEWER_PROVIDER == 'cursor' || vars.TESTER_PROVIDER == 'cursor') && secrets.CURSOR_API_KEY || '' }}
CODEX_API_KEY: ${{ secrets.CODEX_API_KEY }}