Tengo un archivo .gitlab-ci.yaml completo que incluye etapas y trabajos en el repositorio A.

En el repositorio B, deseo reutilizar todo esto, pero agregar un trabajo en una etapa existente. .gitlab-ci.yml del repositorio B:

include:
  - project: 'mygroup/repo-a'
    ref: master
    file: '.gitlab-ci.yml'

extra_job:
  stage: build
  script:
    - echo "hello world"

Pero esto solo me dio la misma canalización de CI / CD que se ve en el repositorio A. El nuevo trabajo extra_job no se ve por ninguna parte.

¿Qué estoy haciendo mal?

0
fredrik 6 feb. 2021 a las 17:44

2 respuestas

La mejor respuesta

Resulta que el trabajo no apareció porque no especifiqué las reglas.

Esta fue la solución:

include:
  - project: 'mygroup/repo-a'
    ref: master
    file: '.gitlab-ci.yml'

extra_job:
  stage: build
  script:
    - echo "hello world"
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
0
fredrik 12 mar. 2021 a las 18:27

Quizás puedas agregar esto:

stages:
  - include
  - extra_job

include:
  script: do tigger

extra_job:
  stage: build
  script:
    - echo "hello world"

enter image description here

0
Johnny 8 feb. 2021 a las 04:48