Tengo el siguiente archivo YAML de GitLab-ci. el trabajo manual se omite y la canalización se completa correctamente aunque el trabajo manual no se activó.
¿Cómo puedo solucionarlo y por qué sucedió esto?
stages: - stage1 - stage2 job1: stage: stage1 script: - echo "this is an automatic job" manual_job: stage: stage2 script: - echo "This is a manual job" when: manualEsto sucede porque los trabajos manuales se consideran opcionales y no es necesario ejecutarlos.
Internamente, los trabajos manuales tienen allow_failure establecido en verdadero de forma predeterminada, lo que significa que estos trabajos manuales omitidos no provocan un error en la canalización. El siguiente código YAML muestra cómo escribir el trabajo manual, lo que da como resultado el mismo comportamiento. El trabajo no se inicia automáticamente, se omite y la canalización pasa.
stages: - stage1 - stage2 job1: stage: stage1 script: - echo "this is an automatic job" manual_job: stage: stage2 script: - echo "This is a manual job" when: manual allow_failure: falsePuede establecer allow_failure en verdadero para cualquier trabajo, incluidos los trabajos manuales y automáticos, y luego a la canalización no le importa si el trabajo se ejecuta correctamente o no.