From 050d74b4beb0855466fa06335e1ec8f6f0bc9392 Mon Sep 17 00:00:00 2001 From: Adriaan de Groot Date: Wed, 12 Aug 2020 10:27:17 +0200 Subject: [PATCH] Fix YAML schemas for all the remaining config files --- src/modules/fstab/fstab.schema.yaml | 32 +++++++++------ src/modules/initcpio/initcpio.schema.yaml | 4 +- src/modules/license/license.schema.yaml | 24 ++++++----- .../luksopenswaphookcfg.schema.yaml | 3 +- src/modules/mount/mount.schema.yaml | 41 +++++++++++-------- .../plymouthcfg/plymouthcfg.schema.yaml | 2 +- src/modules/removeuser/removeuser.schema.yaml | 3 +- 7 files changed, 63 insertions(+), 46 deletions(-) diff --git a/src/modules/fstab/fstab.schema.yaml b/src/modules/fstab/fstab.schema.yaml index 1c2bf459c..5b54d767f 100644 --- a/src/modules/fstab/fstab.schema.yaml +++ b/src/modules/fstab/fstab.schema.yaml @@ -4,16 +4,22 @@ $id: https://calamares.io/schemas/fstab additionalProperties: false type: object properties: - "mountOptions": - type: map - mapping: - "default": { type: string, required: true } - "btrfs": { type: string, required: true } - "ssdExtraMountOptions": - type: map - mapping: - "ext4": { type: string, required: true } - "jfs": { type: string, required: true } - "xfs": { type: string, required: true } - "swap": { type: string, required: true } - "btrfs": { type: string, required: true } + mountOptions: + type: object + additionalProperties: true # we don't know which FS exist + properties: + default: { type: string } + btrfs: { type: string } + required: [ default ] + ssdExtraMountOptions: + type: object + additionalProperties: true # we don't know which FS exist + properties: + ext4: { type: string } + jfs: { type: string } + xfs: { type: string } + swap: { type: string } + btrfs: { type: string } + efiMountOptions: { type: string } + crypttabOptions: { type: string } +required: [ mountOptions ] diff --git a/src/modules/initcpio/initcpio.schema.yaml b/src/modules/initcpio/initcpio.schema.yaml index db81ba68e..d3fda6be0 100644 --- a/src/modules/initcpio/initcpio.schema.yaml +++ b/src/modules/initcpio/initcpio.schema.yaml @@ -4,4 +4,6 @@ $id: https://calamares.io/schemas/initcpio additionalProperties: false type: object properties: - kernel: { type: string, required: true } + kernel: { type: string } + be_unsafe: { type: boolean, default: false } +required: [ kernel ] diff --git a/src/modules/license/license.schema.yaml b/src/modules/license/license.schema.yaml index 62bd07035..090b2428e 100644 --- a/src/modules/license/license.schema.yaml +++ b/src/modules/license/license.schema.yaml @@ -4,14 +4,16 @@ $id: https://calamares.io/schemas/license additionalProperties: false type: object properties: - "entries": - type: seq - sequence: - - type: map - mapping: - "id": { type: str } - "name": { type: str } - "vendor": { type: str } - "type": { type: str } - "url": { type: str } - "required": { type: boolean, default: false } + entries: + type: array + items: + type: object + additionalProperties: false + properties: + id: { type: string } + name: { type: string } + vendor: { type: string } + type: { type: string } + url: { type: string } + required: { type: boolean, default: false } + expand: { type: boolean, default: false } diff --git a/src/modules/luksopenswaphookcfg/luksopenswaphookcfg.schema.yaml b/src/modules/luksopenswaphookcfg/luksopenswaphookcfg.schema.yaml index 660e06d0b..426822e27 100644 --- a/src/modules/luksopenswaphookcfg/luksopenswaphookcfg.schema.yaml +++ b/src/modules/luksopenswaphookcfg/luksopenswaphookcfg.schema.yaml @@ -4,4 +4,5 @@ $id: https://calamares.io/schemas/luksopenswaphookcfg additionalProperties: false type: object properties: - "configFilePath": { type: string, required: true } + configFilePath: { type: string } +required: [ configFilePath ] diff --git a/src/modules/mount/mount.schema.yaml b/src/modules/mount/mount.schema.yaml index 8a81d9462..55ee88644 100644 --- a/src/modules/mount/mount.schema.yaml +++ b/src/modules/mount/mount.schema.yaml @@ -4,21 +4,26 @@ $id: https://calamares.io/schemas/mount additionalProperties: false type: object properties: - "extraMounts": - type: seq - sequence: - - type: map - mapping: - "device": { type: string, required: true } - "fs": { type: str } - "mountPoint": { type: string, required: true } - "options": { type: str } - "extraMountsEfi": - type: seq - sequence: - - type: map - mapping: - "device": { type: string, required: true } - "fs": { type: str } - "mountPoint": { type: string, required: true } - "options": { type: str } + # TODO: share the schema definition, since these are identical + extraMounts: + type: array + items: + type: object + additionalProperties: false + properties: + device: { type: string } + fs: { type: string } + mountPoint: { type: string } + options: { type: string } + required: [ device, mountPoint ] + extraMountsEfi: + type: array + items: + type: object + additionalProperties: false + properties: + device: { type: string } + fs: { type: string } + mountPoint: { type: string } + options: { type: string } + required: [ device, mountPoint ] diff --git a/src/modules/plymouthcfg/plymouthcfg.schema.yaml b/src/modules/plymouthcfg/plymouthcfg.schema.yaml index b15db1527..5100e2cd3 100644 --- a/src/modules/plymouthcfg/plymouthcfg.schema.yaml +++ b/src/modules/plymouthcfg/plymouthcfg.schema.yaml @@ -4,4 +4,4 @@ $id: https://calamares.io/schemas/plymouthcfg additionalProperties: false type: object properties: - plymouth_theme: { type: str } + plymouth_theme: { type: string } diff --git a/src/modules/removeuser/removeuser.schema.yaml b/src/modules/removeuser/removeuser.schema.yaml index 7ed6cfbbe..d1fed47fe 100644 --- a/src/modules/removeuser/removeuser.schema.yaml +++ b/src/modules/removeuser/removeuser.schema.yaml @@ -4,4 +4,5 @@ $id: https://calamares.io/schemas/removeuser additionalProperties: false type: object properties: - "username": { type: string, required: true } + username: { type: string } +required: [ username ]