Docker volume size from nodegroups
Docker volume size as well as volume env files should be fetched based on the nodegroup and not the cluster. story: 2006701 task: 37008 Change-Id: Ia9e7f4612f36f4e57626b2e931b84898523e9ccb
This commit is contained in:
parent
94caaaa344
commit
37c61fa2f8
@ -31,8 +31,6 @@ class CoreOSK8sTemplateDefinition(k8s_template_def.K8sTemplateDefinition):
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(CoreOSK8sTemplateDefinition, self).__init__()
|
super(CoreOSK8sTemplateDefinition, self).__init__()
|
||||||
self.add_parameter('docker_volume_size',
|
|
||||||
cluster_attr='docker_volume_size')
|
|
||||||
self.add_parameter('docker_storage_driver',
|
self.add_parameter('docker_storage_driver',
|
||||||
cluster_template_attr='docker_storage_driver')
|
cluster_template_attr='docker_storage_driver')
|
||||||
|
|
||||||
@ -90,13 +88,14 @@ class CoreOSK8sTemplateDefinition(k8s_template_def.K8sTemplateDefinition):
|
|||||||
extra_params=extra_params,
|
extra_params=extra_params,
|
||||||
**kwargs)
|
**kwargs)
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
env_files = []
|
env_files = []
|
||||||
|
|
||||||
template_def.add_priv_net_env_file(env_files, cluster_template,
|
template_def.add_priv_net_env_file(env_files, cluster_template,
|
||||||
cluster)
|
cluster)
|
||||||
template_def.add_etcd_volume_env_file(env_files, cluster)
|
template_def.add_etcd_volume_env_file(env_files, cluster)
|
||||||
template_def.add_volume_env_file(env_files, cluster)
|
template_def.add_volume_env_file(env_files, cluster,
|
||||||
|
nodegroup=nodegroup)
|
||||||
template_def.add_lb_env_file(env_files, cluster_template)
|
template_def.add_lb_env_file(env_files, cluster_template)
|
||||||
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
||||||
|
|
||||||
|
@ -35,8 +35,6 @@ class K8sFedoraTemplateDefinition(k8s_template_def.K8sTemplateDefinition):
|
|||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
super(K8sFedoraTemplateDefinition, self).__init__()
|
super(K8sFedoraTemplateDefinition, self).__init__()
|
||||||
self.add_parameter('docker_volume_size',
|
|
||||||
cluster_attr='docker_volume_size')
|
|
||||||
self.add_parameter('docker_storage_driver',
|
self.add_parameter('docker_storage_driver',
|
||||||
cluster_template_attr='docker_storage_driver')
|
cluster_template_attr='docker_storage_driver')
|
||||||
|
|
||||||
@ -196,13 +194,14 @@ class K8sFedoraTemplateDefinition(k8s_template_def.K8sTemplateDefinition):
|
|||||||
'boot_volume_size', CONF.cinder.default_boot_volume_size)
|
'boot_volume_size', CONF.cinder.default_boot_volume_size)
|
||||||
extra_params['boot_volume_size'] = boot_volume_size
|
extra_params['boot_volume_size'] = boot_volume_size
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
env_files = []
|
env_files = []
|
||||||
|
|
||||||
template_def.add_priv_net_env_file(env_files, cluster_template,
|
template_def.add_priv_net_env_file(env_files, cluster_template,
|
||||||
cluster)
|
cluster)
|
||||||
template_def.add_etcd_volume_env_file(env_files, cluster)
|
template_def.add_etcd_volume_env_file(env_files, cluster)
|
||||||
template_def.add_volume_env_file(env_files, cluster)
|
template_def.add_volume_env_file(env_files, cluster,
|
||||||
|
nodegroup=nodegroup)
|
||||||
template_def.add_lb_env_file(env_files, cluster_template)
|
template_def.add_lb_env_file(env_files, cluster_template)
|
||||||
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
||||||
|
|
||||||
|
@ -128,6 +128,7 @@ class K8sTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
'master_image': 'image_id',
|
'master_image': 'image_id',
|
||||||
'master_role': 'role',
|
'master_role': 'role',
|
||||||
'master_nodegroup_name': 'name',
|
'master_nodegroup_name': 'name',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
worker_params.update({
|
worker_params.update({
|
||||||
'number_of_minions': 'node_count',
|
'number_of_minions': 'node_count',
|
||||||
@ -135,6 +136,7 @@ class K8sTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
'minion_image': 'image_id',
|
'minion_image': 'image_id',
|
||||||
'worker_role': 'role',
|
'worker_role': 'role',
|
||||||
'worker_nodegroup_name': 'name',
|
'worker_nodegroup_name': 'name',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
return super(
|
return super(
|
||||||
K8sTemplateDefinition, self).get_nodegroup_param_maps(
|
K8sTemplateDefinition, self).get_nodegroup_param_maps(
|
||||||
|
@ -45,8 +45,6 @@ class SwarmFedoraTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
self.add_parameter('cluster_uuid',
|
self.add_parameter('cluster_uuid',
|
||||||
cluster_attr='uuid',
|
cluster_attr='uuid',
|
||||||
param_type=str)
|
param_type=str)
|
||||||
self.add_parameter('docker_volume_size',
|
|
||||||
cluster_attr='docker_volume_size')
|
|
||||||
self.add_parameter('volume_driver',
|
self.add_parameter('volume_driver',
|
||||||
cluster_template_attr='volume_driver')
|
cluster_template_attr='volume_driver')
|
||||||
self.add_parameter('external_network',
|
self.add_parameter('external_network',
|
||||||
@ -83,12 +81,14 @@ class SwarmFedoraTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
worker_params = worker_params or dict()
|
worker_params = worker_params or dict()
|
||||||
master_params.update({
|
master_params.update({
|
||||||
'master_flavor': 'flavor_id',
|
'master_flavor': 'flavor_id',
|
||||||
'master_image': 'image_id'
|
'master_image': 'image_id',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
worker_params.update({
|
worker_params.update({
|
||||||
'number_of_nodes': 'node_count',
|
'number_of_nodes': 'node_count',
|
||||||
'node_flavor': 'flavor_id',
|
'node_flavor': 'flavor_id',
|
||||||
'node_image': 'image_id'
|
'node_image': 'image_id',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
return super(
|
return super(
|
||||||
SwarmFedoraTemplateDefinition, self).get_nodegroup_param_maps(
|
SwarmFedoraTemplateDefinition, self).get_nodegroup_param_maps(
|
||||||
@ -156,12 +156,13 @@ class SwarmFedoraTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
extra_params=extra_params,
|
extra_params=extra_params,
|
||||||
**kwargs)
|
**kwargs)
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
env_files = []
|
env_files = []
|
||||||
|
|
||||||
template_def.add_priv_net_env_file(env_files, cluster_template,
|
template_def.add_priv_net_env_file(env_files, cluster_template,
|
||||||
cluster)
|
cluster)
|
||||||
template_def.add_volume_env_file(env_files, cluster)
|
template_def.add_volume_env_file(env_files, cluster,
|
||||||
|
nodegroup=nodegroup)
|
||||||
template_def.add_lb_env_file(env_files, cluster_template)
|
template_def.add_lb_env_file(env_files, cluster_template)
|
||||||
|
|
||||||
return env_files
|
return env_files
|
||||||
|
@ -92,8 +92,6 @@ class SwarmModeTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
self.add_parameter('cluster_uuid',
|
self.add_parameter('cluster_uuid',
|
||||||
cluster_attr='uuid',
|
cluster_attr='uuid',
|
||||||
param_type=str)
|
param_type=str)
|
||||||
self.add_parameter('docker_volume_size',
|
|
||||||
cluster_attr='docker_volume_size')
|
|
||||||
self.add_parameter('volume_driver',
|
self.add_parameter('volume_driver',
|
||||||
cluster_template_attr='volume_driver')
|
cluster_template_attr='volume_driver')
|
||||||
self.add_parameter('external_network',
|
self.add_parameter('external_network',
|
||||||
@ -148,12 +146,14 @@ class SwarmModeTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
worker_params = worker_params or dict()
|
worker_params = worker_params or dict()
|
||||||
master_params.update({
|
master_params.update({
|
||||||
'master_flavor': 'flavor_id',
|
'master_flavor': 'flavor_id',
|
||||||
'master_image': 'image_id'
|
'master_image': 'image_id',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
worker_params.update({
|
worker_params.update({
|
||||||
'number_of_nodes': 'node_count',
|
'number_of_nodes': 'node_count',
|
||||||
'node_flavor': 'flavor_id',
|
'node_flavor': 'flavor_id',
|
||||||
'node_image': 'image_id'
|
'node_image': 'image_id',
|
||||||
|
'docker_volume_size': 'docker_volume_size'
|
||||||
})
|
})
|
||||||
return super(
|
return super(
|
||||||
SwarmModeTemplateDefinition, self).get_nodegroup_param_maps(
|
SwarmModeTemplateDefinition, self).get_nodegroup_param_maps(
|
||||||
@ -182,12 +182,13 @@ class SwarmModeTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
self).update_outputs(stack, cluster_template, cluster,
|
self).update_outputs(stack, cluster_template, cluster,
|
||||||
nodegroups=nodegroups)
|
nodegroups=nodegroups)
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
env_files = []
|
env_files = []
|
||||||
|
|
||||||
template_def.add_priv_net_env_file(env_files, cluster_template,
|
template_def.add_priv_net_env_file(env_files, cluster_template,
|
||||||
cluster)
|
cluster)
|
||||||
template_def.add_volume_env_file(env_files, cluster)
|
template_def.add_volume_env_file(env_files, cluster,
|
||||||
|
nodegroup=nodegroup)
|
||||||
template_def.add_lb_env_file(env_files, cluster_template)
|
template_def.add_lb_env_file(env_files, cluster_template)
|
||||||
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
template_def.add_fip_env_file(env_files, cluster_template, cluster)
|
||||||
|
|
||||||
|
@ -235,7 +235,7 @@ class TemplateDefinition(object):
|
|||||||
|
|
||||||
return template_params
|
return template_params
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
"""Gets stack environment files based upon ClusterTemplate attributes.
|
"""Gets stack environment files based upon ClusterTemplate attributes.
|
||||||
|
|
||||||
Base implementation returns no files (empty list). Meant to be
|
Base implementation returns no files (empty list). Meant to be
|
||||||
@ -323,9 +323,12 @@ class TemplateDefinition(object):
|
|||||||
pass
|
pass
|
||||||
|
|
||||||
def extract_definition(self, context, cluster_template, cluster, **kwargs):
|
def extract_definition(self, context, cluster_template, cluster, **kwargs):
|
||||||
|
nodegroups_list = kwargs.get('nodegroups', None)
|
||||||
|
nodegroup = None if not nodegroups_list else nodegroups_list[0]
|
||||||
return (self.template_path,
|
return (self.template_path,
|
||||||
self.get_params(context, cluster_template, cluster, **kwargs),
|
self.get_params(context, cluster_template, cluster, **kwargs),
|
||||||
self.get_env_files(cluster_template, cluster))
|
self.get_env_files(cluster_template, cluster,
|
||||||
|
nodegroup=nodegroup))
|
||||||
|
|
||||||
|
|
||||||
class BaseTemplateDefinition(TemplateDefinition):
|
class BaseTemplateDefinition(TemplateDefinition):
|
||||||
@ -533,8 +536,12 @@ def add_lb_env_file(env_files, cluster_template):
|
|||||||
env_files.append(COMMON_ENV_PATH + 'no_master_lb.yaml')
|
env_files.append(COMMON_ENV_PATH + 'no_master_lb.yaml')
|
||||||
|
|
||||||
|
|
||||||
def add_volume_env_file(env_files, cluster):
|
def add_volume_env_file(env_files, cluster, nodegroup=None):
|
||||||
if cluster.docker_volume_size is None:
|
if nodegroup:
|
||||||
|
docker_volume_size = nodegroup.docker_volume_size
|
||||||
|
else:
|
||||||
|
docker_volume_size = cluster.docker_volume_size
|
||||||
|
if docker_volume_size is None:
|
||||||
env_files.append(COMMON_ENV_PATH + 'no_volume.yaml')
|
env_files.append(COMMON_ENV_PATH + 'no_volume.yaml')
|
||||||
else:
|
else:
|
||||||
env_files.append(COMMON_ENV_PATH + 'with_volume.yaml')
|
env_files.append(COMMON_ENV_PATH + 'with_volume.yaml')
|
||||||
|
@ -122,7 +122,7 @@ class UbuntuMesosTemplateDefinition(template_def.BaseTemplateDefinition):
|
|||||||
scale_manager.get_removal_nodes(hosts))
|
scale_manager.get_removal_nodes(hosts))
|
||||||
return scale_params
|
return scale_params
|
||||||
|
|
||||||
def get_env_files(self, cluster_template, cluster):
|
def get_env_files(self, cluster_template, cluster, nodegroup=None):
|
||||||
env_files = []
|
env_files = []
|
||||||
|
|
||||||
template_def.add_priv_net_env_file(env_files, cluster_template,
|
template_def.add_priv_net_env_file(env_files, cluster_template,
|
||||||
|
Loading…
Reference in New Issue
Block a user