Skip to content

Removal of :ci_new_artifact_file_reader feature flag causes child pipelines to break

Summary

In this commit related to this issue, the feature flag for :ci_new_artifact_file_reader was removed. However, in 13.5, customers triggering child pipelines from a YAML will hit an error, causing all child pipelines to fail.

The error will suggest testing .gitlab-ci.yml in CI Lint, but this will return no errors.

Steps to reproduce

Attempt to run a pipeline that creates a child pipeline in 13.5.1 - it will fail with the below error.

Example Project

What is the current bug behavior?

User will receive the following error when attempting to trigger a child pipeline:

Found errors in your .gitlab-ci.yml:
Undefined error ([value])

You can also test your .gitlab-ci.yml in CI Lint

What is the expected correct behavior?

Child pipelines triggered successfully.

Relevant logs and/or screenshots

See screenshots in https://gitlab.zendesk.com/agent/tickets/177913 and https://gitlab.zendesk.com/agent/tickets/178393 (ZD Internal)

Output of checks

Results of GitLab environment info

Expand for output related to GitLab environment info

(For installations with omnibus-gitlab package run and paste the output of:
`sudo gitlab-rake gitlab:env:info`)

(For installations from source run and paste the output of:
`sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)

Results of GitLab application Check

Expand for output related to the GitLab application check

(For installations with omnibus-gitlab package run and paste the output of: sudo gitlab-rake gitlab:check SANITIZE=true)

(For installations from source run and paste the output of: sudo -u git -H bundle exec rake gitlab:check RAILS_ENV=production SANITIZE=true)

(we will only investigate if the tests are passing)

Possible fixes

Temporary Workaround: one of our customers patched lib/gitlab/ci/artifact_file_reader.rb by reverting it back to its state in this commit from 7 months ago, testing it in their DEV environment before implementing it in PROD, which allowed child pipelines to be able to be run again. We made the customer aware that if they plan to upgrade to later versions of GitLab, they would have to re-patch lib/gitlab/ci/artifact_file_reader.rb until a release is included with a permanent fix.