Hub: use anyOf for upload_options schema
It turned out, that the upload options for AWS EC2 or GCP with just the required properties specified, would match both schemas. This is causing the validation fail with `oneOf` used for `upload_options`. This will be fixed in osbuild-composer PR#3018. However, we can't use the same approach for koji-osbuild, while keeping the schema backward compatible and sane. Another discussed option would be to define `upload_options` as an empty object with `additionalProperties` set to `True`. This would effectively mean no validation of `upload_options`. None of the plugins actually modify the `upload_options` in any way. It is passed as provided to `osbuild-composer`. I think that the change in this commit is a compromise. The validation of the `upload_options` schema is kept, but it is relaxed to `anyOf`. [1] https://github.com/osbuild/osbuild-composer/pull/3018 Signed-off-by: Tomáš Hozza <thozza@redhat.com>
This commit is contained in:
parent
7ccd349999
commit
3d1c24fdc0
1 changed files with 3 additions and 1 deletions
|
|
@ -112,7 +112,9 @@ OSBUILD_IMAGE_SCHEMA = {
|
|||
"$ref": "#/definitions/ostree"
|
||||
},
|
||||
"upload_options": {
|
||||
"oneOf": [
|
||||
# this should be really 'oneOf', but the minimal required
|
||||
# properties in AWSEC2 and GCP options overlap.
|
||||
"anyOf": [
|
||||
{"$ref": "#/definitions/AWSEC2UploadOptions"},
|
||||
{"$ref": "#/definitions/AWSS3UploadOptions"},
|
||||
{"$ref": "#/definitions/GCPUploadOptions"},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue