Merge "Docker volume size from nodegroups"

This commit is contained in:
Zuul 2019-10-24 10:06:14 +00:00 committed by Gerrit Code Review
commit 03ff816549
7 changed files with 34 additions and 25 deletions

View File

@ -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)

View File

@ -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')
@ -197,13 +195,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)

View File

@ -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(

View File

@ -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

View File

@ -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)

View File

@ -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')

View File

@ -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,