Проблема Gitlab ci с передачей артефактов в конвейер нисходящего потока с триггером и ключевыми словами

Я работаю над проектом с несколькими конвейерами и использую triggerключевое слово для запуска нисходящего конвейера, но не может передавать артефакты, созданные в восходящем проекте. я использую needs чтобы получить артефакт, как показано ниже:

Блок Downstream Pipeline для получения артефактов:

          needs:
        - project: workspace/build
          job: build
          ref: master
          artifacts: true

Блокировка Upstream Pipeline для запуска:

          build:
      stage: build
      artifacts:
        paths:
          - ./policies
        expire_in: 2h
      only:
        - master
      script:
        - echo 'Test'
      allow_failure: false
    
    triggerUpstream:
      stage: deploy
      only:
        - master
      trigger:
        project: workspace/deploy

Но получаю ошибку: This job depends on other jobs with expired/erased artifacts:

Понятия не имею, что не так, пожалуйста, помогите.

3 ответа

Похоже, существует проблема с совместным использованием артефактов между конвейерами, а также между проектами. Это известная ошибка, о которой здесь сообщалось:

https://gitlab.com/gitlab-org/gitlab/-/issues/228586

Там вы можете найти обходной путь, но, поскольку для этого нужно добавить токен доступа в проект, это не лучшее решение.

Задание «Сборка» восходящего конвейера настроено на хранение своих артефактов только в течение 2 часов (с expire_in: 2hлиния. Ваш нисходящий конвейер должен быть запущен как минимум на 2 часа позже, чем были созданы артефакты, поэтому срок действия артефакта истек, и он был удален, создавая эту ошибку.

Чтобы решить эту проблему, вы можете либо обновить поле до того времени, в течение которого они будут активны (например, если вы знаете, что нисходящий конвейер будет работать до 5 дней спустя, установите его на 5 дней в течение 5 дней), либо повторно запустить задание сборки воссоздать артефакты.

Вы можете узнать больше о expire_inключевое слово и артефакты в целом из документации

Это не проблема с просроченными артефактами, ошибка некорректна. В моем случае я могу загрузить артефакты в виде zip-архива непосредственно из пользовательского интерфейса при выполнении задания. Мой установлен на но я все еще получаю это сообщение.

Другие вопросы по тегам