Initial commit on c9s

Resolves: RHEL-59005
This commit is contained in:
Bryn M. Reeves 2024-12-18 19:15:51 +00:00
parent ba6f261495
commit 9087007ffc
3 changed files with 144 additions and 0 deletions

1
.gitignore vendored
View File

@ -0,0 +1 @@
/snapm-0.4.0.tar.gz

142
snapm.spec Normal file
View File

@ -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 <bmr@redhat.com> - 0.4.0-1
- Initial commit on c9s
Resolves: RHEL-59005

1
sources Normal file
View File

@ -0,0 +1 @@
SHA512 (snapm-0.4.0.tar.gz) = d4829bef312212e0b122c241235cce6520dc1c37e11dbe32d1882485a2d81e94aa396d0957c13fee848e472ab3efcad18b262c5bfbb9a7fd08f74497d34f97ba