kvm-test: allow kvm-test.yaml to add/modify profiles
Signed-off-by: Olivier Gayot <olivier.gayot@canonical.com>
This commit is contained in:
parent
de4e126087
commit
afd6fca8b4
|
@ -39,6 +39,15 @@ iso:
|
||||||
focal: focal/ubuntu-20.04.3-live-server-amd64.iso
|
focal: focal/ubuntu-20.04.3-live-server-amd64.iso
|
||||||
bionic: bionic/bionic-live-server-amd64.iso
|
bionic: bionic/bionic-live-server-amd64.iso
|
||||||
default: edge
|
default: edge
|
||||||
|
profiles:
|
||||||
|
server:
|
||||||
|
memory: 2G
|
||||||
|
disk-size: 12G
|
||||||
|
extra-qemu-options: []
|
||||||
|
desktop:
|
||||||
|
memory: 8G
|
||||||
|
disk-size: 20G
|
||||||
|
extra-qemu-options: [-device, qxl, -smp, "2"]
|
||||||
'''
|
'''
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,13 +58,11 @@ class Profile:
|
||||||
disk_size: str
|
disk_size: str
|
||||||
extra_qemu_options: list[str]
|
extra_qemu_options: list[str]
|
||||||
|
|
||||||
|
@classmethod
|
||||||
profiles = {
|
def from_config(cls, name, props) -> 'Profile':
|
||||||
|
return Profile(name=name, memory=props['memory'],
|
||||||
'server': Profile(name='server', memory='2G', disk_size='12G', extra_qemu_options=[]),
|
disk_size=props['disk-size'],
|
||||||
'desktop': Profile(name='desktop', memory='8G', disk_size='20G',
|
extra_qemu_options=props['extra-qemu-options'])
|
||||||
extra_qemu_options=['-device', 'qxl', '-smp', '2']),
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
def salted_crypt(plaintext_password):
|
def salted_crypt(plaintext_password):
|
||||||
|
@ -74,6 +81,9 @@ class Context:
|
||||||
self.config = self.load_config()
|
self.config = self.load_config()
|
||||||
self.args = args
|
self.args = args
|
||||||
self.release = args.release
|
self.release = args.release
|
||||||
|
profiles: dict[str, Profile] = {}
|
||||||
|
for profile_name, profile_props in self.config["profiles"].items():
|
||||||
|
profiles[profile_name] = Profile.from_config(profile_name, profile_props)
|
||||||
self.default_mem = profiles[self.args.profile].memory
|
self.default_mem = profiles[self.args.profile].memory
|
||||||
self.default_disk_size = profiles[self.args.profile].disk_size
|
self.default_disk_size = profiles[self.args.profile].disk_size
|
||||||
self.qemu_extra_options = profiles[self.args.profile].extra_qemu_options
|
self.qemu_extra_options = profiles[self.args.profile].extra_qemu_options
|
||||||
|
|
Loading…
Reference in New Issue