cloudapi: add new Disk customizations

Following up from #4535 which added support for advanced partitioning
customizations to the blueprint.
These are now added to the cloud api spec.
This commit is contained in:
Achilleas Koutsou 2025-03-17 13:52:19 +01:00 committed by Sanne Raymaekers
parent 330ce26715
commit 1a65e573eb
2 changed files with 577 additions and 201 deletions

View file

@ -37,6 +37,11 @@ const (
BlueprintCustomizationsPartitioningModeRaw BlueprintCustomizationsPartitioningMode = "raw"
)
// Defines values for BtrfsVolumeType.
const (
Btrfs BtrfsVolumeType = "btrfs"
)
// Defines values for ComposeStatusValue.
const (
ComposeStatusValueFailure ComposeStatusValue = "failure"
@ -51,6 +56,24 @@ const (
CustomizationsPartitioningModeRaw CustomizationsPartitioningMode = "raw"
)
// Defines values for DiskType.
const (
Dos DiskType = "dos"
Gpt DiskType = "gpt"
)
// Defines values for FilesystemTypedFsType.
const (
FilesystemTypedFsTypeExt4 FilesystemTypedFsType = "ext4"
FilesystemTypedFsTypeVfat FilesystemTypedFsType = "vfat"
FilesystemTypedFsTypeXfs FilesystemTypedFsType = "xfs"
)
// Defines values for FilesystemTypedType.
const (
Plain FilesystemTypedType = "plain"
)
// Defines values for ImageSBOMPipelinePurpose.
const (
Buildroot ImageSBOMPipelinePurpose = "buildroot"
@ -103,6 +126,13 @@ const (
ImageTypesWsl ImageTypes = "wsl"
)
// Defines values for LogicalVolumeFsType.
const (
LogicalVolumeFsTypeExt4 LogicalVolumeFsType = "ext4"
LogicalVolumeFsTypeVfat LogicalVolumeFsType = "vfat"
LogicalVolumeFsTypeXfs LogicalVolumeFsType = "xfs"
)
// Defines values for UploadStatusValue.
const (
Failure UploadStatusValue = "failure"
@ -123,6 +153,11 @@ const (
UploadTypesPulpOstree UploadTypes = "pulp.ostree"
)
// Defines values for VolumeGroupType.
const (
Lvm VolumeGroupType = "lvm"
)
// AWSEC2CloneCompose defines model for AWSEC2CloneCompose.
type AWSEC2CloneCompose struct {
Region string `json:"region"`
@ -229,6 +264,7 @@ type BlueprintCustomizations struct {
// Directories Directories to create in the final artifact
Directories *[]Directory `json:"directories,omitempty"`
Disk *Disk `json:"disk,omitempty"`
// Fdo FIDO device onboard configuration
Fdo *FDO `json:"fdo,omitempty"`
@ -409,6 +445,29 @@ type BlueprintUser struct {
Uid *int `json:"uid,omitempty"`
}
// BtrfsSubvolume defines model for BtrfsSubvolume.
type BtrfsSubvolume struct {
// Mountpoint Mountpoint for the subvolume
Mountpoint string `json:"mountpoint"`
// Name The name of the subvolume, which defines the location (path) on the root volume
Name string `json:"name"`
}
// BtrfsVolume defines model for BtrfsVolume.
type BtrfsVolume struct {
// Minsize minimum size of the btrfs volume in bytes
Minsize *uint64 `json:"minsize,omitempty"`
// PartType The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
PartType *string `json:"part_type,omitempty"`
Subvolumes []BtrfsSubvolume `json:"subvolumes"`
Type *BtrfsVolumeType `json:"type,omitempty"`
}
// BtrfsVolumeType defines model for BtrfsVolume.Type.
type BtrfsVolumeType string
// CACertsCustomization defines model for CACertsCustomization.
type CACertsCustomization struct {
PemCerts []string `json:"pem_certs"`
@ -587,6 +646,7 @@ type Customizations struct {
// on the image
CustomRepositories *[]CustomRepository `json:"custom_repositories,omitempty"`
Directories *[]Directory `json:"directories,omitempty"`
Disk *Disk `json:"disk,omitempty"`
EnabledModules *[]Module `json:"enabled_modules,omitempty"`
// Fdo FIDO device onboard configuration
@ -706,6 +766,19 @@ type Directory_User struct {
union json.RawMessage
}
// Disk defines model for Disk.
type Disk struct {
// Minsize size of the filesystem in bytes
Minsize *uint64 `json:"minsize,omitempty"`
Partitions []Partition `json:"partitions"`
// Type Type of the partition table
Type *DiskType `json:"type,omitempty"`
}
// DiskType Type of the partition table
type DiskType string
// DistributionList Map of distributions to their architecture.
type DistributionList map[string]map[string][]BlueprintRepository
@ -794,6 +867,27 @@ type Filesystem struct {
Mountpoint string `json:"mountpoint"`
}
// FilesystemTyped defines model for FilesystemTyped.
type FilesystemTyped struct {
// FsType The filesystem type
FsType *FilesystemTypedFsType `json:"fs_type,omitempty"`
Label *string `json:"label,omitempty"`
// Minsize minimum size of the filesystem in bytes
Minsize *uint64 `json:"minsize,omitempty"`
Mountpoint string `json:"mountpoint"`
// PartType The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
PartType *string `json:"part_type,omitempty"`
Type *FilesystemTypedType `json:"type,omitempty"`
}
// FilesystemTypedFsType The filesystem type
type FilesystemTypedFsType string
// FilesystemTypedType defines model for FilesystemTyped.Type.
type FilesystemTypedType string
// FirewallCustomization Firewalld configuration
type FirewallCustomization struct {
// Ports List of ports (or port ranges) and protocols to open
@ -1022,6 +1116,23 @@ type Locale struct {
Languages *[]string `json:"languages,omitempty"`
}
// LogicalVolume defines model for LogicalVolume.
type LogicalVolume struct {
// FsType The filesystem type for the logical volume
FsType *LogicalVolumeFsType `json:"fs_type,omitempty"`
Label *string `json:"label,omitempty"`
// Minsize minimum size of the logical volume in bytes
Minsize *uint64 `json:"minsize,omitempty"`
// Mountpoint Mountpoint for the logical volume
Mountpoint string `json:"mountpoint"`
Name *string `json:"name,omitempty"`
}
// LogicalVolumeFsType The filesystem type for the logical volume
type LogicalVolumeFsType string
// Module defines model for Module.
type Module struct {
// Name Name of the module to enable.
@ -1147,6 +1258,11 @@ type PackageMetadataCommon struct {
Version string `json:"version"`
}
// Partition defines model for Partition.
type Partition struct {
union json.RawMessage
}
// PulpOSTreeUploadOptions defines model for PulpOSTreeUploadOptions.
type PulpOSTreeUploadOptions struct {
// Basepath Basepath for distributing the repository
@ -1340,6 +1456,24 @@ type User struct {
Password *string `json:"password,omitempty"`
}
// VolumeGroup defines model for VolumeGroup.
type VolumeGroup struct {
LogicalVolumes []LogicalVolume `json:"logical_volumes"`
// Minsize minimum size of the volume group in bytes
Minsize *uint64 `json:"minsize,omitempty"`
// Name Volume group name (will be automatically generated if omitted)
Name *string `json:"name,omitempty"`
// PartType The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
PartType *string `json:"part_type,omitempty"`
Type *VolumeGroupType `json:"type,omitempty"`
}
// VolumeGroupType defines model for VolumeGroup.Type.
type VolumeGroupType string
// Page defines model for page.
type Page = string
@ -1993,6 +2127,94 @@ func (t *File_User) UnmarshalJSON(b []byte) error {
return err
}
// AsFilesystemTyped returns the union data inside the Partition as a FilesystemTyped
func (t Partition) AsFilesystemTyped() (FilesystemTyped, error) {
var body FilesystemTyped
err := json.Unmarshal(t.union, &body)
return body, err
}
// FromFilesystemTyped overwrites any union data inside the Partition as the provided FilesystemTyped
func (t *Partition) FromFilesystemTyped(v FilesystemTyped) error {
b, err := json.Marshal(v)
t.union = b
return err
}
// MergeFilesystemTyped performs a merge with any union data inside the Partition, using the provided FilesystemTyped
func (t *Partition) MergeFilesystemTyped(v FilesystemTyped) error {
b, err := json.Marshal(v)
if err != nil {
return err
}
merged, err := runtime.JSONMerge(t.union, b)
t.union = merged
return err
}
// AsBtrfsVolume returns the union data inside the Partition as a BtrfsVolume
func (t Partition) AsBtrfsVolume() (BtrfsVolume, error) {
var body BtrfsVolume
err := json.Unmarshal(t.union, &body)
return body, err
}
// FromBtrfsVolume overwrites any union data inside the Partition as the provided BtrfsVolume
func (t *Partition) FromBtrfsVolume(v BtrfsVolume) error {
b, err := json.Marshal(v)
t.union = b
return err
}
// MergeBtrfsVolume performs a merge with any union data inside the Partition, using the provided BtrfsVolume
func (t *Partition) MergeBtrfsVolume(v BtrfsVolume) error {
b, err := json.Marshal(v)
if err != nil {
return err
}
merged, err := runtime.JSONMerge(t.union, b)
t.union = merged
return err
}
// AsVolumeGroup returns the union data inside the Partition as a VolumeGroup
func (t Partition) AsVolumeGroup() (VolumeGroup, error) {
var body VolumeGroup
err := json.Unmarshal(t.union, &body)
return body, err
}
// FromVolumeGroup overwrites any union data inside the Partition as the provided VolumeGroup
func (t *Partition) FromVolumeGroup(v VolumeGroup) error {
b, err := json.Marshal(v)
t.union = b
return err
}
// MergeVolumeGroup performs a merge with any union data inside the Partition, using the provided VolumeGroup
func (t *Partition) MergeVolumeGroup(v VolumeGroup) error {
b, err := json.Marshal(v)
if err != nil {
return err
}
merged, err := runtime.JSONMerge(t.union, b)
t.union = merged
return err
}
func (t Partition) MarshalJSON() ([]byte, error) {
b, err := t.union.MarshalJSON()
return b, err
}
func (t *Partition) UnmarshalJSON(b []byte) error {
err := t.union.UnmarshalJSON(b)
return err
}
// AsAWSEC2UploadOptions returns the union data inside the UploadOptions as a AWSEC2UploadOptions
func (t UploadOptions) AsAWSEC2UploadOptions() (AWSEC2UploadOptions, error) {
var body AWSEC2UploadOptions
@ -2783,207 +3005,215 @@ func RegisterHandlersWithBaseURL(router EchoRouter, si ServerInterface, baseURL
// Base64 encoded, gzipped, json marshaled Swagger object
var swaggerSpec = []string{
"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",
"1IWqTKCeZt04X7///wAAAP//wpER3BXpAAA=",
"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",
}
// GetSwagger returns the content of the embedded swagger specification file

View file

@ -1729,6 +1729,8 @@ components:
description: List of filesystem mountpoints to create
items:
$ref: '#/components/schemas/BlueprintFilesystem'
disk:
$ref: '#/components/schemas/Disk'
installation_device:
type: string
description: |
@ -1951,6 +1953,8 @@ components:
$ref: '#/components/schemas/RHSMCustomization'
cacerts:
$ref: '#/components/schemas/CACertsCustomization'
disk:
$ref: '#/components/schemas/Disk'
Container:
type: object
required:
@ -2582,6 +2586,148 @@ components:
license:
type: string
Disk:
type: object
required:
- partitions
properties:
type:
type: string
enum:
- gpt
- dos
description: |
Type of the partition table
minsize:
x-go-type: uint64
example: 2147483648
description: 'size of the filesystem in bytes'
partitions:
type: array
items:
$ref: '#/components/schemas/Partition'
Partition:
type: object
oneOf:
- $ref: '#/components/schemas/FilesystemTyped'
- $ref: '#/components/schemas/BtrfsVolume'
- $ref: '#/components/schemas/VolumeGroup'
FilesystemTyped:
type: object
required:
- mountpoint
properties:
type:
type: string
default: plain
enum:
- plain
part_type:
type: string
description: |
The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
minsize:
x-go-type: uint64
example: 2147483648
description: 'minimum size of the filesystem in bytes'
mountpoint:
type: string
label:
type: string
fs_type:
type: string
enum:
- ext4
- xfs
- vfat
description: |
The filesystem type
BtrfsVolume:
type: object
required:
- subvolumes
properties:
type:
type: string
enum:
- btrfs
part_type:
type: string
description: |
The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
minsize:
x-go-type: uint64
example: 2147483648
description: 'minimum size of the btrfs volume in bytes'
subvolumes:
type: array
items:
$ref: '#/components/schemas/BtrfsSubvolume'
BtrfsSubvolume:
type: object
required:
- name
- mountpoint
properties:
name:
type: string
description: |
The name of the subvolume, which defines the location (path) on the root volume
mountpoint:
type: string
description: |
Mountpoint for the subvolume
VolumeGroup:
type: object
required:
- logical_volumes
properties:
type:
type: string
enum:
- lvm
part_type:
type: string
description: |
The partition type GUID for GPT partitions. For DOS partitions, this field can be used to set the (2 hex digit) partition type. If not set, the type will be automatically set based on the mountpoint or the payload type.
name:
type: string
description: |
Volume group name (will be automatically generated if omitted)
minsize:
x-go-type: uint64
example: 2147483648
description: 'minimum size of the volume group in bytes'
logical_volumes:
type: array
items:
$ref: '#/components/schemas/LogicalVolume'
LogicalVolume:
type: object
required:
- mountpoint
properties:
name:
type: string
minsize:
x-go-type: uint64
example: 2147483648
description: 'minimum size of the logical volume in bytes'
mountpoint:
type: string
description: |
Mountpoint for the logical volume
label:
type: string
fs_type:
type: string
enum:
- ext4
- xfs
- vfat
description: |
The filesystem type for the logical volume
parameters:
page:
name: page