commit
943f0ab96d
166
python-rtslib.spec
Normal file
166
python-rtslib.spec
Normal file
@ -0,0 +1,166 @@
|
|||||||
|
%bcond_without python2
|
||||||
|
%bcond_with python3
|
||||||
|
|
||||||
|
%global oname rtslib-fb
|
||||||
|
|
||||||
|
Name: python-rtslib
|
||||||
|
Version: 2.1.70
|
||||||
|
Release: 2
|
||||||
|
Summary: Python object API for Linux kernel LIO SCSI target
|
||||||
|
|
||||||
|
License: ASL 2.0
|
||||||
|
URL: https://github.com/open-iscsi/%{oname}
|
||||||
|
Source0: %{url}/archive/v%{version}/%{oname}-%{version}.tar.gz
|
||||||
|
Source1: target.service
|
||||||
|
|
||||||
|
BuildArch: noarch
|
||||||
|
BuildRequires: epydoc, systemd-units
|
||||||
|
Requires(post): systemd
|
||||||
|
Requires(preun): systemd
|
||||||
|
Requires(postun): systemd
|
||||||
|
|
||||||
|
Provides: python-rtslib-doc
|
||||||
|
Obsoletes: python-rtslib-doc
|
||||||
|
|
||||||
|
%description
|
||||||
|
%{name} is a python object API for generic Linux SCSI kernel target
|
||||||
|
which includes the 'target' service and targetctl tool for restoring
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
%if %{with python2}
|
||||||
|
%package -n python2-rtslib
|
||||||
|
Summary: Python2 object API for Linux kernel LIO SCSI target
|
||||||
|
BuildRequires: python2-devel, python2-setuptools
|
||||||
|
Requires: python2-kmod, python2-six, python2-pyudev
|
||||||
|
%{?python_provide:%python_provide python2-rtslib}
|
||||||
|
|
||||||
|
%description -n python2-rtslib
|
||||||
|
python2-rtslib is a python object API for generic Linux SCSI kernel
|
||||||
|
target which includes the 'target' service and targetctl tool for
|
||||||
|
restoring configuration.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with python3}
|
||||||
|
%package -n python3-rtslib
|
||||||
|
Summary: Python3 object API for Linux kernel LIO SCSI target
|
||||||
|
BuildRequires: python3-devel, python3-setuptools
|
||||||
|
Requires: python3-kmod, python3-six, python3-pyudev
|
||||||
|
%{?python_provide:%python_provide python3-rtslib}
|
||||||
|
|
||||||
|
%description -n python3-rtslib
|
||||||
|
python3-rtslib is a python object API for generic Linux SCSI kernel
|
||||||
|
target which includes the 'target' service and targetctl tool for
|
||||||
|
restoring configuration.
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%package -n target-restore
|
||||||
|
Summary: Systemd service for targetcli/rtslib
|
||||||
|
%if %{with python3}
|
||||||
|
Requires: python3-rtslib = %{version}-%{release}
|
||||||
|
%else
|
||||||
|
Requires: python2-rtslib = %{version}-%{release}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%description -n target-restore
|
||||||
|
Systemd service to restore the LIO kernel target settings on system
|
||||||
|
restart.
|
||||||
|
|
||||||
|
%package_help
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -n %{oname}-%{version} -p1
|
||||||
|
|
||||||
|
%if %{with python3}
|
||||||
|
rm -rf %{py3dir}
|
||||||
|
cp -a . %{py3dir}
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%build
|
||||||
|
%if %{with python2}
|
||||||
|
%py2_build
|
||||||
|
mkdir -p doc/html
|
||||||
|
epydoc --no-sourcecode --html -n rtslib -o doc/html rtslib/*.py
|
||||||
|
%endif
|
||||||
|
|
||||||
|
gzip --stdout doc/targetctl.8 > doc/targetctl.8.gz
|
||||||
|
gzip --stdout doc/saveconfig.json.5 > doc/saveconfig.json.5.gz
|
||||||
|
|
||||||
|
%if 0%{?with_python3}
|
||||||
|
pushd %{py3dir}
|
||||||
|
%py3_build
|
||||||
|
popd
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%install
|
||||||
|
%if %{with python3}
|
||||||
|
pushd %{py3dir}
|
||||||
|
%py3_install
|
||||||
|
popd
|
||||||
|
%if %{with python2}
|
||||||
|
%{__python2} setup.py install --skip-build --root %{buildroot} --install-scripts py2scripts
|
||||||
|
rm -rf %{buildroot}/py2scripts
|
||||||
|
%endif
|
||||||
|
%else
|
||||||
|
%if %{with python2}
|
||||||
|
%py2_install
|
||||||
|
%endif
|
||||||
|
%endif
|
||||||
|
|
||||||
|
mkdir -p %{buildroot}%{_mandir}/man8/
|
||||||
|
mkdir -p %{buildroot}%{_mandir}/man5/
|
||||||
|
mkdir -p %{buildroot}%{_unitdir}
|
||||||
|
mkdir -p %{buildroot}%{_sysconfdir}/target/backup
|
||||||
|
mkdir -p %{buildroot}%{_localstatedir}/target/pr
|
||||||
|
mkdir -p %{buildroot}%{_localstatedir}/target/alua
|
||||||
|
install -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/target.service
|
||||||
|
install -m 644 doc/targetctl.8.gz %{buildroot}%{_mandir}/man8/
|
||||||
|
install -m 644 doc/saveconfig.json.5.gz %{buildroot}%{_mandir}/man5/
|
||||||
|
|
||||||
|
%post -n target-restore
|
||||||
|
%systemd_post target.service
|
||||||
|
|
||||||
|
%preun -n target-restore
|
||||||
|
%systemd_preun target.service
|
||||||
|
|
||||||
|
%postun -n target-restore
|
||||||
|
%systemd_postun_with_restart target.service
|
||||||
|
|
||||||
|
%if %{with python2}
|
||||||
|
%files -n python2-rtslib
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%license COPYING
|
||||||
|
%{python2_sitelib}/*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%if %{with python3}
|
||||||
|
%files -n python3-rtslib
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%license COPYING
|
||||||
|
%{python3_sitelib}/*
|
||||||
|
%endif
|
||||||
|
|
||||||
|
%files -n target-restore
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%{_bindir}/targetctl
|
||||||
|
%{_unitdir}/target.service
|
||||||
|
%dir %{_sysconfdir}/target
|
||||||
|
%dir %{_sysconfdir}/target/backup
|
||||||
|
%dir %{_localstatedir}/target
|
||||||
|
%dir %{_localstatedir}/target/pr
|
||||||
|
%dir %{_localstatedir}/target/alua
|
||||||
|
|
||||||
|
%files help
|
||||||
|
%defattr(-,root,root)
|
||||||
|
%if %{with python2}
|
||||||
|
%doc doc/html
|
||||||
|
%endif
|
||||||
|
%doc README.md doc/getting_started.md
|
||||||
|
%{_mandir}/man8/targetctl.8.gz
|
||||||
|
%{_mandir}/man5/saveconfig.json.5.gz
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Wed 1 1 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.1.70-2
|
||||||
|
- Strenthen spec
|
||||||
|
|
||||||
|
* Wed Sep 18 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.1.70-1
|
||||||
|
- Package init
|
||||||
BIN
rtslib-fb-2.1.70.tar.gz
Normal file
BIN
rtslib-fb-2.1.70.tar.gz
Normal file
Binary file not shown.
15
target.service
Normal file
15
target.service
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Restore LIO kernel target configuration
|
||||||
|
Requires=sys-kernel-config.mount
|
||||||
|
After=sys-kernel-config.mount network.target local-fs.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
RemainAfterExit=yes
|
||||||
|
ExecStart=/usr/bin/targetctl restore
|
||||||
|
ExecStop=/usr/bin/targetctl clear
|
||||||
|
SyslogIdentifier=target
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user