mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-22 21:00:22 -07:00
removed deprecated first available file from tasks (#17643)
https://docs.ansible.com/ansible/porting_guide_2.0.html#deprecated
This commit is contained in:
parent
1b0b6b4c10
commit
3550f73837
4 changed files with 3 additions and 36 deletions
|
@ -75,7 +75,6 @@ class Task(Base, Conditional, Taggable, Become):
|
||||||
_delegate_to = FieldAttribute(isa='string')
|
_delegate_to = FieldAttribute(isa='string')
|
||||||
_delegate_facts = FieldAttribute(isa='bool', default=False)
|
_delegate_facts = FieldAttribute(isa='bool', default=False)
|
||||||
_failed_when = FieldAttribute(isa='list', default=[])
|
_failed_when = FieldAttribute(isa='list', default=[])
|
||||||
_first_available_file = FieldAttribute(isa='list')
|
|
||||||
_loop = FieldAttribute(isa='string', private=True, inherit=False)
|
_loop = FieldAttribute(isa='string', private=True, inherit=False)
|
||||||
_loop_args = FieldAttribute(isa='list', private=True, inherit=False)
|
_loop_args = FieldAttribute(isa='list', private=True, inherit=False)
|
||||||
_loop_control = FieldAttribute(isa='class', class_type=LoopControl, inherit=False)
|
_loop_control = FieldAttribute(isa='class', class_type=LoopControl, inherit=False)
|
||||||
|
|
|
@ -792,29 +792,6 @@ class ActionBase(with_metaclass(ABCMeta, object)):
|
||||||
display.debug(u"_low_level_execute_command() done: rc=%d, stdout=%s, stderr=%s" % (rc, out, err))
|
display.debug(u"_low_level_execute_command() done: rc=%d, stdout=%s, stderr=%s" % (rc, out, err))
|
||||||
return dict(rc=rc, stdout=out, stdout_lines=out.splitlines(), stderr=err)
|
return dict(rc=rc, stdout=out, stdout_lines=out.splitlines(), stderr=err)
|
||||||
|
|
||||||
def _get_first_available_file(self, faf, of=None, searchdir='files'):
|
|
||||||
|
|
||||||
display.deprecated("first_available_file, use with_first_found or lookup('first_found',...) instead")
|
|
||||||
for fn in faf:
|
|
||||||
fnt = self._templar.template(fn)
|
|
||||||
if self._task._role is not None:
|
|
||||||
lead = self._task._role._role_path
|
|
||||||
else:
|
|
||||||
lead = fnt
|
|
||||||
fnd = self._loader.path_dwim_relative(lead, searchdir, fnt)
|
|
||||||
|
|
||||||
if not os.path.exists(fnd) and of is not None:
|
|
||||||
if self._task._role is not None:
|
|
||||||
lead = self._task._role._role_path
|
|
||||||
else:
|
|
||||||
lead = of
|
|
||||||
fnd = self._loader.path_dwim_relative(lead, searchdir, of)
|
|
||||||
|
|
||||||
if os.path.exists(fnd):
|
|
||||||
return fnd
|
|
||||||
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _get_diff_data(self, destination, source, task_vars, source_file=True):
|
def _get_diff_data(self, destination, source, task_vars, source_file=True):
|
||||||
|
|
||||||
diff = {}
|
diff = {}
|
||||||
|
|
|
@ -44,15 +44,14 @@ class ActionModule(ActionBase):
|
||||||
dest = self._task.args.get('dest', None)
|
dest = self._task.args.get('dest', None)
|
||||||
raw = boolean(self._task.args.get('raw', 'no'))
|
raw = boolean(self._task.args.get('raw', 'no'))
|
||||||
force = boolean(self._task.args.get('force', 'yes'))
|
force = boolean(self._task.args.get('force', 'yes'))
|
||||||
faf = self._task.first_available_file
|
|
||||||
remote_src = boolean(self._task.args.get('remote_src', False))
|
remote_src = boolean(self._task.args.get('remote_src', False))
|
||||||
follow = boolean(self._task.args.get('follow', False))
|
follow = boolean(self._task.args.get('follow', False))
|
||||||
|
|
||||||
if (source is None and content is None and faf is None) or dest is None:
|
if (source is None and content is None) or dest is None:
|
||||||
result['failed'] = True
|
result['failed'] = True
|
||||||
result['msg'] = "src (or content) and dest are required"
|
result['msg'] = "src (or content) and dest are required"
|
||||||
return result
|
return result
|
||||||
elif (source is not None or faf is not None) and content is not None:
|
elif source is not None and content is not None:
|
||||||
result['failed'] = True
|
result['failed'] = True
|
||||||
result['msg'] = "src and content are mutually exclusive"
|
result['msg'] = "src and content are mutually exclusive"
|
||||||
return result
|
return result
|
||||||
|
@ -86,8 +85,6 @@ class ActionModule(ActionBase):
|
||||||
|
|
||||||
# if we have first_available_file in our vars
|
# if we have first_available_file in our vars
|
||||||
# look up the files and use the first one we find as src
|
# look up the files and use the first one we find as src
|
||||||
elif faf:
|
|
||||||
source = self._get_first_available_file(faf, task_vars.get('_original_file', None))
|
|
||||||
elif remote_src:
|
elif remote_src:
|
||||||
result.update(self._execute_module(module_name='copy', module_args=self._task.args, task_vars=task_vars, delete_remote_tmp=False))
|
result.update(self._execute_module(module_name='copy', module_args=self._task.args, task_vars=task_vars, delete_remote_tmp=False))
|
||||||
return result
|
return result
|
||||||
|
|
|
@ -57,21 +57,15 @@ class ActionModule(ActionBase):
|
||||||
|
|
||||||
source = self._task.args.get('src', None)
|
source = self._task.args.get('src', None)
|
||||||
dest = self._task.args.get('dest', None)
|
dest = self._task.args.get('dest', None)
|
||||||
faf = self._task.first_available_file
|
|
||||||
force = boolean(self._task.args.get('force', True))
|
force = boolean(self._task.args.get('force', True))
|
||||||
state = self._task.args.get('state', None)
|
state = self._task.args.get('state', None)
|
||||||
|
|
||||||
if state is not None:
|
if state is not None:
|
||||||
result['failed'] = True
|
result['failed'] = True
|
||||||
result['msg'] = "'state' cannot be specified on a template"
|
result['msg'] = "'state' cannot be specified on a template"
|
||||||
elif (source is None and faf is not None) or dest is None:
|
elif source is None or dest is None:
|
||||||
result['failed'] = True
|
result['failed'] = True
|
||||||
result['msg'] = "src and dest are required"
|
result['msg'] = "src and dest are required"
|
||||||
elif faf:
|
|
||||||
source = self._get_first_available_file(faf, task_vars.get('_original_file', None, 'templates'))
|
|
||||||
if source is None:
|
|
||||||
result['failed'] = True
|
|
||||||
result['msg'] = "could not find src in first_available_file list"
|
|
||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
source = self._find_needle('templates', source)
|
source = self._find_needle('templates', source)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue