Add attributes for base_os and kernel selection and custom kernel
params to HostProfile Add attribute for defining the primary interface (i.e. default route) for a node.
This commit is contained in:
parent
7760769b25
commit
595f3d9fc3
@ -48,6 +48,9 @@ class HostProfile(base.DrydockPersistentObject, base.DrydockObject):
|
|||||||
'tags': obj_fields.ListOfStringsField(nullable=True),
|
'tags': obj_fields.ListOfStringsField(nullable=True),
|
||||||
'owner_data': obj_fields.DictOfStringsField(nullable=True),
|
'owner_data': obj_fields.DictOfStringsField(nullable=True),
|
||||||
'rack': obj_fields.StringField(nullable=True),
|
'rack': obj_fields.StringField(nullable=True),
|
||||||
|
'base_os': obj_fields.StringField(nullable=True),
|
||||||
|
'kernel': obj_fields.StringField(nullable=True),
|
||||||
|
'kernel_params': obj_fields.StringField(nullable=True),
|
||||||
}
|
}
|
||||||
|
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
@ -87,10 +90,10 @@ class HostProfile(base.DrydockPersistentObject, base.DrydockObject):
|
|||||||
|
|
||||||
# First compute inheritance for simple fields
|
# First compute inheritance for simple fields
|
||||||
inheritable_field_list = [
|
inheritable_field_list = [
|
||||||
"hardware_profile", "oob_type", "oob_network",
|
'hardware_profile', 'oob_type', 'oob_network',
|
||||||
"oob_credential", "oob_account", "storage_layout",
|
'oob_credential', 'oob_account', 'storage_layout',
|
||||||
"bootdisk_device", "bootdisk_root_size", "bootdisk_boot_size",
|
'bootdisk_device', 'bootdisk_root_size', 'bootdisk_boot_size',
|
||||||
"rack"]
|
'rack', 'base_os', 'kernel', 'kernel_params']
|
||||||
|
|
||||||
# Create applied data from self design values and parent
|
# Create applied data from self design values and parent
|
||||||
# applied values
|
# applied values
|
||||||
@ -131,6 +134,7 @@ class HostInterface(base.DrydockObject):
|
|||||||
|
|
||||||
fields = {
|
fields = {
|
||||||
'device_name': obj_fields.StringField(),
|
'device_name': obj_fields.StringField(),
|
||||||
|
'primary_network': obj_fields.BooleanField(nullable=False, default=False),
|
||||||
'source': hd_fields.ModelSourceField(),
|
'source': hd_fields.ModelSourceField(),
|
||||||
'network_link': obj_fields.StringField(nullable=True),
|
'network_link': obj_fields.StringField(nullable=True),
|
||||||
'hardware_slaves': obj_fields.ListOfStringsField(nullable=True),
|
'hardware_slaves': obj_fields.ListOfStringsField(nullable=True),
|
||||||
@ -208,6 +212,11 @@ class HostInterface(base.DrydockObject):
|
|||||||
elif j.get_name() == parent_name:
|
elif j.get_name() == parent_name:
|
||||||
m = objects.HostInterface()
|
m = objects.HostInterface()
|
||||||
m.device_name = j.get_name()
|
m.device_name = j.get_name()
|
||||||
|
m.primary_network =
|
||||||
|
objects.Util.apply_field_inheritance(
|
||||||
|
getattr(j, 'primary_network', None),
|
||||||
|
getattr(i, 'primary_network', None))
|
||||||
|
|
||||||
m.network_link = \
|
m.network_link = \
|
||||||
objects.Utils.apply_field_inheritance(
|
objects.Utils.apply_field_inheritance(
|
||||||
getattr(j, 'network_link', None),
|
getattr(j, 'network_link', None),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user