Summary: Package that uses webapps configuration
Summary(pl.UTF-8): Pakiet używający konfiguracji aplikacji WWW
Name: template-webapp
Version: 0.4
Release: 0.4
License: GPL
Group: Applications/WWW
#Source0: %{name}-%{version}.tar.gz
# Source0-md5: -
# For apache 1.x
Source1: apache.conf
# For apache 2.4+
Source2: httpd.conf
Source3: lighttpd.conf
#URL: -
BuildRequires: rpmbuild(macros) >= 1.268
Requires: webapps
# see packages/webapps/webapps.README for description and complete listing
#Requires: webserver(access)
#Requires: webserver(alias)
#Requires: webserver(auth)
#Requires: webserver(cgi)
#Requires: webserver(indexfile)
#Requires: webserver(php)
#Requires: webserver(rewrite)
#Requires: webserver(setenv)
Conflicts: apache-base < 2.4.0-1
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _webapps /etc/webapps
%define _webapp %{name}
%define _sysconfdir %{_webapps}/%{_webapp}
#%define _appdir %{_datadir}/%{_webapp}
# in case _sysconfdir is not in webapps dir, run this replace pattern
# before copy-pasting to your spec: :%s#%{_sysconfdir}#%{_webapps}/%{_webapp}#g
%description
This .spec is for demonstrating triggers used for linking webapp
configuration to webserver config dir.
%description -l pl.UTF-8
Ten plik .spec służy do pokazania triggerów służących do podłączania
konfiguracji aplikacji WWW do katalogu konfiguracyjnego serwera WWW.
%prep
%setup -q
cat > apache.conf <<'EOF'
Alias /%{name} %{_appdir}
Allow from all
EOF
cat > httpd.conf <<'EOF'
Alias /%{name} %{_appdir}
Require all granted
EOF
cat > lighttpd.conf <<'EOF'
alias.url += (
"/%{name}" => "%{_appdir}",
)
EOF
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_sysconfdir}
install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}}
cp -p apache.conf $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
cp -p httpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
cp -p lighttpd.conf $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
mv $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}/apache.conf
mv $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}/httpd.conf
mv $RPM_BUILD_ROOT{%{_appdir},%{_sysconfdir}}/lighttpd.conf
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
cp -p %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
# %webapp_* macros usage extracted from /usr/lib/rpm/macros.build:
#
# Usage:
# %%webapp_register HTTPD WEBAPP
# %%webapp_unregister HTTPD WEBAPP
%triggerin -- apache1 < 1.3.37-3, apache1-base
%webapp_register apache %{_webapp}
%triggerun -- apache1 < 1.3.37-3, apache1-base
%webapp_unregister apache %{_webapp}
%triggerin -- apache-base
%webapp_register httpd %{_webapp}
%triggerun -- apache-base
%webapp_unregister httpd %{_webapp}
%triggerin -- lighttpd
%webapp_register lighttpd %{_webapp}
%triggerun -- lighttpd
%webapp_unregister lighttpd %{_webapp}
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
%dir %attr(750,root,http) %{_sysconfdir}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.php
%{_appdir}