Compliance Frameworks form validation is broken - requires trailing slash which is invalid path syntax
Summary
Form validation for one of the two Compliance Framework forms incorrectly requires a trailing slash which generates an incorrect path variable and causes pipelines to fail.
Steps to reproduce
There are two different paths one can navigate to create or edit a compliance framework definition. Both behave differently and have differing form validation.
- Settings -> General -> Compliance Frameworks
- Secure -> Compliance Center -> Compliance Frameworks.
- For number 1 above the form validation is correct and does not require a trailing slash.
- For number 2 above the form validation will not allow the CF to be saved unless a trailing slash is added - which is not valid path syntax.
If the second path is taken, any pipeline which uses the CF pipeline will fail with a message that the path to the CF YAML was not found.
Example Project
https://gitlab.com/bmiller1-demo
Let me know if you need access. This should be the same anywhere on GitLab.com
Here, the CF cannot be saved until I add a trailing slash to the path name. Without the slash:
With the slash:
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)