Me gustaría usar GitLab CI con el archivo .gitlab-ci.yml para ejecutar diferentes etapas con scripts separados. La primera etapa produce una herramienta que debe usarse en una etapa posterior para realizar pruebas. He declarado la herramienta generada como artefacto.
Ahora, ¿cómo puedo ejecutar esa herramienta en un trabajo de etapa posterior? ¿Cuál es la ruta correcta y qué archivos habrá a su alrededor?
Por ejemplo, la primera etapa crea artifacts / bin / TestTool / TestTool.exe y ese directorio contiene otros archivos necesarios (DLL y otros). Mi archivo .gitlab-ci.yml se ve así:
releasebuild:
script:
- chcp 65001
- build.cmd
stage: build
artifacts:
paths:
- artifacts/bin/TestTool/
systemtests:
script:
- chcp 65001
- WHAT TO WRITE HERE?
stage: test
La compilación y las pruebas se ejecutan en Windows si es relevante.
Note that artifacts from all previous stages are passed by default.
. La pregunta es cuándo es necesario utilizar dependencias.Dado que los artefactos de todas las etapas anteriores se pasan de forma predeterminada, solo necesitamos definir las etapas en el orden correcto. Pruebe el ejemplo a continuación, que podría ayudar a comprender.
Y en caso de pasar artefactos entre trabajos en diferentes etapas, podemos usar dependencias junto con artefactos para pasar los artefactos, como se describe en el documento .
Y un ejemplo más simple:
fuente