GitHub: Napredni primjer¶
Konfiguracija spremna za produkciju sa svim najboljim praksama.
Korak 1: Dodajte tajnu¶
Settings → Secrets and variables → Actions → New repository secret
| Ime | Vrijednost |
|---|---|
AI_REVIEWER_GOOGLE_API_KEY |
Vaš Gemini API ključ |
Korak 2: Kreirajte fajl¶
.github/workflows/ai-review.yml:
name: AI Code Review
on:
pull_request:
types: [opened, synchronize, reopened]
# Opciono: filter fajlova
# paths:
# - '**.py'
# - '**.js'
# - '**.ts'
# Otkaži prethodni run na novi commit
concurrency:
group: ai-review-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
review:
name: AI Review
runs-on: ubuntu-latest
# Ne pokreći za fork PR-ove (tajne nijesu dostupne)
if: github.event.pull_request.head.repo.full_name == github.repository
# Ne blokiraj PR ako revizija ne uspije
continue-on-error: true
# Zaštita timeout-om
timeout-minutes: 10
permissions:
contents: read
pull-requests: write
steps:
- name: Run AI Code Review
uses: KonstZiv/ai-code-reviewer@v1
with:
google_api_key: ${{ secrets.AI_REVIEWER_GOOGLE_API_KEY }}
language: uk
language_mode: adaptive
log_level: INFO
Šta je uključeno¶
| Funkcionalnost | Status | Opis |
|---|---|---|
| Inline komentari | Sa Apply Suggestion | |
| Konkurentnost | Otkazuje stare pokretanja | |
| Fork filter | Preskače fork PR-ove | |
| Timeout | Maksimalno 10 minuta | |
| Neblokirajući | PR nije blokiran | |
| Prilagođeni jezik | language: uk |
Varijacije¶
Sa filterom fajlova¶
Sa filterom grana¶
Sa prilagođenim modelom¶
- uses: KonstZiv/ai-code-reviewer@v1
with:
google_api_key: ${{ secrets.AI_REVIEWER_GOOGLE_API_KEY }}
gemini_model: gemini-1.5-pro # Moćniji model
Sa DEBUG logovima¶
- uses: KonstZiv/ai-code-reviewer@v1
with:
google_api_key: ${{ secrets.AI_REVIEWER_GOOGLE_API_KEY }}
log_level: DEBUG
Opcije Action-a¶
| Input | Opis | Podrazumijevano |
|---|---|---|
google_api_key |
Gemini API ključ | obavezno |
github_token |
GitHub token | ${{ github.token }} |
language |
Jezik odgovora | en |
language_mode |
adaptive / fixed |
adaptive |
gemini_model |
Gemini model | gemini-2.5-flash |
log_level |
Nivo logova | INFO |
Rješavanje problema¶
Revizija se ne pojavljuje¶
- Provjerite logove workflow-a
- Provjerite da nije fork PR
- Provjerite
permissions: pull-requests: write
Rate Limit¶
Konkurentnost automatski otkazuje stara pokretanja, smanjujući opterećenje.