|
|
9e975f |
# Turn off automatic python byte compilation because these are Ansible
|
|
|
9e975f |
# roles and the files are transferred to the node and compiled there with
|
|
|
9e975f |
# the python verison used in the node
|
|
|
9e975f |
%define __brp_python_bytecompile %{nil}
|
|
|
9e975f |
|
|
|
9e975f |
Summary: Roles and playbooks to deploy FreeIPA servers, replicas and clients
|
|
|
9e975f |
Name: ansible-freeipa
|
|
|
9e975f |
Version: 0.1.6
|
|
|
9e975f |
Release: 4%{?dist}
|
|
|
9e975f |
URL: https://github.com/freeipa/ansible-freeipa
|
|
|
9e975f |
License: GPLv3+
|
|
|
9e975f |
Source: https://github.com/freeipa/ansible-freeipa/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
|
|
|
9e975f |
Patch1: ansible-freeipa-0.1.6-gen_module_docs-drop-key-dirserv_cert_files.patch
|
|
|
9e975f |
Patch2: ansible-freeipa-0.1.6-ipatopologysegment-command-suffix-e4497c18_rhbz#1733547.patch
|
|
|
9e975f |
Patch3: ansible-freeipa-0.1.6-ipatopologysegment-reinitialized-c212b435_rhbz#1733559.patch
|
|
|
9e975f |
Patch4: ansible-freeipa-0.1.6-ansible_ipa_client_Drop_import_of_configure_nsswitch_database_rhbz#1748905.patch
|
|
|
9e975f |
BuildArch: noarch
|
|
|
9e975f |
|
|
|
9e975f |
#Requires: ansible
|
|
|
9e975f |
|
|
|
9e975f |
%description
|
|
|
9e975f |
ansible-freeipa provides Ansible roles and playbooks to install and uninstall
|
|
|
9e975f |
FreeIPA servers, replicas and clients.
|
|
|
9e975f |
|
|
|
9e975f |
Note: The ansible playbooks and roles require a configured ansible environment
|
|
|
9e975f |
where the ansible nodes are reachable and are properly set up to have an IP
|
|
|
9e975f |
address and a working package manager.
|
|
|
9e975f |
|
|
|
9e975f |
Features
|
|
|
9e975f |
|
|
|
9e975f |
- Server, replica and client deployment
|
|
|
9e975f |
- Cluster deployments: Server, replicas and clients in one playbook
|
|
|
9e975f |
- One-time-password (OTP) support for client installation
|
|
|
9e975f |
- Repair mode for clients
|
|
|
9e975f |
|
|
|
9e975f |
Supported FreeIPA Versions
|
|
|
9e975f |
|
|
|
9e975f |
FreeIPA versions 4.6 and up are supported by all roles.
|
|
|
9e975f |
|
|
|
9e975f |
The client role supports versions 4.4 and up, the server role is working with
|
|
|
9e975f |
versions 4.5 and up, the replica role is currently only working with versions
|
|
|
9e975f |
4.6 and up.
|
|
|
9e975f |
|
|
|
9e975f |
Supported Distributions
|
|
|
9e975f |
|
|
|
9e975f |
- RHEL/CentOS 7.4+
|
|
|
9e975f |
- Fedora 26+
|
|
|
9e975f |
- Ubuntu
|
|
|
9e975f |
|
|
|
9e975f |
Requirements
|
|
|
9e975f |
|
|
|
9e975f |
Controller
|
|
|
9e975f |
- Ansible version: 2.5+
|
|
|
9e975f |
- python3-gssapi is required on the controller if a one time password (OTP)
|
|
|
9e975f |
is used to install the client.
|
|
|
9e975f |
|
|
|
9e975f |
Node
|
|
|
9e975f |
- Supported FreeIPA version (see above)
|
|
|
9e975f |
- Supported distribution (needed for package installation only, see above)
|
|
|
9e975f |
|
|
|
9e975f |
Limitations
|
|
|
9e975f |
|
|
|
9e975f |
External CA support is not supported or working. The currently needed two step
|
|
|
9e975f |
process is an issue for the processing in the role. The configuration of the
|
|
|
9e975f |
server is partly done already and needs to be continued after the CSR has been
|
|
|
9e975f |
handled. This is for example breaking the deployment of a server with replicas
|
|
|
9e975f |
or clients in one playbook.
|
|
|
9e975f |
|
|
|
9e975f |
%prep
|
|
|
9e975f |
%setup -q
|
|
|
9e975f |
# Do not create backup files with patches
|
|
|
9e975f |
%patch1 -p1
|
|
|
9e975f |
%patch2 -p1
|
|
|
9e975f |
%patch3 -p1
|
|
|
9e975f |
%patch4 -p1
|
|
|
9e975f |
# Fix python modules and module utils:
|
|
|
9e975f |
# - Remove shebang
|
|
|
9e975f |
# - Remove execute flag
|
|
|
9e975f |
for i in roles/ipa*/library/*.py roles/ipa*/module_utils/*.py plugins/*/*.py; do
|
|
|
9e975f |
sed -i '/\/usr\/bin\/python*/d' $i
|
|
|
9e975f |
chmod a-x $i
|
|
|
9e975f |
done
|
|
|
9e975f |
# Add execute flag to py3test.py scripts
|
|
|
9e975f |
chmod a+x roles/ipa*/files/py3test.py
|
|
|
9e975f |
|
|
|
9e975f |
%build
|
|
|
9e975f |
|
|
|
9e975f |
%install
|
|
|
9e975f |
install -m 755 -d %{buildroot}%{_datadir}/ansible/roles/
|
|
|
9e975f |
cp -rp roles/ipaserver %{buildroot}%{_datadir}/ansible/roles/
|
|
|
9e975f |
cp -rp roles/ipaserver/README.md README-server.md
|
|
|
9e975f |
cp -rp roles/ipareplica %{buildroot}%{_datadir}/ansible/roles/
|
|
|
9e975f |
cp -rp roles/ipareplica/README.md README-replica.md
|
|
|
9e975f |
cp -rp roles/ipaclient %{buildroot}%{_datadir}/ansible/roles/
|
|
|
9e975f |
cp -rp roles/ipaclient/README.md README-client.md
|
|
|
9e975f |
install -m 755 -d %{buildroot}%{_datadir}/ansible/plugins/
|
|
|
9e975f |
cp -rp plugins/* %{buildroot}%{_datadir}/ansible/plugins/
|
|
|
9e975f |
|
|
|
9e975f |
%files
|
|
|
9e975f |
%license COPYING
|
|
|
9e975f |
%{_datadir}/ansible/roles/ipaserver
|
|
|
9e975f |
%{_datadir}/ansible/roles/ipareplica
|
|
|
9e975f |
%{_datadir}/ansible/roles/ipaclient
|
|
|
9e975f |
%{_datadir}/ansible/plugins/module_utils
|
|
|
9e975f |
%{_datadir}/ansible/plugins/modules
|
|
|
9e975f |
%doc README.md
|
|
|
9e975f |
%doc README-topology.md
|
|
|
9e975f |
%doc README-server.md
|
|
|
9e975f |
%doc README-replica.md
|
|
|
9e975f |
%doc README-client.md
|
|
|
9e975f |
%doc playbooks
|
|
|
9e975f |
|
|
|
9e975f |
%changelog
|
|
|
9e975f |
* Fri Sep 6 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.6-4
|
|
|
9e975f |
- ansible_ipa_client: Drop import of configure_nsswitch_database
|
|
|
9e975f |
(RHBZ#1748905)
|
|
|
9e975f |
|
|
|
9e975f |
* Wed Jul 31 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.6-3
|
|
|
9e975f |
- ipatopologysegment: Store suffix for commands in command list (RHBZ#1733547)
|
|
|
9e975f |
- ipatopologysegment: Fail for missing entry with reinitialized (RHBZ#1733559)
|
|
|
9e975f |
|
|
|
9e975f |
* Tue Jul 23 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.6-2
|
|
|
9e975f |
- Drop dirserv_cert_files key from utils/gen_module_docs.py for covscan
|
|
|
9e975f |
|
|
|
9e975f |
* Tue Jul 23 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.6-1
|
|
|
9e975f |
- update to version 0.1.6
|
|
|
9e975f |
- Lots of documentation updates in READMEs and modules
|
|
|
9e975f |
- library/ipaclient_get_otp: Enable force mode for host_add call (fixes #74)
|
|
|
9e975f |
- Flake8 and pylint reated fixes
|
|
|
9e975f |
- Fixed wrong path to CheckedIPAddress class in ipareplica_test
|
|
|
9e975f |
- Remove unused ipaserver/library/ipaserver.py
|
|
|
9e975f |
- No not use wildcard imports for modules
|
|
|
9e975f |
- ipareplica: Add support for pki_config_override
|
|
|
9e975f |
- ipareplica: Initialize dns.ip_addresses and dns.reverse_zones for dns setup
|
|
|
9e975f |
- ipareplica_prepare: Properly initialize pin and cert_name variables
|
|
|
9e975f |
- ipareplica: Fail with proper error messages
|
|
|
9e975f |
- ipaserver: Properly set settings related to pkcs12 files
|
|
|
9e975f |
- ipaclient: RawConfigParser is not always provided by six.moves.configparser
|
|
|
9e975f |
- ipaclient_setup_nss: paths.GETENT is not available before
|
|
|
9e975f |
freeipa-4.6.90.pre1
|
|
|
9e975f |
- ipaserver_test: Initialize value from options.zonemgr
|
|
|
9e975f |
- ipareplica_setup_custodia: create_replica only available in newer releases
|
|
|
9e975f |
- ipaclient: Fix typo in dnsok assignment for ipaclient_setup_nss
|
|
|
9e975f |
- ipa[server,replica]: Set _packages_adtrust for Ubuntu
|
|
|
9e975f |
- New build script for galaxy release
|
|
|
9e975f |
- New utils script to update module docs
|
|
|
9e975f |
- Changes from ansible-freeipa-0.1.5
|
|
|
9e975f |
- Support for IPA 4.8.0
|
|
|
9e975f |
- New user management module
|
|
|
9e975f |
- New group management module
|
|
|
9e975f |
- ipaserver: Support external signed CA
|
|
|
9e975f |
- RHEL-8 specific vars files to be able to install needed modules
|
|
|
9e975f |
automatically
|
|
|
9e975f |
- ipareplica: Fixes for certmonger and kra setup
|
|
|
9e975f |
- New tests folder
|
|
|
9e975f |
- OTP related updates to README files
|
|
|
9e975f |
|
|
|
9e975f |
* Thu Jul 4 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.4-2
|
|
|
9e975f |
- ansible_ipa_client: Always set options.unattended (RHBZ#1726645)
|
|
|
9e975f |
- ipaserver_prepare: Properly report error, do show trace back (RHBZ#1726668)
|
|
|
9e975f |
- ipa[server,replica,client]: RHEL-8 specific vars files (RHBZ#1727095)
|
|
|
9e975f |
- ipatopology modules: Use ipaadmin_ prefix for principal and password
|
|
|
9e975f |
(RHBZ#1727101)
|
|
|
9e975f |
|
|
|
9e975f |
* Mon Jun 17 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.4-1
|
|
|
9e975f |
- update to version 0.1.4
|
|
|
9e975f |
- ipatopologysegment: Use commands, not command
|
|
|
9e975f |
|
|
|
9e975f |
* Mon Jun 17 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.3-1
|
|
|
9e975f |
- update to version 0.1.3
|
|
|
9e975f |
- ipaclient_test: Fix Python2 decode use with Python3
|
|
|
9e975f |
- Fixed: #86 (AttributeError: 'str' object has no attribute 'decode')
|
|
|
9e975f |
- ipaclient_get_otp: Remove ansible_python_interpreter handling
|
|
|
9e975f |
- ipaclient: Use omit (None) for password, keytab, no string length checks
|
|
|
9e975f |
- ipaclient_join: Support to use ipaadmin_keytab without ipaclient_use_otp
|
|
|
9e975f |
- ipaclient: Report error message if ipaclient_get_otp failed
|
|
|
9e975f |
- Fixes #17 Improve how tasks manage package installation
|
|
|
9e975f |
- ipareplica: The dm password is not needed for ipareplica_master_password
|
|
|
9e975f |
- ipareplica: Use ipareplica_server if set
|
|
|
9e975f |
- ipatopologysegment: Allow domain+ca suffix, new state: checked
|
|
|
9e975f |
- Documentation updates
|
|
|
9e975f |
- Cleanups
|
|
|
9e975f |
|
|
|
9e975f |
* Tue Jun 11 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.2-3
|
|
|
9e975f |
- bump release for functional test
|
|
|
9e975f |
|
|
|
9e975f |
* Tue Jun 11 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.2-2
|
|
|
9e975f |
- bump release for functional test
|
|
|
9e975f |
|
|
|
9e975f |
* Fri Jun 7 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.2-1
|
|
|
9e975f |
- update to version 0.1.2
|
|
|
9e975f |
- Now a new Ansible Collection
|
|
|
9e975f |
- Fix gssapi requirement for OTP: It is only needed if keytab is used with
|
|
|
9e975f |
OTP now.
|
|
|
9e975f |
- Fix wrong ansible argument types
|
|
|
9e975f |
- Do not fail on textwrap for replica deployments with CA
|
|
|
9e975f |
- Ansible lint and galaxy fixes
|
|
|
9e975f |
- Disable automatic removal of replication agreements in uninstall
|
|
|
9e975f |
- Enable freeipa-trust service if adtrust is enabled
|
|
|
9e975f |
- Add support for hidden replica
|
|
|
9e975f |
- New topology managament modules
|
|
|
9e975f |
- Add support for pki_config_override
|
|
|
9e975f |
- Fix host name setup in server deployment
|
|
|
9e975f |
- Fix errors when ipaservers variable is not set
|
|
|
9e975f |
- Fix ipaclient install role length typo
|
|
|
9e975f |
- Cleanups
|
|
|
9e975f |
|
|
|
9e975f |
* Mon May 6 2019 Thomas Woerner <twoerner@redhat.com> - 0.1.1-1
|
|
|
9e975f |
- Initial package
|