2020-09-02 21:34:52 +02:00
|
|
|
# This Spec file packages pre-built artifacts in the artifacts directory
|
|
|
|
# into an RPM. This means that rpmbuild won't actually build any new artifacts
|
|
|
|
#
|
|
|
|
# Read the Makefile first, then come back here.
|
|
|
|
|
|
|
|
# Global meta data
|
|
|
|
Version: SUBSTITUTED_BY_MAKEFILE
|
|
|
|
%global common_description %{expand:
|
|
|
|
zrepl is a one-stop, integrated solution for ZFS replication.}
|
|
|
|
|
|
|
|
# use gzip to be compatible with centos7
|
|
|
|
%define _source_payload w9.gzdio
|
|
|
|
%define _binary_payload w9.gzdio
|
|
|
|
|
2020-11-01 10:23:50 +01:00
|
|
|
# don't strip pre-built binaries
|
|
|
|
%define __strip /usr/bin/true
|
2020-09-02 21:34:52 +02:00
|
|
|
|
|
|
|
Name: zrepl
|
|
|
|
Release: 1
|
|
|
|
Summary: One-stop, integrated solution for ZFS replication
|
|
|
|
License: MIT
|
|
|
|
URL: https://zrepl.github.io/
|
|
|
|
# Source: we use rpmbuild --build-in-tree => no source
|
|
|
|
BuildRequires: systemd
|
|
|
|
Requires(post): systemd
|
|
|
|
Requires(preun): systemd
|
|
|
|
Requires(postun): systemd
|
|
|
|
|
|
|
|
%description
|
|
|
|
%{common_description}
|
|
|
|
|
|
|
|
%prep
|
|
|
|
# we use rpmbuild --build-in-tree => no prep or setup
|
|
|
|
|
|
|
|
%build
|
|
|
|
# we don't actually need to build anything here, that has already been done by the Makefile
|
|
|
|
|
|
|
|
# Correct the path in the systemd unit file
|
|
|
|
sed s:/usr/local/bin/:%{_bindir}/:g dist/systemd/zrepl.service > artifacts/rpmbuild/zrepl.service
|
|
|
|
|
|
|
|
# Generate the default configuration file
|
|
|
|
sed 's#USR_SHARE_ZREPL#%{_datadir}/doc/zrepl#' packaging/systemd-default-zrepl.yml > artifacts/rpmbuild/zrepl.yml
|
|
|
|
|
|
|
|
%install
|
|
|
|
install -Dm 0755 artifacts/%{_zrepl_binary_filename} %{buildroot}%{_bindir}/zrepl
|
|
|
|
install -Dm 0644 artifacts/rpmbuild/zrepl.service %{buildroot}%{_unitdir}/zrepl.service
|
|
|
|
install -Dm 0644 artifacts/_zrepl.zsh_completion %{buildroot}%{_datadir}/zsh/site-functions/_zrepl
|
|
|
|
install -Dm 0644 artifacts/bash_completion %{buildroot}%{_datadir}/bash-completion/completions/zrepl
|
|
|
|
install -Dm 0644 artifacts/rpmbuild/zrepl.yml %{buildroot}%{_sysconfdir}/zrepl/zrepl.yml
|
|
|
|
install -d %{buildroot}%{_datadir}/doc/zrepl
|
|
|
|
cp -a artifacts/docs/html %{buildroot}%{_datadir}/doc/zrepl/html
|
|
|
|
cp -a config/samples %{buildroot}%{_datadir}/doc/zrepl/examples
|
|
|
|
|
|
|
|
%post
|
|
|
|
%systemd_post zrepl.service
|
|
|
|
|
|
|
|
|
|
|
|
%preun
|
|
|
|
%systemd_preun zrepl.service
|
|
|
|
|
|
|
|
|
|
|
|
%postun
|
|
|
|
%systemd_postun_with_restart zrepl.service
|
|
|
|
|
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root)
|
|
|
|
%license LICENSE
|
|
|
|
%{_bindir}/zrepl
|
|
|
|
%config %{_unitdir}/zrepl.service
|
|
|
|
%dir %{_sysconfdir}/zrepl
|
|
|
|
%config %{_sysconfdir}/zrepl/zrepl.yml
|
|
|
|
%{_datadir}/zsh/site-functions/_zrepl
|
|
|
|
%{_datadir}/bash-completion/completions/zrepl
|
|
|
|
%{_datadir}/doc/zrepl
|
|
|
|
|
|
|
|
%changelog
|
|
|
|
# TODO: auto-fill changelog from git? -> need same solution for debian
|