WALinuxAgent/WALinuxAgent.spec

117 lines
3.3 KiB
RPMSpec
Raw Normal View History

2022-02-10 09:38:48 +08:00
%global with_legacy 0
%global dracut_modname 97walinuxagent
Name: WALinuxAgent
2022-06-10 11:25:32 +08:00
Version: 2.5.0.2
2022-02-10 09:38:48 +08:00
Release: 1
Summary: The Microsoft Azure Linux Agent
License: ASL 2.0
URL: https://github.com/Azure/%{name}
Source0: https://github.com/Azure/%{name}/archive/v%{version}.tar.gz
Source1: module-setup.sh
# Python3.9 fixes
2022-06-10 11:25:32 +08:00
Patch0: 0001-Install-systemd-unit-for-default-OS.patch
2022-02-10 09:38:48 +08:00
BuildArch: noarch
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-distro
Requires: %name-udev = %version-%release
2022-06-10 11:25:32 +08:00
Requires: openssh openssh-server openssl parted python3-pyasn1 iptables
2022-02-10 09:38:48 +08:00
BuildRequires: systemd
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
%description
The Microsoft Azure Linux Agent supports the provisioning and running of Linux
VMs in the Microsoft Azure cloud. This package should be installed on Linux disk
images that are built to run in the Microsoft Azure environment.
%if 0%{?with_legacy}
%package legacy
Summary: The Microsoft Azure Linux Agent (legacy)
Requires: %name = %version-%release
Requires: python2
Requires: net-tools
%description legacy
The Microsoft Azure Linux Agent supporting old version of extensions.
%endif
%package udev
Summary: Udev rules for Microsoft Azure
%description udev
Udev rules specific to Microsoft Azure Virtual Machines.
%prep
%setup -q
%patch0 -p1
%build
%py3_build
%install
%{__python3} setup.py install -O1 --skip-build --root %{buildroot} --lnx-distro redhat
mkdir -p -m 0700 %{buildroot}%{_sharedstatedir}/waagent
mkdir -p %{buildroot}%{_localstatedir}/log
touch %{buildroot}%{_localstatedir}/log/waagent.log
mkdir -p %{buildroot}%{_udevrulesdir}
mv %{buildroot}%{_sysconfdir}/udev/rules.d/*.rules %{buildroot}%{_udevrulesdir}/
rm -rf %{buildroot}/%{python3_sitelib}/tests
rm -rf %{buildroot}/%{python3_sitelib}/__main__.py
rm -rf %{buildroot}/%{python3_sitelib}/__pycache__/__main__*.py*
sed -i 's,#!/usr/bin/env python,#!/usr/bin/python3,' %{buildroot}%{_sbindir}/waagent
%if 0%{?with_legacy}
sed -i 's,#!/usr/bin/env python,#!/usr/bin/python2,' %{buildroot}%{_sbindir}/waagent2.0
%else
rm -f %{buildroot}%{_sbindir}/waagent2.0
%endif
sed -i 's,/usr/bin/python ,/usr/bin/python3 ,' %{buildroot}%{_unitdir}/waagent.service
mv %{buildroot}%{_sysconfdir}/logrotate.d/waagent.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
install -m0755 -D -t %{buildroot}%{_prefix}/lib/dracut/modules.d/%{dracut_modname}/ %{SOURCE1}
%post
%systemd_post waagent.service
%preun
%systemd_preun waagent.service
%postun
%systemd_postun_with_restart waagent.service
%files
2022-06-10 11:25:32 +08:00
%doc LICENSE.txt NOTICE README.md
2022-02-10 09:38:48 +08:00
%ghost %{_localstatedir}/log/waagent.log
%dir %attr(0700, root, root) %{_sharedstatedir}/waagent
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
%{_sbindir}/waagent
%config(noreplace) %{_sysconfdir}/waagent.conf
%{_unitdir}/waagent.service
%{python3_sitelib}/azurelinuxagent
%{python3_sitelib}/*.egg-info
%files udev
%{_udevrulesdir}/*.rules
%{_prefix}/lib/dracut/modules.d/%{dracut_modname}/*.sh
%if 0%{?with_legacy}
%files legacy
%{_sbindir}/waagent2.0
%endif
%changelog
2022-06-10 11:25:32 +08:00
* Fri Jun 10 2022 fushanqing <fushanqing@kylinos.cn> - 2.5.0.2-1
- update to 2.5.0.2
2022-02-10 09:38:48 +08:00
* Thu Feb 17 2022 fushanqing <fushanqing@kylinos.cn> - 2.2.52-1
- Initial package