Middle+
Kuidas määrata, milline haru ei läbinud ehitust, kui mul puudub teave ehituse kohta?
sobes.tech AI
Vastus AI-lt
Kui on ainult piiratud teave, saab kasutada kaudseid meetodeid:
- Süsteemi logide analüüs: Kui on juurdepääs CI/CD logidele (näiteks Jenkins, GitLab CI, GitHub Actions), sisaldab see teavet ehituste, harude ja staatuste kohta:
- Viimaste commitide kontrollimine harudes: Võite käsitsi üle vaadata põhiharud (main, dev) ja kontrollida viimaseid committe. Võib-olla sisaldab mõni commit linki lõpetamata või ebaõnnestunud ehitusele:
- Pull/merge taotluste vaatamine: Sageli alustatakse ehitusi PR/MR loomisel. Nende taotluste vaatamine võib tuvastada ebaõnnestunud haru:
- VCS harude staatuse kontroll: GitLab/GitHub/Bitbucket kasutajaliideses kuvatakse sageli iga haru viimase ehituse staatus:
Näide GitLab CI logide analüüsist grep kasutades:
# Kontrollige last_pipeline.log logisid ebaõnnestunud ehituste jaoks harudes
grep 'status: failed' last_pipeline.log | grep 'ref:'
Näide haru staatuse kontrollimisest Git-iga:
# Saate kõigi kohalike harude nimekirja
git branch
# Vahetage võimaliku "probleemse" haru (näiteks feature/new-feature)
# ja otsige commitide logidest ehituse mainet
git checkout feature/new-feature
git log --grep="build failed"
Tabelis on toodud võimalikud teabeallikad:
| Allikas | Eelised | Puudused |
|---|---|---|
| CI/CD logid | Täpne teave staatuse ja haru kohta | Vajab juurdepääsu logidele |
| Commit sõnumid | Võib sisaldada selget viidet ehitusele | Ei ole alati informatiivne |
| Pull/Merge taotlused | Selgelt seostab haru ja ehituse | Ehitus võis olla edukas, kuid PR/MR ei olnud suletud |
| VCS haru staatus | Kiire ülevaade | Ei pruugi näidata kogu ehituse ajalugu |