Allow artifact upload from consumer API
Description
You can't push build artifacts, for example results of a build, from external systems, e.g. Jenkins to GitLab. On Merge Requests this can be hacked around by providing a comment with the artifact links, but for regular Push and Tag builds that method won't work.
Proposal
There is a upload artifacts method in the internal build API. That could be exposed to consumers. The internal method can't be used because the external system is not authenticated.
Links / references
The problem is discussed in the Jenkins Gitlab plug issues:
https://github.com/jenkinsci/gitlab-plugin/issues/486#issuecomment-313298892
Documentation blurb
Overview
What is it? An API for consumers to upload artifacts
Why should someone use this feature? Many Gitlab users work with external CI systems and need to integrate Gitlab with those
What is the underlying (business) problem?
How do you use this feature? I would add it to the Jenkins Gitlab plugin because users requested it
Use cases
Someone uses Gitlab for version control but an external CI (e.g. Jenkins with the Gitlab plugin). Jenkins builds an artifact (for example a zip file with assets) that should be available in Gitlab.
Feature checklist
Make sure these are completed before closing the issue, with a link to the relevant commit.
-
Feature assurance -
Documentation -
Added to features.yml