diff --git a/ee/app/assets/javascripts/security_orchestration/components/branch_exception_selector.vue b/ee/app/assets/javascripts/security_orchestration/components/branch_exception_selector.vue new file mode 100644 index 0000000000000000000000000000000000000000..27a5347413f4d1aa20c5081756cd0f8b6992703c --- /dev/null +++ b/ee/app/assets/javascripts/security_orchestration/components/branch_exception_selector.vue @@ -0,0 +1,75 @@ + + + diff --git a/ee/app/assets/javascripts/security_orchestration/components/constants.js b/ee/app/assets/javascripts/security_orchestration/components/constants.js index 86d42ac3c055e670b975d274a7b8d610e89fbeec..48d7a58bfa77b33113a1773146e12920df2655ac 100644 --- a/ee/app/assets/javascripts/security_orchestration/components/constants.js +++ b/ee/app/assets/javascripts/security_orchestration/components/constants.js @@ -20,3 +20,16 @@ export const POLICY_TYPE_COMPONENT_OPTIONS = { }; export const POLICIES_LIST_CONTAINER_CLASS = '.js-security-policies-container-wrapper'; + +export const EXCEPTION_KEY = 'exception'; +export const NO_EXCEPTION_KEY = 'no_exception'; +export const EXCEPTION_TYPE_ITEMS = [ + { + value: EXCEPTION_KEY, + text: s__('SecurityOrchestration|Exceptions'), + }, + { + value: NO_EXCEPTION_KEY, + text: s__('SecurityOrchestration|No exceptions'), + }, +]; diff --git a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/constants.js b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/constants.js index 64b3aac3218013d6aa892bfc809472f33ef39254..c30f731832c318a8960b310c85bf6027a4b0fb01 100644 --- a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/constants.js +++ b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/constants.js @@ -157,6 +157,7 @@ export const VALID_SCAN_RESULT_BRANCH_TYPE_OPTIONS = [ export const BRANCHES_KEY = 'branches'; export const BRANCH_TYPE_KEY = 'branch_type'; +export const BRANCH_EXCEPTIONS_KEY = 'branch_exceptions'; export const HUMANIZED_BRANCH_TYPE_TEXT_DICT = { [ALL_BRANCHES.value]: s__('SecurityOrchestration|any branch'), diff --git a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/lib/from_yaml.js b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/lib/from_yaml.js index 7baf940d379cbd7847b984c7fd6545fafbe51a9e..57fffb4bc59d43f2876b28b8a6aec0a6510fa962 100644 --- a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/lib/from_yaml.js +++ b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/lib/from_yaml.js @@ -19,6 +19,7 @@ export const fromYaml = ({ manifest, validateRuleMode = false }) => { 'type', 'branches', 'branch_type', + 'branch_exceptions', 'license_states', 'license_types', 'match_on_inclusion', diff --git a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/license_scan_rule_builder.vue b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/license_scan_rule_builder.vue index ccafe61cc4c1d0689b75986f34e21c84e6d72998..766b1b7817d3265782804de7ce3c17876286b617 100644 --- a/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/license_scan_rule_builder.vue +++ b/ee/app/assets/javascripts/security_orchestration/components/policy_editor/scan_result_policy/license_scan_rule_builder.vue @@ -1,8 +1,11 @@