File openstack-heat-agents.spec of Package openstack-heat-agents
#
# spec file for package openstack-heat-agents
#
# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Name: openstack-heat-agents
Version: 1.8.0
Release: 0
Summary: OpenStack Heat agents
License: Apache-2.0
Group: Development/Languages/Python
URL: https://git.openstack.org/cgit/openstack/heat-agents
Source0: https://files.pythonhosted.org/packages/source/h/heat-agents/heat-agents-1.8.0.tar.gz
BuildRequires: openstack-macros
BuildRequires: python3-os-apply-config
BuildRequires: python3-os-refresh-config
BuildRequires: python3-pbr
BuildArch: noarch
%description
Heat Agents are python hooks for deploying software configurations using heat.
%prep
%autosetup -p1 -n heat-agents-1.8.0
%py_req_cleanup
# Replace "env python" shebag to the correct python executable
# if we don't do that brp-mangle-shebangs will choke on CentOS 8
for python_script in $(grep "%{_bindir}/env python" . -rl)
do
sed -i "s#%{_bindir}/env python.*#%{_bindir}/python3#g" $python_script
done
%build
%install
# Use os-apply-config to bootstrap /etc/os-collect-config.conf
# from heat boot data
install -p -D -m 755 heat-config/os-refresh-config/configure.d/20-os-apply-config %{buildroot}%{_libexecdir}/os-refresh-config/configure.d/20-os-apply-config
install -p -D -m 600 heat-config/os-apply-config/%{_sysconfdir}/os-collect-config.conf %{buildroot}%{_libexecdir}/os-apply-config/templates/%{_sysconfdir}/os-collect-config.conf
# utilities which can be run by deployment scripts
install -p -D -m 755 heat-config/bin/heat-config-notify %{buildroot}/%{_bindir}/heat-config-notify
install -p -D -m 755 heat-config/bin/heat-config-rebuild-deployed %{buildroot}/%{_bindir}/heat-config-rebuild-deployed
# os-refresh-config script to run heat deployment resources
install -p -D -m 600 heat-config/os-apply-config/%{_localstatedir}/run/heat-config/heat-config %{buildroot}%{_libexecdir}/os-apply-config/templates/run/heat-config/heat-config
install -p -D -m 755 heat-config/os-refresh-config/configure.d/55-heat-config %{buildroot}%{_libexecdir}/os-refresh-config/configure.d/55-heat-config
# hook to perform configuration with scripts
install -p -D -m 755 heat-config-script/install.d/hook-script.py %{buildroot}%{_libexecdir}/heat-config/hooks/script
# hook to perform configuration with puppet
install -p -D -m 755 heat-config-puppet/install.d/hook-puppet.py %{buildroot}%{_libexecdir}/heat-config/hooks/puppet
# hook to perform configuration with ansible
install -p -D -m 755 heat-config-ansible/install.d/hook-ansible.py %{buildroot}%{_libexecdir}/heat-config/hooks/ansible
# hook to perform configuration with os-apply-config
install -p -D -m 755 heat-config-apply-config/install.d/hook-apply-config.py %{buildroot}%{_libexecdir}/heat-config/hooks/apply-config
# hook to perform configuration with hiera
install -p -D -m 755 heat-config-hiera/install.d/hook-hiera.py %{buildroot}%{_libexecdir}/heat-config/hooks/hiera
# hook to perform configuration with json-file
install -p -D -m 755 heat-config-json-file/install.d/hook-json-file.py %{buildroot}%{_libexecdir}/heat-config/hooks/json-file
# hook to perform configuration with docker commands
install -p -D -m 755 heat-config-docker-cmd/os-refresh-config/configure.d/50-heat-config-docker-cmd %{buildroot}%{_libexecdir}/os-refresh-config/configure.d/50-heat-config-docker-cmd
install -p -D -m 755 heat-config-docker-cmd/install.d/hook-docker-cmd.py %{buildroot}%{_libexecdir}/heat-config/hooks/docker-cmd
%package -n python3-heat-agent
Summary: Agent for performing Heat software deployments
Group: Development/Languages/Python
Requires: python3-dib-utils
Requires: python3-heat-cfntools
Requires: python3-heatclient
Requires: python3-os-apply-config
Requires: python3-os-collect-config
Requires: python3-os-refresh-config
Requires: python3-requests
Requires: python3-zaqarclient
%description -n python3-heat-agent
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform script based configuration tasks.
%package -n python3-heat-agent-puppet
Summary: Agent for performing Puppet based Heat software deployments
Group: Development/Languages/Python
Requires: puppet
Requires: python3-heat-agent
%description -n python3-heat-agent-puppet
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform puppet based configuration tasks.
%package -n python3-heat-agent-ansible
Summary: Agent for performing Ansible based Heat software deployments
Group: Development/Languages/Python
Requires: ansible
Requires: python3-heat-agent
%description -n python3-heat-agent-ansible
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform ansible based configuration tasks.
%package -n python3-heat-agent-apply-config
Summary: Agent for performing os-apply-config based Heat software deployments
Group: Development/Languages/Python
Requires: python3-heat-agent
Requires: python3-os-apply-config
%description -n python3-heat-agent-apply-config
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform os-apply-config based configuration tasks.
%package -n python3-heat-agent-hiera
Summary: Agent for performing hiera based Heat software deployments
Group: Development/Languages/Python
Requires: python3-heat-agent
%description -n python3-heat-agent-hiera
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform hiera based configuration tasks.
%package -n python3-heat-agent-json-file
Summary: Agent for performing json-file based Heat software deployments
Group: Development/Languages/Python
Requires: python3-heat-agent
%description -n python3-heat-agent-json-file
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform json-file based configuration tasks.
%package -n python3-heat-agent-docker-cmd
Summary: Agent for performing Docker based Heat software deployments
Group: Development/Languages/Python
Requires: python3-heat-agent
Requires: python3-paunch
%description -n python3-heat-agent-docker-cmd
Heat Agents are python hooks for deploying software configurations using heat.
This package installs and configures os-collect-config to allow Heat software
deployments to perform docker based configuration tasks.
%files
%license LICENSE
%files -n python3-heat-agent
%license LICENSE
%dir %{_libexecdir}/os-refresh-config/configure.d/
%dir %{_libexecdir}/os-apply-config/templates/run/heat-config
%{_bindir}/heat-config-notify
%{_bindir}/heat-config-rebuild-deployed
%dir %{_libexecdir}/os-apply-config/templates/%{_sysconfdir}/
%dir %{_libexecdir}/os-apply-config/templates/run/
%{_libexecdir}/os-apply-config/templates/%{_sysconfdir}/os-collect-config.conf
%{_libexecdir}/os-apply-config/templates/run/heat-config/heat-config
%{_libexecdir}/os-refresh-config/configure.d/20-os-apply-config
%{_libexecdir}/os-refresh-config/configure.d/55-heat-config
%dir %{_libexecdir}/heat-config
%dir %{_libexecdir}/heat-config/hooks
%{_libexecdir}/heat-config/hooks/script
%files -n python3-heat-agent-puppet
%license LICENSE
%{_libexecdir}/heat-config/hooks/puppet
%files -n python3-heat-agent-ansible
%{_libexecdir}/heat-config/hooks/ansible
%files -n python3-heat-agent-apply-config
%{_libexecdir}/heat-config/hooks/apply-config
%files -n python3-heat-agent-hiera
%{_libexecdir}/heat-config/hooks/hiera
%files -n python3-heat-agent-json-file
%{_libexecdir}/heat-config/hooks/json-file
%files -n python3-heat-agent-docker-cmd
%{_libexecdir}/heat-config/hooks/docker-cmd
%{_libexecdir}/os-refresh-config/configure.d/50-heat-config-docker-cmd
%changelog