Potential bug rendering license approval policies
Summary
When attempting to view a license approval policy in the UI, the page is not rendered and an error is thrown in the console.
Yaml Policy File Contents:
---
scan_result_policy:
- name: Scan Result Policy
description: ''
enabled: true
rules:
- type: scan_finding
branches: []
scanners: []
vulnerabilities_allowed: 0
severity_levels:
- critical
vulnerability_states:
- newly_detected
actions:
- type: require_approval
approvals_required: 1
group_approvers:
- complince
- name: License Policy
description: ''
enabled: true
rules:
- type: license_finding
branches: []
match_on_inclusion: true
license_types:
- MIT License
license_states:
- detected
actions:
- type: require_approval
approvals_required: 1
group_approvers_ids:
- 31
scan_execution_policy:
- name: Execution policy
description: ''
enabled: true
rules:
- type: pipeline
branches:
- "*"
actions:
- scan: secret_detection
- scan: sast
- scan: dependency_scanning
The console error points to /ee/app/assets/javascripts/security_orchestration/components/policy_drawer/scan_result_policy.vue:37
where the this.parsedYaml.actions
object appears to be null and we are attempting to call this.parsedYaml.actions.find((action) => action.type === 'require_approval');
. We should probably be checking to see if this.parsedYaml.actions
is null or not by adding `v-if="parsedYaml.actions" to the template.
Tracing this back further, it also looks as though we are not parsing any of the license approval policy keys in /ee/app/assets/javascripts/security_orchestration/components/scan_result_policy/lib/from_yaml.js
.
Steps to reproduce
Example Project
What is the current bug behavior?
What is the expected correct behavior?
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
(For installations with omnibus-gitlab package run and paste the output of: `sudo gitlab-rake gitlab:env:info`) (For installations from source run and paste the output of: `sudo -u git -H bundle exec rake gitlab:env:info RAILS_ENV=production`)
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)