Ich möchte GitLab CI mit der Datei .gitlab-ci.yml verwenden, um verschiedene Phasen mit separaten Skripten auszuführen. In der ersten Phase wird ein Werkzeug erstellt, das in einer späteren Phase zur Durchführung von Tests verwendet werden muss. Ich habe das generierte Tool als Artefakt deklariert.
Wie kann ich dieses Tool in einem späteren Job ausführen? Was ist der richtige Pfad und welche Dateien werden sich um ihn herum befinden?
In der ersten Phase werden beispielsweise Artefakte / bin / TestTool / TestTool.exe erstellt, und dieses Verzeichnis enthält andere erforderliche Dateien (DLLs und andere). Meine .gitlab-ci.yml-Datei sieht folgendermaßen aus:
releasebuild:
script:
- chcp 65001
- build.cmd
stage: build
artifacts:
paths:
- artifacts/bin/TestTool/
systemtests:
script:
- chcp 65001
- WHAT TO WRITE HERE?
stage: test
Der Build und die Tests werden unter Windows ausgeführt, wenn dies relevant ist.
Note that artifacts from all previous stages are passed by default.
. Die Frage ist, wann Sie Abhängigkeiten verwenden müssen.Da Artefakte aus allen vorherigen Stufen standardmäßig übergeben werden, müssen wir nur Stufen in der richtigen Reihenfolge definieren. Bitte versuchen Sie das folgende Beispiel, um das Verständnis zu verbessern.
Und um Artefakte zwischen Jobs in verschiedenen Phasen zu übergeben, können wir Abhängigkeiten zusammen mit Artefakten verwenden , um die Artefakte zu übergeben, wie im Dokument beschrieben .
Und noch ein einfacheres Beispiel:
quelle