fedora: add ova image type

This commit is contained in:
Sanne Raymaekers 2023-04-03 15:33:47 +02:00
parent a7c02245ee
commit e91dcae110
2 changed files with 49 additions and 9 deletions

View file

@ -231,6 +231,16 @@ var (
environment: &environment.Azure{},
}
vmdkDefaultImageConfig = &distro.ImageConfig{
Locale: common.ToPtr("en_US.UTF-8"),
EnabledServices: []string{
"cloud-init.service",
"cloud-config.service",
"cloud-final.service",
"cloud-init-local.service",
},
}
vmdkImgType = imageType{
name: "vmdk",
filename: "disk.vmdk",
@ -238,15 +248,7 @@ var (
packageSets: map[string]packageSetFunc{
osPkgsKey: vmdkCommonPackageSet,
},
defaultImageConfig: &distro.ImageConfig{
Locale: common.ToPtr("en_US.UTF-8"),
EnabledServices: []string{
"cloud-init.service",
"cloud-config.service",
"cloud-final.service",
"cloud-init-local.service",
},
},
defaultImageConfig: vmdkDefaultImageConfig,
kernelOptions: defaultKernelOptions,
bootable: true,
defaultSize: 2 * common.GibiByte,
@ -257,6 +259,24 @@ var (
basePartitionTables: defaultBasePartitionTables,
}
ovaImgType = imageType{
name: "ova",
filename: "image.ova",
mimeType: "application/ovf",
packageSets: map[string]packageSetFunc{
osPkgsKey: vmdkCommonPackageSet,
},
defaultImageConfig: vmdkDefaultImageConfig,
kernelOptions: defaultKernelOptions,
bootable: true,
defaultSize: 2 * common.GibiByte,
image: liveImage,
buildPipelines: []string{"build"},
payloadPipelines: []string{"os", "image", "vmdk", "ovf", "archive"},
exports: []string{"archive"},
basePartitionTables: defaultBasePartitionTables,
}
openstackImgType = imageType{
name: "openstack",
filename: "disk.qcow2",
@ -946,6 +966,16 @@ func newDistro(version int) distro.Distro {
},
vmdkImgType,
)
x86_64.addImageTypes(
&platform.X86{
BIOS: true,
UEFIVendor: "fedora",
BasePlatform: platform.BasePlatform{
ImageFormat: platform.FORMAT_OVA,
},
},
ovaImgType,
)
x86_64.addImageTypes(
&platform.X86{
BIOS: true,

View file

@ -92,6 +92,14 @@ func TestFilenameFromType(t *testing.T) {
mimeType: "application/x-vmdk",
},
},
{
name: "ova",
args: args{"ova"},
want: wantResult{
filename: "image.ova",
mimeType: "application/ovf",
},
},
{
name: "container",
args: args{"container"},
@ -268,6 +276,7 @@ func TestImageType_Name(t *testing.T) {
"openstack",
"vhd",
"vmdk",
"ova",
"ami",
"iot-commit",
"iot-container",
@ -446,6 +455,7 @@ func TestArchitecture_ListImageTypes(t *testing.T) {
"openstack",
"vhd",
"vmdk",
"ova",
"ami",
"iot-commit",
"iot-container",