Blame SPECS/ansible-freeipa.spec

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