libreschool-client-manager/libreschool-client-manager....

92 lines
2.7 KiB
RPMSpec

Summary: LibreSchool Client Manager
Name: libreschool-client-manager
Version: 1.0
Release: 1.ns7
License: GPL
BuildArch: noarch
BuildRoot: %{_tmppath}/%{name}-root
Source0: %{name}-%{version}.tar.gz
Source1: createlinks.pl
Source2: LICENSE
URL: %{url_prefix}/%{name}
Group: System Environment/Daemons
Requires: libreschool-release
Requires: ansible
Requires: httpd, php, sudo, php-xml, php-mcrypt
Requires: nethserver-base
Requires: ansible
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
Requires(pre): /usr/sbin/useradd, /usr/bin/getent
Requires(postun): /usr/sbin/userdel
BuildRequires: nethserver-devtools > 1.0.1
BuildRequires: systemd
%description
LibreSchool Ansible base structure for client management
%prep
%setup
%build
%{makedocs}
perl createlinks.pl
%install
rm -rf $RPM_BUILD_ROOT
(cd root ; find . -depth -not -name '*.orig' -print | cpio -dump $RPM_BUILD_ROOT)
%{genfilelist} $RPM_BUILD_ROOT > %{name}-%{version}-%{release}-filelist
echo "%doc LICENSE" >> %{name}-%{version}-%{release}-filelist
mkdir -p %{buildroot}%{_localstatedir}/log/client-manager
mkdir -p %{buildroot}%{_localstatedir}/cache/client-manager
%files -f %{name}-%{version}-%{release}-filelist
%attr(0755,srvmgr,srvmgr) %dir %{_localstatedir}/cache/client-manager
%attr(0755,srvmgr,srvmgr) %dir %{_localstatedir}/log/client-manager
%defattr(-,root,root)
%pre
/usr/bin/getent passwd amgmt || /usr/sbin/useradd -r -g wheel -d /home/amgmt -s /sbin/nologin amgmt
if [ "$1" = 2 ]; then
#upgrade
/usr/bin/systemctl stop client-manager >/dev/null 2>&1 || :
fi
%post
/etc/e-smith/events/actions/initialize-default-databases
[ -e /usr/sbin/client-manager ] && [ ! -L /usr/sbin/client-manager ] && rm /usr/sbin/client-manager
[ ! -L /usr/sbin/client-manager ] && ln -s httpd /usr/sbin/client-manager
/sbin/e-smith/expand-template /etc/sudoers
/sbin/e-smith/expand-template /etc/httpd/client-manager/httpd.conf
/sbin/e-smith/expand-template /etc/ansible/reconfigure_clients.yml
/sbin/e-smith/signal-event runlevel-adjust
/usr/bin/systemctl --no-block start client-manager >/dev/null 2>&1 || :
/sbin/e-smith/signal-event firewall-adjust
%preun
#if [ "$1" = 1 ]; then
# #upgrade
#fi
if [ "$1" = 0 ]; then
#uninstallation
/usr/bin/systemctl stop client-manager >/dev/null 2>&1 || :
fi
%postun
#if [ "$1" = 1 ]; then
# #upgrade
#fi
if [ "$1" = 0 ]; then
#uninstallation
/usr/sbin/userdel amgmt
/sbin/e-smith/db configuration delete client-manager
/sbin/e-smith/expand-template /etc/sudoers
/sbin/e-smith/signal-event runlevel-adjust
/sbin/e-smith/signal-event firewall-adjust
fi
%changelog
* Sun Apr 28 2019 Paolo Asperti <paolo@asperti.com> - 1.0-1.ns7
- First release for NethServer 7