diff --git a/roles/ipabackup/library/ipabackup_get_backup_dir.py b/roles/ipabackup/library/ipabackup_get_backup_dir.py new file mode 100644 index 0000000000000000000000000000000000000000..b76d01d44a8bc5f56ca171fa34d9c1fbab689fff --- /dev/null +++ b/roles/ipabackup/library/ipabackup_get_backup_dir.py @@ -0,0 +1,69 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- + +# Authors: +# Thomas Woerner <twoerner@redhat.com> +# +# Copyright (C) 2021 Red Hat +# see file 'COPYING' for use and warranty information +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +ANSIBLE_METADATA = { + 'metadata_version': '1.0', + 'supported_by': 'community', + 'status': ['preview'], +} + +DOCUMENTATION = ''' +--- +module: ipabackup_get_backup_dir +short description: + Get IPA_BACKUP_DIR from ipaplatform +description: + Get IPA_BACKUP_DIR from ipaplatform +options: +author: + - Thomas Woerner +''' + +EXAMPLES = ''' +# Get IPA_BACKUP_DIR from ipaplatform +- name: ipabackup_get_backup_dir: + register result +''' + +RETURN = ''' +backup_dir: + description: IPA_BACKUP_DIR from ipaplatform + returned: always + type: str +''' + +from ansible.module_utils.basic import AnsibleModule +from ipaplatform.paths import paths + + +def main(): + module = AnsibleModule( + argument_spec=dict(), + supports_check_mode=True, + ) + + module.exit_json(changed=False, + backup_dir=paths.IPA_BACKUP_DIR) + + +if __name__ == '__main__': + main() diff --git a/roles/ipabackup/tasks/get_ipabackup_dir.yml b/roles/ipabackup/tasks/get_ipabackup_dir.yml index 45cb48a1678089d64726aa3982ac79183fc16e4d..a7cb29d3d983758c77daf9eb1a5f11b873cb57f2 100644 --- a/roles/ipabackup/tasks/get_ipabackup_dir.yml +++ b/roles/ipabackup/tasks/get_ipabackup_dir.yml @@ -1,12 +1,8 @@ --- -- name: Get IPA_BACKUP_DIR dir from ipaplatform - command: "{{ ansible_python_interpreter | default('/usr/bin/python') }}" - args: - stdin: | - from ipaplatform.paths import paths - print(paths.IPA_BACKUP_DIR) - register: result_ipaplatform_backup_dir +- name: Get IPA_BACKUP_DIR from ipaplatform + ipabackup_get_backup_dir: + register: result_ipabackup_get_backup_dir - name: Set IPA backup dir set_fact: - ipabackup_dir: "{{ result_ipaplatform_backup_dir.stdout_lines | first }}" + ipabackup_dir: "{{ result_ipabackup_get_backup_dir.backup_dir }}"