Skip to content

feat: add a dry-run input to the GitLab CI component - #91

Merged
lesnik512 merged 1 commit into
mainfrom
feat/gitlab-dry-run
Oct 3, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
feat/gitlab-dry-run

Conversation

@lesnik512

Copy link
Copy Markdown
Member

Closes #60.

The GitLab component now matches the GitHub Action: a dry-run input threads --dry-run to semvertag tag.

  • Input shape. dry-run is a GitLab type: boolean input with default: false, unlike the GitHub Action's string 'false'. GitLab renders a boolean input as the bare word true/false, which are shell builtins, so the script uses $(if $[[ inputs.dry-run ]]; then echo --dry-run; fi) on the same line as uvx. That keeps the invocation at script[0], where the gate already looks for the version pin. A boolean also lets GitLab reject anything other than true/false when the pipeline is created, instead of the script quietly treating a typo as "off".
  • Version floor. The component's semvertag floor moves from >=0.1 to >=0.5.0, the first release with --dry-run, matching action.yml.
  • Descriptor gate. The gate now requires spec.inputs to be exactly {strategy, dry-run}, dry-run to be a boolean defaulting to false, script[0] to wire the input onto --dry-run, and the semvertag floor to be at least 0.5.0. Each rule has a negative fixture.
  • Docs. The GitLab guide gets a "Dry run" section for the inline job and the component input.

Not done here: the quick-start snippet in docs/providers/gitlab.md still pins semvertag>=0.1,<1. It never passes --dry-run, so it still works, and the new section tells readers to raise the floor when they add the flag.

Verified with just lint-ci, just test-ci (480 passed, 100% coverage), just adr-check and just docs-build. The script line was checked in a local POSIX sh (it expands to tag --dry-run for true and tag for false). It has not been run in a real GitLab pipeline; the component isn't published to the Catalog yet.

@lesnik512
lesnik512 merged commit a138aa5 into main Oct 3, 2026
14 checks passed
@lesnik512
lesnik512 deleted the feat/gitlab-dry-run branch October 3, 2026 20:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The GitLab CI component has no dry-run input

1 participant