diff --git a/Gemfile b/Gemfile index e1ce9541b0e81887d6ac2dcae81c2687683beec0..2b35991d784207746b7bdecddeff4ea390c8d34a 100644 --- a/Gemfile +++ b/Gemfile @@ -654,7 +654,7 @@ gem 'valid_email', '~> 0.1' # rubocop:todo Gemfile/MissingFeatureCategory # JSON gem 'jsonb_accessor', '~> 1.3.10' # rubocop:todo Gemfile/MissingFeatureCategory gem 'json', '~> 2.7.2', feature_category: :shared -gem 'json_schemer', '~> 0.2.18' # rubocop:todo Gemfile/MissingFeatureCategory +gem 'json_schemer', '~> 2.3.0', feature_category: :shared gem 'oj', '~> 3.13.21' # rubocop:todo Gemfile/MissingFeatureCategory gem 'oj-introspect', '~> 0.7' # rubocop:todo Gemfile/MissingFeatureCategory gem 'multi_json', '~> 1.14.1' # rubocop:todo Gemfile/MissingFeatureCategory diff --git a/Gemfile.checksum b/Gemfile.checksum index 47d1c7e0e8eefded2981e354c65fe760f99297eb..ddd34a5c68c0e00b1a7165219ae2e14f82631494 100644 --- a/Gemfile.checksum +++ b/Gemfile.checksum @@ -140,7 +140,6 @@ {"name":"dumb_delegator","version":"1.0.0","platform":"ruby","checksum":"ff5e411816d2d8ad8e260b269e712ae3839dddb0f9f8e18d3b1a3fe08f6d2e94"}, {"name":"duo_api","version":"1.3.0","platform":"ruby","checksum":"87c9830e190fad32fdb086b023f555a3cf5cd4d6708a992f7a32efb2ce206176"}, {"name":"e2mmap","version":"0.1.0","platform":"ruby","checksum":"45ee6bba2d97a7d91ee0885774261feee87e28c598355df31e93b56196ec0f59"}, -{"name":"ecma-re-validator","version":"0.3.0","platform":"ruby","checksum":"66a95bd8c2b0641baf1fbf9bd355a0dcf13c82c6883f6f496a722420a8b6e0d7"}, {"name":"ed25519","version":"1.3.0","platform":"java","checksum":"8e5d2f8a5325c7a463d61d1a48406ce54074c610f3dccd889e6532c9527a3894"}, {"name":"ed25519","version":"1.3.0","platform":"ruby","checksum":"514a5584f84d39daac568a17ec93a4e7261e140c52c562ed8c382c18456e627d"}, {"name":"elasticsearch","version":"7.13.3","platform":"ruby","checksum":"58b1ad787fafd41836388176dc09e914b2f6e0b257e73b8a51a704ba6bf75b41"}, @@ -340,7 +339,7 @@ {"name":"json","version":"2.7.2","platform":"java","checksum":"138e3038b5361b3d06ee2e8aa2be00bed0d0de4ef5f1553fc5935e5b93aca7ee"}, {"name":"json","version":"2.7.2","platform":"ruby","checksum":"1898b5cbc81cd36c0fd4d0b7ad2682c39fb07c5ff682fc6265f678f550d4982c"}, {"name":"json-jwt","version":"1.15.3","platform":"ruby","checksum":"66db4f14e538a774c15502a5b5b26b1f3e7585481bbb96df490aa74b5c2d6110"}, -{"name":"json_schemer","version":"0.2.18","platform":"ruby","checksum":"3362c21efbefdd12ce994e541a1e7fdb86fd267a6541dd8715e8a580fe3b6be6"}, +{"name":"json_schemer","version":"2.3.0","platform":"ruby","checksum":"9f1fa173b859ca520f15e9e8d08b0892ffca80b78dd8221feb3e360ff4cdeb35"}, {"name":"jsonb_accessor","version":"1.3.10","platform":"java","checksum":"6630ac69dac46457b03e1352178ed3e2d7ba2d8edb99f2e9b64a0e60cda9ed26"}, {"name":"jsonb_accessor","version":"1.3.10","platform":"ruby","checksum":"670f80a257ae39e3be9233c6a8ef3b03517e06687affe510dfe61237454c58e0"}, {"name":"jsonpath","version":"1.1.2","platform":"ruby","checksum":"6804124c244d04418218acb85b15c7caa79c592d7d6970195300428458946d3a"}, @@ -670,6 +669,7 @@ {"name":"simplecov-html","version":"0.12.3","platform":"ruby","checksum":"4b1aad33259ffba8b29c6876c12db70e5750cb9df829486e4c6e5da4fa0aa07b"}, {"name":"simplecov-lcov","version":"0.8.0","platform":"ruby","checksum":"0115f31cb7ef5ec4334f5d9382c67fd43de2e5270e21b65bfc693da82dd713c1"}, {"name":"simplecov_json_formatter","version":"0.1.4","platform":"ruby","checksum":"529418fbe8de1713ac2b2d612aa3daa56d316975d307244399fa4838c601b428"}, +{"name":"simpleidn","version":"0.2.3","platform":"ruby","checksum":"08ce96f03fa1605286be22651ba0fc9c0b2d6272c9b27a260bc88be05b0d2c29"}, {"name":"singleton","version":"0.1.1","platform":"ruby","checksum":"b410b0417fcbb17bdfbc2d478ddba4c91e873d6e51c9d2d16b345c5ee5491c54"}, {"name":"sixarm_ruby_unaccent","version":"1.2.0","platform":"ruby","checksum":"0043a6077bdf2c4b03040152676a07f8bf77144f9b007b1960ee5c94d13a4384"}, {"name":"slack-messenger","version":"2.3.6","platform":"ruby","checksum":"58581e587debcbb769336cc7ebe4eb6ae411947fccf347e967a17ac9813e66d8"}, @@ -746,7 +746,6 @@ {"name":"unleash","version":"3.2.2","platform":"ruby","checksum":"0f6e56498de920de66a01bceffb93933693ade646bb853fc70eb16bd1026b93b"}, {"name":"unparser","version":"0.6.7","platform":"ruby","checksum":"ae42e73edfa273766e66c166368fb75ca5972cd8ec50c536253e0f6299a9dec8"}, {"name":"uri","version":"0.13.0","platform":"ruby","checksum":"26553c2a9399762e1e8bebd4444b4361c4b21298cf1c864b22eeabc9c4998f24"}, -{"name":"uri_template","version":"0.7.0","platform":"ruby","checksum":"312c8fe13700db86ac9d05ea997af3db03abdf50c65b1801d775bc7a695f185d"}, {"name":"valid_email","version":"0.1.3","platform":"ruby","checksum":"b81452b51b64c4beb67913f68db52c20ecb4d73d45512f5b282ab4a3f4416570"}, {"name":"validate_email","version":"0.1.6","platform":"ruby","checksum":"9dfe9016d527b17a8d3a6e95e4dc50a125400eef899d13d4cc2a254393f82ee4"}, {"name":"validate_url","version":"1.0.15","platform":"ruby","checksum":"72fe164c0713d63a9970bd6700bea948babbfbdcec392f2342b6704042f57451"}, diff --git a/Gemfile.lock b/Gemfile.lock index 0e77381d5ad755743c58fca2ce5c96348a4a79d8..86e45c0368cc51db174b41fbeef9296be9e8c82f 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -540,8 +540,6 @@ GEM dumb_delegator (1.0.0) duo_api (1.3.0) e2mmap (0.1.0) - ecma-re-validator (0.3.0) - regexp_parser (~> 2.0) ed25519 (1.3.0) elasticsearch (7.13.3) elasticsearch-api (= 7.13.3) @@ -1005,11 +1003,11 @@ GEM aes_key_wrap bindata httpclient - json_schemer (0.2.18) - ecma-re-validator (~> 0.3) + json_schemer (2.3.0) + bigdecimal hana (~> 1.3) regexp_parser (~> 2.0) - uri_template (~> 0.7) + simpleidn (~> 0.2) jsonb_accessor (1.3.10) activerecord (>= 5.0) activesupport (>= 5.0) @@ -1715,6 +1713,7 @@ GEM simplecov-html (0.12.3) simplecov-lcov (0.8.0) simplecov_json_formatter (0.1.4) + simpleidn (0.2.3) singleton (0.1.1) sixarm_ruby_unaccent (1.2.0) slack-messenger (2.3.6) @@ -1860,7 +1859,6 @@ GEM diff-lcs (~> 1.3) parser (>= 3.2.0) uri (0.13.0) - uri_template (0.7.0) valid_email (0.1.3) activemodel mail (>= 2.6.1) @@ -2101,7 +2099,7 @@ DEPENDENCIES jira-ruby (~> 2.3.0) js_regex (~> 3.8) json (~> 2.7.2) - json_schemer (~> 0.2.18) + json_schemer (~> 2.3.0) jsonb_accessor (~> 1.3.10) jwt (~> 2.5) kaminari (~> 1.2.2) diff --git a/ee/app/models/security/orchestration_policy_configuration.rb b/ee/app/models/security/orchestration_policy_configuration.rb index a993272a7e41abdcfd42a49a87c535125e4cc876..bc961c7fc4134ec23e4e1c96c212931a2e4b6cc8 100644 --- a/ee/app/models/security/orchestration_policy_configuration.rb +++ b/ee/app/models/security/orchestration_policy_configuration.rb @@ -22,7 +22,7 @@ class OrchestrationPolicyConfiguration < ApplicationRecord POLICY_SCHEMA = JSONSchemer.schema(Rails.root.join(POLICY_SCHEMA_PATH)) # json_schemer computes an $id fallback property for schemas lacking one. # But this schema is kept anonymous on purpose, so the $id is stripped. - POLICY_SCHEMA_JSON = POLICY_SCHEMA.as_json['root'].except('$id') + POLICY_SCHEMA_JSON = POLICY_SCHEMA.value.except('$id') AVAILABLE_POLICY_TYPES = (%i[scan_execution_policy pipeline_execution_policy] + Security::ScanResultPolicy::SCAN_RESULT_POLICY_TYPES).freeze JSON_SCHEMA_VALIDATION_TIMEOUT = 5.seconds