mirror of
https://github.com/saltstack/salt.git
synced 2025-04-17 10:10:20 +00:00
Only template the userdata_file if explicitly configured to do so
This commit is contained in:
parent
b580654f85
commit
79cc253bbf
4 changed files with 80 additions and 56 deletions
|
@ -872,8 +872,8 @@ def request_instance(call=None, kwargs=None): # pylint: disable=unused-argument
|
|||
userdata_file = config.get_cloud_config_value(
|
||||
'userdata_file', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
userdata_renderer = config.get_cloud_config_value(
|
||||
'userdata_renderer', vm_, __opts__, search_global=False, default=None
|
||||
userdata_template = config.get_cloud_config_value(
|
||||
'userdata_template', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
if userdata_file is None:
|
||||
userdata = config.get_cloud_config_value(
|
||||
|
@ -885,19 +885,25 @@ def request_instance(call=None, kwargs=None): # pylint: disable=unused-argument
|
|||
userdata = fh_.read()
|
||||
|
||||
if userdata is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
# Use the cloud profile's userdata_renderer, otherwise get it from the
|
||||
# Use the cloud profile's userdata_template, otherwise get it from the
|
||||
# master configuration file.
|
||||
renderer = __opts__.get('userdata_renderer', 'jinja') \
|
||||
if userdata_renderer is None
|
||||
else userdata_renderer
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:', rend, renderer, blacklist, whitelist, input_data=userdata,
|
||||
)
|
||||
renderer = __opts__.get('userdata_template') \
|
||||
if userdata_template is None
|
||||
else userdata_template
|
||||
if renderer is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:',
|
||||
rend,
|
||||
renderer,
|
||||
blacklist,
|
||||
whitelist,
|
||||
input_data=userdata,
|
||||
)
|
||||
|
||||
os_kwargs['custom_data'] = base64.b64encode(userdata)
|
||||
|
||||
|
|
|
@ -1681,8 +1681,8 @@ def request_instance(vm_=None, call=None):
|
|||
userdata_file = config.get_cloud_config_value(
|
||||
'userdata_file', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
userdata_renderer = config.get_cloud_config_value(
|
||||
'userdata_renderer', vm_, __opts__, search_global=False, default=None
|
||||
userdata_template = config.get_cloud_config_value(
|
||||
'userdata_template', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
if userdata_file is None:
|
||||
userdata = config.get_cloud_config_value(
|
||||
|
@ -1695,19 +1695,25 @@ def request_instance(vm_=None, call=None):
|
|||
userdata = fh_.read()
|
||||
|
||||
if userdata is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
# Use the cloud profile's userdata_renderer, otherwise get it from the
|
||||
# Use the cloud profile's userdata_template, otherwise get it from the
|
||||
# master configuration file.
|
||||
renderer = __opts__.get('userdata_renderer', 'jinja') \
|
||||
if userdata_renderer is None
|
||||
else userdata_renderer
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:', rend, renderer, blacklist, whitelist, input_data=userdata,
|
||||
)
|
||||
renderer = __opts__.get('userdata_template') \
|
||||
if userdata_template is None
|
||||
else userdata_template
|
||||
if renderer is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:',
|
||||
rend,
|
||||
renderer,
|
||||
blacklist,
|
||||
whitelist,
|
||||
input_data=userdata,
|
||||
)
|
||||
|
||||
params[spot_prefix + 'UserData'] = base64.b64encode(userdata)
|
||||
|
||||
|
|
|
@ -647,27 +647,33 @@ def request_instance(vm_=None, call=None):
|
|||
userdata_file = config.get_cloud_config_value(
|
||||
'userdata_file', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
userdata_renderer = config.get_cloud_config_value(
|
||||
'userdata_renderer', vm_, __opts__, search_global=False, default=None
|
||||
userdata_template = config.get_cloud_config_value(
|
||||
'userdata_template', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
|
||||
if userdata_file is not None:
|
||||
with salt.utils.fopen(userdata_file, 'r') as fp_:
|
||||
userdata = fp_.read()
|
||||
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
# Use the cloud profile's userdata_renderer, otherwise get it from the
|
||||
# Use the cloud profile's userdata_template, otherwise get it from the
|
||||
# master configuration file.
|
||||
renderer = __opts__.get('userdata_renderer', 'jinja') \
|
||||
if userdata_renderer is None
|
||||
else userdata_renderer
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:', rend, renderer, blacklist, whitelist, input_data=userdata,
|
||||
)
|
||||
renderer = __opts__.get('userdata_template') \
|
||||
if userdata_template is None
|
||||
else userdata_template
|
||||
if renderer is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:',
|
||||
rend,
|
||||
renderer,
|
||||
blacklist,
|
||||
whitelist,
|
||||
input_data=userdata,
|
||||
)
|
||||
|
||||
kwargs['userdata'] = userdata
|
||||
|
||||
|
|
|
@ -528,27 +528,33 @@ def request_instance(vm_=None, call=None):
|
|||
userdata_file = config.get_cloud_config_value(
|
||||
'userdata_file', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
userdata_renderer = config.get_cloud_config_value(
|
||||
'userdata_renderer', vm_, __opts__, search_global=False, default=None
|
||||
userdata_template = config.get_cloud_config_value(
|
||||
'userdata_template', vm_, __opts__, search_global=False, default=None
|
||||
)
|
||||
|
||||
if userdata_file is not None:
|
||||
with salt.utils.fopen(userdata_file, 'r') as fp_:
|
||||
userdata = fp_.read()
|
||||
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
# Use the cloud profile's userdata_renderer, otherwise get it from the
|
||||
# Use the cloud profile's userdata_template, otherwise get it from the
|
||||
# master configuration file.
|
||||
renderer = __opts__.get('userdata_renderer', 'jinja') \
|
||||
if userdata_renderer is None
|
||||
else userdata_renderer
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:', rend, renderer, blacklist, whitelist, input_data=userdata,
|
||||
)
|
||||
renderer = __opts__.get('userdata_template') \
|
||||
if userdata_template is None
|
||||
else userdata_template
|
||||
if renderer is not None:
|
||||
render_opts = __opts__.copy()
|
||||
render_opts.update(vm_)
|
||||
rend = salt.loader.render(render_opts, {})
|
||||
blacklist = __opts__['renderer_blacklist']
|
||||
whitelist = __opts__['renderer_whitelist']
|
||||
userdata = compile_template(
|
||||
':string:',
|
||||
rend,
|
||||
renderer,
|
||||
blacklist,
|
||||
whitelist,
|
||||
input_data=userdata,
|
||||
)
|
||||
|
||||
kwargs['ex_userdata'] = userdata
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue