Uppgifter misslyckas. De flesta fel beror på konfiguration eller specifikationer, inte på något mystiskt, och kan delas in i ett fåtal typer.
Börja med att se var det stannade
Körningen visar vilket steg som misslyckades. Bara den uppgiften begränsar orsaken mer än något annat:
| Misslyckades vid | Betyder nästan alltid |
|---|---|
| Innan någon kod skrevs | Build- eller install-kommandot är fel för en ren arbetsyta |
| Under ändringen | Verkligt svårt arbete eller ett beroende som saknas |
| Kör tester | Testkommandot är fel, eller så behöver testsviten en tjänst |
| Verifiering | En blockerande kontrollpunkt; se Resultat |
| Granskning | Resultat som inte kunde åtgärdas automatiskt |
Fel innan ändringen skrivs är konfigurationsfel. Se Build- och testkonfiguration.
- Var körningen stannade
- Testkörning. Testsviten behöver en databas som inte finns i den rena arbetsytan.
- Det här behöver ändras
- Projektets bygg- och testkonfiguration. Om du försöker igen utan att ändra något misslyckas uppgiften på samma sätt.
Den har inte fastnat, den står i kö
En uppgift i PENDING står inte stilla. Den väntar på en ledig agentplats. Kontrollera
kapacitet innan något annat — detta är det
vanligaste falska alarmet.
Den frågar dig om något
NEEDS_HUMAN_REVIEW betyder att uppgiften har nått ett beslut som bara du kan fatta. Det är inte ett
fel. Svara på frågan så fortsätter den där den pausades.
Svara precist. Ett vagt svar leder till ännu en gissning och ännu en paus.
Körningen tar mycket längre tid än väntat
Två vanliga orsaker:
En långsam testsvit eller en testsvit som har hängt sig. Coroid kör din testsvit. Om den hänger sig i en ren arbetsyta väntar uppgiften. Återskapa problemet genom att köra testsviten mot en ny klon.
En specifikation som är tillräckligt bred för att agenten hela tiden ska hitta mer att göra. Tecknet är en växande fillista. Avbryt, begränsa omfånget med en uttrycklig rad om vad som inte ingår och kör igen. Se Specifikationer.
Välja vad som ska göras
I stigande kostnadsordning:
- Svara — för
NEEDS_HUMAN_REVIEW. Billigast och behåller all kontext. - Gör om arbetet — arbetet är korrekt men ofullständigt. Går tillbaka till utvecklaragenten med dina resultat och dess kontext intakt.
- Pausa — du behöver kontrollera något först. Frigör platsen och kan återupptas.
- Försök igen — endast vid verkligt tillfälliga fel. Om du försöker igen vid ett konfigurationsfel återskapas det bara.
- Avbryt och specificera på nytt — tillvägagångssättet eller omfånget var fel. Dyrast, och ofta rätt beslut.
Svara
När du behöver svara på en fråga. All kontext bevaras.
Gör om
Rätt, men ofullständigt. Skickas tillbaka med dina iakttagelser.
Pausa
Du behöver kontrollera något. Platsen frigörs.
Försök igen
Bara vid verkligt tillfälliga fel.
Avbryt och ange specifikationen på nytt
Tillvägagångssättet eller omfattningen var fel.
Fel som upprepas i flera uppgifter
Samma fel i samma steg för orelaterade uppgifter är ett problem i projektets konfiguration, inte i uppgiften. Sluta köra uppgifterna igen och åtgärda konfigurationen.
En release är blockerad efter att uppgiften är klar
En slutförd uppgift innebär att arbetet har nått granskning; det säger inget om den valda release-committen eller driftsättningen. På sidan Releaser väljer du miljö och läser de blockerande kontrollerna. Utvärdera igen när checklistan är klar eller när en körning av Quality Graph är slutförd. En ändrad SHA, omfattning eller policy gör den tidigare kontrollen och godkännandena inaktuella. Om en driftsättning redan körs eller om utfallet är oklart ska du granska leverantörens körning innan du begär en ny.