- Apply fix for ipabackup: Use module to get IPA_BACKUP_DIR from ipaplatform Resolves: RRBZ#1973173 - Update to version 0.3.6 https://github.com/freeipa/ansible-freeipa/releases/tag/v0.3.6 Resolves: RHBZ#1972178 - ansible-freeipa-tests not in the compose Resolves: RHBZ#1940014 - Remove unsupported parameter for (ipapermission) module: perm_rights from permission-present.yml Resolves: RHBZ#1973167 - Sample playbook included for selfservice module is incorrect Resolves: RHBZ#1973166 - ipa-client-install failing with error code 7(keytab: /usr/sbin/ipa-rmkeytab returned 7) Resolves: RHBZ#1973169 - New management module ipaserver Resolves: RHBZ#1973171 - New management module ipaautomember Resolves: RHBZ#1973172

This commit is contained in:
Thomas Woerner 2021-06-17 13:32:44 +02:00
parent ec8195dd47
commit 9a5bbab0fe
4 changed files with 150 additions and 14 deletions

1
.gitignore vendored
View File

@ -11,3 +11,4 @@
/ansible-freeipa-0.3.1.tar.gz
/ansible-freeipa-0.3.4.tar.gz
/ansible-freeipa-0.3.5.tar.gz
/ansible-freeipa-0.3.6.tar.gz

View File

@ -0,0 +1,115 @@
From db208bd6c11afda738b254b4d21b3cfb5307a3fd Mon Sep 17 00:00:00 2001
From: Thomas Woerner <twoerner@redhat.com>
Date: Wed, 9 Jun 2021 10:53:34 +0200
Subject: [PATCH] ipabackup: Use module to get IPA_BACKUP_DIR from ipaplatform
Up to now a python snippet was used to get IPA_BACKUP_DIR from ipaplatform
but this was not working when ansible_facts was false due to not getting
ansible_python_interpreter set.
The module version is also working if gather_facts is turned off.
---
.../library/ipabackup_get_backup_dir.py | 69 +++++++++++++++++++
roles/ipabackup/tasks/get_ipabackup_dir.yml | 12 ++--
2 files changed, 73 insertions(+), 8 deletions(-)
create mode 100644 roles/ipabackup/library/ipabackup_get_backup_dir.py
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 0000000..b76d01d
--- /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 45cb48a..a7cb29d 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 }}"
--
2.31.1

View File

@ -7,21 +7,18 @@
Summary: Roles and playbooks to deploy FreeIPA servers, replicas and clients
Name: ansible-freeipa
Version: 0.3.5
Release: 2%{?dist}
Version: 0.3.6
Release: 3%{?dist}
URL: https://github.com/freeipa/ansible-freeipa
License: GPLv3+
Source: https://github.com/freeipa/ansible-freeipa/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Patch1: ansible-freeipa-0.3.6-ipabackup-Use-module-to-get-IPA_BACKUP_DIR-from-ipap_rhbz#1969847.patch
BuildArch: noarch
%description
ansible-freeipa provides Ansible roles and playbooks to install and uninstall
FreeIPA servers, replicas and clients. Also modules for management.
Note: The ansible playbooks and roles require a configured ansible environment
where the ansible nodes are reachable and are properly set up to have an IP
address and a working package manager.
Ansible roles and playbooks to install and uninstall FreeIPA servers, replicas and clients. Also modules for group, host, topology and user management.
Note: The Ansible playbooks and roles require a configured Ansible environment where the Ansible nodes are reachable and are properly set up to have an IP address and a working package manager.
Features
- Server, replica and client deployment
@ -29,6 +26,7 @@ Features
- One-time-password (OTP) support for client installation
- Repair mode for clients
- Backup and restore, also to and from controller
- Modules for automembership rule management
- Modules for config management
- Modules for delegation management
- Modules for dns config management
@ -47,12 +45,13 @@ Features
- Modules for pwpolicy management
- Modules for role management
- Modules for self service management
- Modules for server management
- Modules for service management
- Modules for sudocmd management
- Modules for sudocmdgroup management
- Modules for sudorule management
- Modules for topology management
- Modules fot trust management
- Modules for trust management
- Modules for user management
- Modules for vault management
@ -60,10 +59,7 @@ Supported FreeIPA Versions
FreeIPA versions 4.6 and up are supported by all roles.
The client role supports versions 4.4 and up, the server role is working with
versions 4.5 and up, the replica role is currently only working with versions
4.6 and up.
The client role supports versions 4.4 and up, the server role is working with versions 4.5 and up, the replica role is currently only working with versions 4.6 and up.
Supported Distributions
- RHEL/CentOS 7.4+
@ -108,6 +104,7 @@ to get the needed requrements to run the tests.
%prep
%setup -q
# Do not create backup files with patches
%patch1 -p1
# Fix python modules and module utils:
# - Remove shebang
@ -164,6 +161,29 @@ cp -rp tests %{buildroot}%{_datadir}/ansible-freeipa/
%{_datadir}/ansible-freeipa/requirements-tests.txt
%changelog
* Thu Jun 17 2021 Thomas Woerner <twoerner@redhat.com> - 0.3.6-3
- Apply fix for ipabackup: Use module to get IPA_BACKUP_DIR from ipaplatform
Resolves: RRBZ#1973173
* Mon Jun 7 2021 Thomas Woerner <twoerner@redhat.com> - 0.3.6-1
- Update to version 0.3.6
https://github.com/freeipa/ansible-freeipa/releases/tag/v0.3.6
Resolves: RHBZ#1972178
- ansible-freeipa-tests not in the compose
Resolves: RHBZ#1940014
- Remove unsupported parameter for (ipapermission) module: perm_rights from
permission-present.yml
Resolves: RHBZ#1973167
- Sample playbook included for selfservice module is incorrect
Resolves: RHBZ#1973166
- ipa-client-install failing with error code 7(keytab: /usr/sbin/ipa-rmkeytab
returned 7)
Resolves: RHBZ#1973169
- New management module ipaserver
Resolves: RHBZ#1973171
- New management module ipaautomember
Resolves: RHBZ#1973172
* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 0.3.5-2
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937

View File

@ -1 +1 @@
SHA512 (ansible-freeipa-0.3.5.tar.gz) = e7455aad7500acf4c6df8b0812d4166acc968da4907743aaf39c0a2410e927bc117273914564ea5d95c52c0187a32c978e773969a7b54532bf9d6ed66034bc7c
SHA512 (ansible-freeipa-0.3.6.tar.gz) = 836b85883fa13f06f331d85f85bcf20e4d1bb9718e3a38d087195f2d40fc2d13346b25c4ab724bdb3ef676dc6542471ad9f0768ed5c9f8f2066db3697acb9c3d