File azure-li-services.spec of Package azure-li-services.10798

#
# spec file for package azure-li-services
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#


Name:             azure-li-services
Version:          1.1.28
Release:          0
Url:              https://github.com/SUSE/azure-li-services
Summary:          Azure Large Instance Services
License:          GPL-3.0+
Group:            System/Management
Source:           azure-li-services.tar.gz
BuildRoot:        %{_tmppath}/%{name}-%{version}-build
BuildRequires:    python3-devel
BuildRequires:    python3-setuptools
BuildRequires:    systemd-rpm-macros
Requires:         python3-PyYAML
Requires:         python3-setuptools
Requires:         python3-psutil
Requires:         python3-humanfriendly
Requires:         python3-Cerberus
Requires:         shadow
Requires(preun):  systemd
Requires(postun): systemd
%if 0%{?suse_version} > 1320
Requires:         createrepo-implementation
%else
Requires:         createrepo
%endif
Requires:         zypper
Requires:         rsync
BuildArch:        noarch

%description
Systemd services reading and processing the sections of a
configuration file provided to the system during the startup
phase of an Azure Large or Very Large Instance.

%prep
%setup -q -n azure_li_services-%{version}

%build
python3 setup.py build

%install
python3 setup.py install --prefix=%{_prefix} --root=%{buildroot}

install -D -m 644 systemd/azure-li-config-lookup.service \
    %{buildroot}%{_unitdir}/azure-li-config-lookup.service

install -D -m 644 systemd/azure-li-network.service \
    %{buildroot}%{_unitdir}/azure-li-network.service

install -D -m 644 systemd/azure-li-user.service \
    %{buildroot}%{_unitdir}/azure-li-user.service

install -D -m 644 systemd/azure-li-call.service \
    %{buildroot}%{_unitdir}/azure-li-call.service

install -D -m 644 systemd/azure-li-install.service \
    %{buildroot}%{_unitdir}/azure-li-install.service

install -D -m 644 systemd/azure-li-report.service \
    %{buildroot}%{_unitdir}/azure-li-report.service

install -D -m 644 systemd/azure-li-cleanup.service \
    %{buildroot}%{_unitdir}/azure-li-cleanup.service

install -D -m 644 systemd/azure-li-machine-constraints.service \
    %{buildroot}%{_unitdir}/azure-li-machine-constraints.service

install -D -m 644 systemd/azure-li-storage.service \
    %{buildroot}%{_unitdir}/azure-li-storage.service

install -D -m 644 systemd/azure-li-system-setup.service \
    %{buildroot}%{_unitdir}/azure-li-system-setup.service

# preun / postun
# While the package provides services all services are one-shot.
# Additionally upon initial run, i.e. on first boot the package
# itself gets removed via the azure-li-cleanup implementation.
# This means there is no package update path as the package will
# be gone after initial boot. Therefore there is no need for
# use of the "standard" systemd service handling macros.

%files
%defattr(-,root,root,-)
%{python3_sitelib}/*

%{_bindir}/azure-li-config-lookup
%{_unitdir}/azure-li-config-lookup.service

%{_bindir}/azure-li-network
%{_unitdir}/azure-li-network.service

%{_bindir}/azure-li-user
%{_unitdir}/azure-li-user.service

%{_bindir}/azure-li-call
%{_unitdir}/azure-li-call.service

%{_bindir}/azure-li-install
%{_unitdir}/azure-li-install.service

%{_bindir}/azure-li-report
%{_unitdir}/azure-li-report.service

%{_bindir}/azure-li-cleanup
%{_unitdir}/azure-li-cleanup.service

%{_bindir}/azure-li-machine-constraints
%{_unitdir}/azure-li-machine-constraints.service

%{_bindir}/azure-li-storage
%{_unitdir}/azure-li-storage.service

%{_bindir}/azure-li-system-setup
%{_unitdir}/azure-li-system-setup.service

%changelog
openSUSE Build Service is sponsored by