%global rolename image-template %global roleprefix ovirt. %global roleprefix_legacy ovirt- %global roleprefix_legacy_uppercase oVirt. %global ansible_roles_dir ansible/roles Name: ovirt-ansible-image-template Summary: Ansible role to create virtual machine template from disk image Version: 1.1.12 Release: 1%{?release_suffix}%{?dist} Source0: http://resources.ovirt.org/pub/src/ovirt-ansible-image-template/ovirt-ansible-image-template-1.1.12.tar.gz License: ASL 2.0 Group: Virtualization/Management BuildArch: noarch Url: http://www.ovirt.org Requires: ansible >= 2.7.2 %description This Ansible role provide funtionality to create virtual machine template from disk image. %pretrans -p -- Remove the legacy directory before installing the symlink. This is known issue in RPM: -- https://fedoraproject.org/wiki/Packaging:Directory_Replacement path_dash = "%{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy}%{rolename}" path_uppercase = "%{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy_uppercase}%{rolename}" st = posix.stat(path_dash) if st and st.type == "directory" then os.execute('rm -rf "'..path_dash..'"') end st = posix.stat(path_uppercase) if st and st.type == "directory" then os.execute('rm -rf "'..path_uppercase..'"') end %prep %setup -c -q %build %install export PKG_DATA_DIR_ORIG=%{_datadir}/%{ansible_roles_dir}/%{roleprefix}%{rolename} export PKG_DATA_DIR=%{buildroot}$PKG_DATA_DIR_ORIG export PKG_DOC_DIR=%{buildroot}%{_pkgdocdir} export ROLENAME_LEGACY=%{buildroot}%{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy}%{rolename} export ROLENAME_LEGACY_UPPERCASE=%{buildroot}%{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy_uppercase}%{rolename} sh build.sh install %files %{_datadir}/%{ansible_roles_dir}/%{roleprefix}%{rolename} %{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy}%{rolename} %{_datadir}/%{ansible_roles_dir}/%{roleprefix_legacy_uppercase}%{rolename} %doc README.md %doc examples/ %license LICENSE %changelog * Wed Mar 04 2020 Huihui Fu - 1.1.12-1 - Package Initialization