Pipeline Editor incorrectly reports valid syntax for invalid YAML when branch head commit includes [skip ci]
Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.
Summary
When the latest commit on a branch includes [skip ci], the Pipeline Editor reports “Pipeline syntax is correct” even if the content is invalid YAML. This does not happen on branches without [skip ci].
Steps to reproduce
- Create a new branch (e.g. branch2).
- Push a commit with [skip ci] in the message:
echo "hello" > README.md
git add README.md
git commit -m "test commit [skip ci]"
git push -u origin branch2
- In the UI, go to CI/CD → Pipeline Editor.
- Switch the ref selector to branch2 and click Configure pipeline.
- Clear the sample pipeline template.
- Paste invalid YAML, for example:
this is not a valid pipeline
Ticket Id
Current behaviour
The Pipeline Editor heading shows "Pipeline syntax is correct" even though the input is invalid. On the Validate tab, clicking validate shows "simulate completed successfully."
Expected behaviour
The editor should report a syntax error for invalid YAML, the same way the CI Lint tool does. The Validate tab should also display appropriate error messages rather than simulating successfully.
Versions
GitLab Self-managed 18.3.1
Platforms
Relevant logs
NA
Customer Impact
Customers editing on branches with [skip ci] cannot rely on the Pipeline Editor to catch YAML errors.
This can mislead users into thinking their configuration is valid when it is not.
The only reliable workaround is to use the CI Lint tool or to make a new commit without [skip ci], which interrupts their normal workflow.
/cc @manuelgrabowski