Wenn die if-Bedingung eines Auftrags ausgewertet wird, protokolliert GitHub Actions die Ausdrucksauswertung, um das Ergebnis nachvollziehbar zu machen. Dies hilft beim Debugging, um nachzuvollziehen, warum ein Auftrag übersprungen wurde und warum ein Auftrag ausgeführt wurde, von dem Sie erwartet haben, dass er übersprungen wird.
Zugriff auf Expressionsprotokolle
- Navigieren Sie zur Workflowausführungszusammenfassung.
- Klicken Sie auf den Job.
- Klicken Sie auf .
- Wählen Sie "Protokollarchiv herunterladen" aus.
- Extrahieren Sie die ZIP-Datei, und öffnen Sie die
JOB-NAME/system.txtDatei.
Grundlegendes zur Protokollausgabe
Das Systemprotokoll zeigt die Ausdrucksauswertung an:
Evaluating: (success() && ((github.repository == 'octo-org/octo-repo-prod')))
Expanded: (true && (('my-username/octo-repo-prod' == 'octo-org/octo-repo-prod')))
Result: false
| Zeilen | Description |
|---|
**Bewertung** | Der ursprüngliche `if` Ausdruck aus der Workflowdatei. |
|
Expanded | Der Ausdruck mit ersetzten Kontextwerten. Dies zeigt Ihnen genau, welche Werte zur Laufzeit verwendet wurden. |
|
Result | Das endgültige Auswertungsergebnis (true oder false). |
In diesem Beispiel zeigt die erweiterte Zeile, dass github.repository``'my-username/octo-repo-prod' ist (nicht 'octo-org/octo-repo-prod'), was dazu führt, dass die Bedingung zu false ausgewertet wird.
Hinweis
Ausdrucksprotokolle sind nur für if-Bedingungen auf Auftragsebene verfügbar. Für Bedingungen auf Schrittebene können Sie die Debugprotokollierung aktivieren, damit die Ausdrucksauswertung in den Auftragsprotokollen angezeigt wird. Weitere Informationen finden Sie unter Aktivieren der Debugprotokollierung.