diff --git a/.gitignore b/.gitignore index e69de29..aacd5b2 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1 @@ +/snapm-0.4.0.tar.gz diff --git a/snapm.spec b/snapm.spec new file mode 100644 index 0000000..d089176 --- /dev/null +++ b/snapm.spec @@ -0,0 +1,142 @@ +%global summary A set of tools for managing snapshots +%global sphinx_docs 1 + +Name: snapm +Version: 0.4.0 +Release: 1%{?dist} +Summary: %{summary} + +License: GPL-2.0-only AND Apache-2.0 +URL: https://github.com/snapshotmanager/snapm +Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz + +BuildArch: noarch + +BuildRequires: make +BuildRequires: python3-setuptools +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: python3-wheel +BuildRequires: python3-boom +BuildRequires: python3-dbus-client-gen +BuildRequires: python3-dbus-python-client-gen +BuildRequires: python3-justbytes +BuildRequires: python3-packaging +BuildRequires: python3-dateutil +BuildRequires: python3-wcwidth +BuildRequires: python3-psutil +BuildRequires: python3-pytest +BuildRequires: lvm2 +BuildRequires: stratisd +BuildRequires: stratis-cli +%if 0%{?sphinx_docs} +BuildRequires: python3-sphinx +BuildRequires: boom-boot +%endif + +Requires: python3-snapm = %{version}-%{release} +Recommends: boom-boot + +%package -n python3-snapm +Summary: %{summary} +%{?python_provide:%python_provide python3-snapm} +Requires: %{__python3} +Requires: python3-boom >= 1.6.4 + +%if 0%{?sphinx_docs} +%package -n python3-snapm-doc +Summary: %{summary} +%endif + +%description +Snapshot manager (snapm) is a tool for managing sets of snapshots on Linux +systems. The snapm tool allows snapshots of multiple volumes to be captured at +the same time, representing the system state at the time the set was created. + +%description -n python3-snapm +Snapshot manager (snapm) is a tool for managing sets of snapshots on Linux +systems. The snapm tool allows snapshots of multiple volumes to be captured at +the same time, representing the system state at the time the set was created. + +This package provides the python3 snapm module. + +%if 0%{?sphinx_docs} +%description -n python3-snapm-doc +Snapshot manager (snapm) is a tool for managing sets of snapshots on Linux +systems. The snapm tool allows snapshots of multiple volumes to be captured at +the same time, representing the system state at the time the set was created. + +This package provides the python3 snapm module documentation in HTML format. +%endif + +%prep +%autosetup -p1 -n snapm-%{version} + +%build +%if 0%{?sphinx_docs} +make %{?_smp_mflags} -C doc html +rm doc/_build/html/.buildinfo +mv doc/_build/html doc/html +rm -rf doc/html/_sources +rm -rf doc/_build +rm -f doc/*.rst +%endif + +%if 0%{?centos} || 0%{?rhel} +%py3_build +%else +%pyproject_wheel +%endif + +%install +%if 0%{?centos} || 0%{?rhel} +%py3_install +%else +%pyproject_install +%endif + +mkdir -p ${RPM_BUILD_ROOT}/%{_mandir}/man8 +install -m 644 man/man8/snapm.8 ${RPM_BUILD_ROOT}/%{_mandir}/man8 + +rm doc/Makefile +rm doc/conf.py + +%check +pytest-3 --log-level=debug -v + +%files +# Main license for snapm (GPLv2) +%license COPYING +# License for snapm.manager.plugins.stratislib (Apache 2.0) +%license COPYING.stratislib +%doc README.md +%{_bindir}/snapm +%doc %{_mandir}/man*/snapm.* + +%files -n python3-snapm +# Main license for snapm (GPLv2) +%license COPYING +# License for snapm.manager.plugins.stratislib (Apache 2.0) +%license COPYING.stratislib +%doc README.md +%{python3_sitelib}/%{name}/ +%if 0%{?centos} || 0%{?rhel} +%{python3_sitelib}/%{name}-*.egg-info/ +%else +%{python3_sitelib}/%{name}*.dist-info/ +%endif + +%if 0%{?sphinx_docs} +%files -n python3-snapm-doc +# Main license for snapm (GPLv2) +%license COPYING +# License for snapm.manager.plugins.stratislib (Apache 2.0) +%license COPYING.stratislib +%doc README.md +%doc doc +%endif + +%changelog +* Wed Dec 18 2024 Bryn M. Reeves - 0.4.0-1 +- Initial commit on c9s + Resolves: RHEL-59005 diff --git a/sources b/sources new file mode 100644 index 0000000..45c1aca --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (snapm-0.4.0.tar.gz) = d4829bef312212e0b122c241235cce6520dc1c37e11dbe32d1882485a2d81e94aa396d0957c13fee848e472ab3efcad18b262c5bfbb9a7fd08f74497d34f97ba