Add support for publishing GitLab CI components to catalog #883
+158
−2
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR implements support for GitLab CI components by adding a
publishToCatalog
configuration option that enables publishing to the GitLab catalog after creating a release.Background
GitLab CI components are reusable pieces of CI/CD configuration that can be shared through the GitLab catalog. When releasing a CI component project, an additional API call to
/projects/:id/catalog/publish
is required after the standard release creation to properly publish the component to the catalog.Changes
New Configuration Option
Added
publishToCatalog
boolean option that defaults tofalse
for backward compatibility:Enhanced Publishing Flow
When
publishToCatalog
is enabled, the plugin now:/projects/:id/catalog/publish
Error Handling
Validation
Added proper validation to ensure
publishToCatalog
is a boolean value when provided.Usage
For standard GitLab projects, no changes are needed - the option defaults to
false
.For GitLab CI component projects:
This will create both a GitLab release and publish the component to the GitLab catalog.
Testing
Fixes #822
Warning
Firewall rules blocked me from connecting to one or more addresses
I tried to connect to the following addresses, but was blocked by firewall rules:
docs.gitlab.com
curl -s REDACTED
(dns block)If you need me to access, download, or install something from one of these locations, you can either:
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.