Я создал ansible модуль с именем "render", который превратит содержимое файла в список. Он выглядит следующим образом:
#!/usr/bin/python
import os
import subprocess
from ansible.module_utils.basic import AnsibleModule
stored_path = < my path to file >
def file_list():
with open(stored_path, 'r') as fr:
user_data = fr.readlines()
return user_data
def main():
module = AnsibleModule(argument_spec={})
result = dict(
result=''
)
user_data = file_list()
module.exit_json(**result)
if __name__ == '__main__':
main()
Сборник пьес, откуда я вызываю этот модуль , его код выглядит следующим образом:
-
name: Random tests on Ansible
hosts: "{{ hostval }}"
gather_facts: no
vars:
user_data_file: <path to file>
user_data: ""
tasks:
- name: collect file and related objects
render:
register: result
- debug: var=result
Здесь "render" - это модуль ansible.
Мой вопрос заключается в том, как вернуть это значение переменной "user_data" в ansible playbook, который вызывает этот ansible модуль?