mirror of
https://github.com/freeipa/ansible-freeipa.git
synced 2026-03-26 21:33:05 +00:00
There is a new idoverrideuser management module placed in the plugins
folder:
plugins/modules/ipaidoverrideuser.py
The idoverrideuser module allows to ensure presence and absence of
idoverrides for users and certificate members.
Here is the documentation for the module:
README-idoverrideuser.md
New example playbooks have been added:
playbooks/idoverrideuser/idoverrideuser-absent.yml
playbooks/idoverrideuser/idoverrideuser-certificate-absent.yml
playbooks/idoverrideuser/idoverrideuser-certificate-present.yml
playbooks/idoverrideuser/idoverrideuser-present.yml
New tests for the module can be found at:
tests/idoverrideuser/test_idoverrideuser.yml
tests/idoverrideuser/test_idoverrideuser_client_context.yml
186 lines
6.1 KiB
RPMSpec
186 lines
6.1 KiB
RPMSpec
# Turn off automatic python byte compilation because these are Ansible
|
|
# roles and the files are transferred to the node and compiled there with
|
|
# the python version used in the node
|
|
%define __brp_python_bytecompile %{nil}
|
|
|
|
%global python %{__python3}
|
|
|
|
Summary: Roles and playbooks to deploy FreeIPA servers, replicas and clients
|
|
Name: ansible-freeipa
|
|
Version: @@VERSION@@
|
|
Release: @@RELEASE@@%{?dist}
|
|
URL: https://github.com/freeipa/ansible-freeipa
|
|
License: GPL-3.0-or-later
|
|
Source: %{name}-%{version}-@@RELEASE@@.tar.bz2
|
|
BuildArch: noarch
|
|
|
|
%description
|
|
Ansible roles to install and uninstall FreeIPA servers, replicas and clients,
|
|
roles for backups and SmartCard configuration, modules for management and also
|
|
playbooks for all roles and modules.
|
|
|
|
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
|
|
- Cluster deployments: Server, replicas and clients in one playbook
|
|
- One-time-password (OTP) support for client installation
|
|
- Repair mode for clients
|
|
- Backup and restore, also to and from controller
|
|
- Smartcard setup for servers and clients
|
|
- Modules for automembership rule management
|
|
- Modules for automount key management
|
|
- Modules for automount location management
|
|
- Modules for automount map management
|
|
- Modules for certificate management
|
|
- Modules for config management
|
|
- Modules for delegation management
|
|
- Modules for dns config management
|
|
- Modules for dns forwarder management
|
|
- Modules for dns record management
|
|
- Modules for dns zone management
|
|
- Modules for group management
|
|
- Modules for hbacrule management
|
|
- Modules for hbacsvc management
|
|
- Modules for hbacsvcgroup management
|
|
- Modules for host management
|
|
- Modules for hostgroup management
|
|
- Modules for idoverrideuser management
|
|
- Modules for idrange management
|
|
- Modules for idview management
|
|
- Modules for location management
|
|
- Modules for netgroup management
|
|
- Modules for permission management
|
|
- Modules for privilege management
|
|
- Modules for pwpolicy management
|
|
- Modules for role management
|
|
- Modules for self service management
|
|
- Modules for server management
|
|
- Modules for service management
|
|
- Modules for service delegation rule management
|
|
- Modules for service delegation target management
|
|
- Modules for sudocmd management
|
|
- Modules for sudocmdgroup management
|
|
- Modules for sudorule management
|
|
- Modules for topology management
|
|
- Modules for trust management
|
|
- Modules for user management
|
|
- Modules for vault management
|
|
|
|
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.
|
|
|
|
Supported Distributions
|
|
|
|
- RHEL/CentOS 7.4+
|
|
- Fedora 26+
|
|
- Ubuntu
|
|
- Debian 10+ (ipaclient only, no server or replica!)
|
|
|
|
Requirements
|
|
|
|
Controller
|
|
- Ansible version: 2.13+
|
|
- /usr/bin/kinit is required on the controller if a one time password (OTP)
|
|
is used
|
|
|
|
Node
|
|
- Supported FreeIPA version (see above)
|
|
- Supported distribution (needed for package installation only, see above)
|
|
|
|
Limitations
|
|
|
|
External signed CA is now supported. But the currently needed two step process
|
|
is an issue for the processing in a simple playbook.
|
|
Work is planned to have a new method to handle CSR for external signed CAs in
|
|
a separate step before starting the server installation.
|
|
|
|
|
|
%package tests
|
|
Summary: ansible-freeipa tests
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
%description tests
|
|
ansible-freeipa tests.
|
|
|
|
Please have a look at %{_datadir}/ansible-freeipa/requirements-tests.txt
|
|
to get the needed requrements to run the tests.
|
|
|
|
|
|
%prep
|
|
%setup -q -n ansible-freeipa-%{version}-@@RELEASE@@
|
|
# Do not create backup files with patches
|
|
# Fix python modules and module utils:
|
|
# - Remove shebang
|
|
# - Remove execute flag
|
|
for i in roles/ipa*/library/*.py roles/ipa*/module_utils/*.py plugins/*/*.py;
|
|
do
|
|
sed -i '1{/\/usr\/bin\/python*/d;}' $i
|
|
chmod a-x $i
|
|
done
|
|
|
|
for i in utils/*.py utils/new_module utils/changelog utils/ansible-doc-test;
|
|
do
|
|
sed -i '{s@/usr/bin/env python*@%{python}@}' $i
|
|
done
|
|
|
|
|
|
%build
|
|
|
|
%install
|
|
install -m 755 -d %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipaserver %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipaserver/README.md README-server.md
|
|
cp -rp roles/ipareplica %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipareplica/README.md README-replica.md
|
|
cp -rp roles/ipaclient %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipaclient/README.md README-client.md
|
|
cp -rp roles/ipabackup %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipabackup/README.md README-backup.md
|
|
cp -rp roles/ipasmartcard_server %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipasmartcard_server/README.md README-smartcard_server.md
|
|
cp -rp roles/ipasmartcard_client %{buildroot}%{_datadir}/ansible/roles/
|
|
cp -rp roles/ipasmartcard_client/README.md README-smartcard_client.md
|
|
install -m 755 -d %{buildroot}%{_datadir}/ansible/plugins/
|
|
cp -rp plugins/* %{buildroot}%{_datadir}/ansible/plugins/
|
|
|
|
|
|
install -m 755 -d %{buildroot}%{_datadir}/ansible-freeipa
|
|
cp requirements*.txt %{buildroot}%{_datadir}/ansible-freeipa/
|
|
cp -rp utils %{buildroot}%{_datadir}/ansible-freeipa/
|
|
install -m 755 -d %{buildroot}%{_datadir}/ansible-freeipa/tests
|
|
cp -rp tests %{buildroot}%{_datadir}/ansible-freeipa/
|
|
|
|
%files
|
|
%license COPYING
|
|
%{_datadir}/ansible/roles/ipaserver
|
|
%{_datadir}/ansible/roles/ipareplica
|
|
%{_datadir}/ansible/roles/ipaclient
|
|
%{_datadir}/ansible/roles/ipabackup
|
|
%{_datadir}/ansible/roles/ipasmartcard_server
|
|
%{_datadir}/ansible/roles/ipasmartcard_client
|
|
%{_datadir}/ansible/plugins/doc_fragments
|
|
%{_datadir}/ansible/plugins/module_utils
|
|
%{_datadir}/ansible/plugins/modules
|
|
%doc README*.md
|
|
%doc playbooks
|
|
%{_datadir}/ansible-freeipa/requirements.txt
|
|
%{_datadir}/ansible-freeipa/requirements-dev.txt
|
|
%{_datadir}/ansible-freeipa/utils
|
|
|
|
%files tests
|
|
%{_datadir}/ansible-freeipa/tests
|
|
%{_datadir}/ansible-freeipa/requirements-tests.txt
|
|
|
|
%changelog
|
|
* @@DATE@@ Thomas Woerner <twoerner@redhat.com> - @@VERSION@@-@@RELEASE@@
|
|
- GIT version @@VERSION@@-@@RELEASE@@
|