Compare commits

...

No commits in common. "c10s" and "c8" have entirely different histories.
c10s ... c8

11 changed files with 152 additions and 248 deletions

View File

@ -1 +0,0 @@
1

63
.gitignore vendored
View File

@ -1,62 +1 @@
/rtslib-1.99.1.git644eece.tar.gz SOURCES/rtslib-fb-2.1.75.tar.gz
/v2.1.fb1
/v2.1.fb2
/v2.1.fb3
/v2.1.fb4
/v2.1.fb5
/v2.1.fb6
/v2.1.fb7
/v2.1.fb8
/v2.1.fb9
/v2.1.fb10
/v2.1.fb11
/v2.1.fb12
/v2.1.fb13
/rtslib-fb-2.1.fb14.tar.gz
/rtslib-fb-2.1.fb15.tar.gz
/rtslib-fb-2.1.fb17.tar.gz
/rtslib-fb-2.1.fb18.tar.gz
/rtslib-fb-2.1.fb19.tar.gz
/rtslib-fb-2.1.fb20.tar.gz
/rtslib-fb-2.1.fb21.tar.gz
/rtslib-fb-2.1.fb22.tar.gz
/rtslib-fb-2.1.fb23.tar.gz
/rtslib-fb-2.1.fb24.tar.gz
/rtslib-fb-2.1.fb26.tar.gz
/rtslib-fb-2.1.fb27.tar.gz
/rtslib-fb-2.1.fb28.tar.gz
/rtslib-fb-2.1.fb30.tar.gz
/rtslib-fb-2.1.fb32.tar.gz
/rtslib-fb-2.1.fb33.tar.gz
/rtslib-fb-2.1.fb34.tar.gz
/rtslib-fb-2.1.fb35.tar.gz
/rtslib-fb-2.1.fb36.tar.gz
/rtslib-fb-2.1.fb37.tar.gz
/rtslib-fb-2.1.fb38.tar.gz
/rtslib-fb-2.1.fb39.tar.gz
/rtslib-fb-2.1.fb40.tar.gz
/rtslib-fb-2.1.fb41.tar.gz
/rtslib-fb-2.1.fb43.tar.gz
/rtslib-fb-2.1.fb44.tar.gz
/rtslib-fb-2.1.fb45.tar.gz
/rtslib-fb-2.1.fb46.tar.gz
/rtslib-fb-2.1.fb47.tar.gz
/rtslib-fb-2.1.fb48.tar.gz
/rtslib-fb-2.1.fb49.tar.gz
/rtslib-fb-2.1.fb50.tar.gz
/rtslib-fb-2.1.fb51.tar.gz
/rtslib-fb-2.1.fb52.tar.gz
/rtslib-fb-2.1.fb53.tar.gz
/rtslib-fb-2.1.fb57.tar.gz
/rtslib-fb-2.1.fb58.tar.gz
/rtslib-fb-2.1.fb59.tar.gz
/rtslib-fb-2.1.fb60.tar.gz
/rtslib-fb-2.1.fb63.tar.gz
/rtslib-fb-2.1.fb65.tar.gz
/rtslib-fb-2.1.fb66.tar.gz
/rtslib-fb-2.1.fb67.tar.gz
/rtslib-fb-2.1.fb69.tar.gz
/rtslib-fb-2.1.73.tar.gz
/rtslib-fb-2.1.74.tar.gz
/rtslib-fb-2.1.75.tar.gz
/rtslib-fb-2.1.76.tar.gz

1
.python-rtslib.metadata Normal file
View File

@ -0,0 +1 @@
358077a7fef2e71230a1b5c87b1765c9292f17f6 SOURCES/rtslib-fb-2.1.75.tar.gz

View File

@ -1,35 +0,0 @@
From c1378f28f7abce6f8993a43c34d5e287b092bb1e Mon Sep 17 00:00:00 2001
From: Maurizio Lombardi <mlombard@redhat.com>
Date: Wed, 2 Aug 2023 12:00:41 +0200
Subject: [PATCH] rtslib: explicitely import "kmod.error" and "kmod.Kmod"
While updating python-kmod to be able to be compiled with Cython 3.0,
I encountered a failure due to rtslib not finding the "error" and "Kmod"
modules.
$ targetcli
module 'kmod' has no attribute 'error'
If I explicitely import those two modules the failure goes away.
Signed-off-by: Maurizio Lombardi <mlombard@redhat.com>
---
rtslib/utils.py | 2 ++
1 file changed, 2 insertions(+)
diff --git a/rtslib/utils.py b/rtslib/utils.py
index 61e486a80836..630ebb721465 100644
--- a/rtslib/utils.py
+++ b/rtslib/utils.py
@@ -423,6 +423,8 @@ def modprobe(module):
try:
import kmod
+ import kmod.error
+ import kmod.Kmod
except ImportError:
process = subprocess.Popen(("modprobe", module),
stdout=subprocess.PIPE,
--
2.39.3

15
SOURCES/target.service Normal file
View 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

View File

@ -1,68 +1,97 @@
%if 0%{?fedora} || 0%{?rhel} > 7
# Enable python3 build by default
%bcond_without python3
%else
%bcond_with python3
%endif
%if 0%{?rhel} > 7
# Disable python2 build by default
# disable also docs build as they require python2
%bcond_with python2
%bcond_with docs
%else
%bcond_without python2
%bcond_without docs
%endif
%global oname rtslib-fb %global oname rtslib-fb
# epydoc is gone, so disable for now
%bcond_with apidocs
Name: python-rtslib Name: python-rtslib
License: Apache-2.0 License: ASL 2.0
Group: System Environment/Libraries
Summary: API for Linux kernel LIO SCSI target Summary: API for Linux kernel LIO SCSI target
Version: 2.1.76 Version: 2.1.75
Release: 12%{?dist} Release: 4%{?dist}
URL: https://github.com/open-iscsi/%{oname} URL: https://github.com/open-iscsi/%{oname}
Source: %{url}/archive/v%{version}/%{oname}-%{version}.tar.gz Source: %{url}/archive/v%{version}/%{oname}-%{version}.tar.gz
Source1: target.service
Patch0: 0001-Turn-off-unsupported-fabrics.patch Patch0: 0001-Turn-off-unsupported-fabrics.patch
Patch1: 0002-rtslib-explicitely-import-kmod.error-and-kmod.Kmod.patch Patch1: 0002-default_dbroot.patch
Patch2: 0003-default_dbroot.patch
BuildArch: noarch BuildArch: noarch
%if %{with apidocs} BuildRequires: systemd-units
BuildRequires: epydoc Requires(post): systemd
%endif Requires(preun): systemd
BuildRequires: systemd Requires(postun): systemd
%global _description\ %global _description\
API for generic Linux SCSI kernel target. Includes the 'target'\ API for generic Linux SCSI kernel target. Includes the 'target'\
service and targetctl tool for restoring configuration. service and targetctl tool for restoring configuration.\
%description %_description %description %_description
%if %{with python2}
%package -n python2-rtslib
Summary: %summary
%if %{with apidocs} BuildRequires: python2-devel
BuildRequires: python2-setuptools
BuildRequires: epydoc
Requires: python2-kmod
Requires: python2-six
Requires: python2-pyudev
%{?python_provide:%python_provide python2-rtslib}
%description -n python2-rtslib %_description
%endif # with python2
%if %{with docs}
%package doc %package doc
Summary: Documentation for python-rtslib Summary: Documentation for python-rtslib
Requires: python3-rtslib = %{version}-%{release} Requires: python2-rtslib = %{version}-%{release}
%description doc %description doc
API documentation for rtslib, to configure the generic Linux SCSI API documentation for rtslib, to configure the generic Linux SCSI
multiprotocol kernel target. multiprotocol kernel target.
%endif %endif # with docs
%if %{with python3}
%package -n python3-rtslib %package -n python3-rtslib
Summary: API for Linux kernel LIO SCSI target Summary: API for Linux kernel LIO SCSI target
BuildRequires: python3-devel BuildRequires: python3-devel
BuildRequires: python3-setuptools BuildRequires: python3-setuptools
BuildRequires: python3-kmod
BuildRequires: python3-six
BuildRequires: python3-pyudev
Requires: python3-kmod Requires: python3-kmod
Requires: python3-six Requires: python3-six
Requires: python3-pyudev Requires: python3-pyudev
%if ! %{with apidocs}
Obsoletes: %{name}-doc < %{version}-%{release}
%endif
%description -n python3-rtslib %description -n python3-rtslib
API for generic Linux SCSI kernel target. API for generic Linux SCSI kernel target.
%endif # with python3
%package -n target-restore %package -n target-restore
Summary: Systemd service for targetcli/rtslib Summary: Systemd service for targetcli/rtslib
Requires: python3-rtslib = %{version}-%{release} %if %{with python3}
Requires(post): systemd Requires: python3-rtslib = %{version}-%{release}
Requires(preun): systemd %else
Requires(postun): systemd Requires: python2-rtslib = %{version}-%{release}
%endif # with python3
%description -n target-restore %description -n target-restore
Systemd service to restore the LIO kernel target settings Systemd service to restore the LIO kernel target settings
@ -73,20 +102,44 @@ on system restart.
%setup -q -n %{oname}-%{version} %setup -q -n %{oname}-%{version}
%patch0 -p1 %patch0 -p1
%patch1 -p1 %patch1 -p1
%patch2 -p1
%if %{with python3}
rm -rf %{py3dir}
cp -a . %{py3dir}
%endif # with python3
%build %build
%py3_build %if %{with python2}
%py2_build
%if %{with apidocs}
mkdir -p doc/html mkdir -p doc/html
epydoc --no-sourcecode --html -n rtslib -o doc/html rtslib/*.py epydoc --no-sourcecode --html -n rtslib -o doc/html rtslib/*.py
%endif %endif # with python2
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 # with python3
%install %install
# remove py2 scripts if py3 enabled # remove py2 scripts if py3 enabled
%if %{with python3}
pushd %{py3dir}
%py3_install %py3_install
popd
%if %{with python2}
%{__python2} setup.py install --skip-build --root %{buildroot} --install-scripts py2scripts
rm -rf %{buildroot}/py2scripts
%endif # with python2
%else
%if %{with python2}
%py2_install
%endif # with python2
%endif # with python3
mkdir -p %{buildroot}%{_mandir}/man8/ mkdir -p %{buildroot}%{_mandir}/man8/
mkdir -p %{buildroot}%{_mandir}/man5/ mkdir -p %{buildroot}%{_mandir}/man5/
@ -94,9 +147,9 @@ mkdir -p %{buildroot}%{_unitdir}
mkdir -p %{buildroot}%{_sysconfdir}/target/backup mkdir -p %{buildroot}%{_sysconfdir}/target/backup
mkdir -p %{buildroot}%{_localstatedir}/target/pr mkdir -p %{buildroot}%{_localstatedir}/target/pr
mkdir -p %{buildroot}%{_localstatedir}/target/alua mkdir -p %{buildroot}%{_localstatedir}/target/alua
install -m 644 systemd/target.service %{buildroot}%{_unitdir}/target.service install -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/target.service
install -m 644 doc/targetctl.8 %{buildroot}%{_mandir}/man8/ install -m 644 doc/targetctl.8.gz %{buildroot}%{_mandir}/man8/
install -m 644 doc/saveconfig.json.5 %{buildroot}%{_mandir}/man5/ install -m 644 doc/saveconfig.json.5.gz %{buildroot}%{_mandir}/man5/
%post -n target-restore %post -n target-restore
%systemd_post target.service %systemd_post target.service
@ -107,11 +160,19 @@ install -m 644 doc/saveconfig.json.5 %{buildroot}%{_mandir}/man5/
%postun -n target-restore %postun -n target-restore
%systemd_postun_with_restart target.service %systemd_postun_with_restart target.service
%if %{with python2}
%files -n python2-rtslib
%license COPYING
%{python2_sitelib}/*
%doc README.md doc/getting_started.md
%endif # with python2
%if %{with python3}
%files -n python3-rtslib %files -n python3-rtslib
%license COPYING %license COPYING
%{python3_sitelib}/rtslib* %{python3_sitelib}/*
%doc README.md doc/getting_started.md %doc README.md doc/getting_started.md
%endif # with python3
%files -n target-restore %files -n target-restore
%{_bindir}/targetctl %{_bindir}/targetctl
@ -121,131 +182,67 @@ install -m 644 doc/saveconfig.json.5 %{buildroot}%{_mandir}/man5/
%dir %{_localstatedir}/target %dir %{_localstatedir}/target
%dir %{_localstatedir}/target/pr %dir %{_localstatedir}/target/pr
%dir %{_localstatedir}/target/alua %dir %{_localstatedir}/target/alua
%{_mandir}/man8/targetctl.8* %{_mandir}/man8/targetctl.8.gz
%{_mandir}/man5/saveconfig.json.5* %{_mandir}/man5/saveconfig.json.5.gz
%if %{with apidocs} %if %{with python2}
%files doc %files doc
%doc doc/html %doc doc/html
%endif %endif # with python2
%changelog %changelog
* Tue Nov 05 2024 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-12
- Rebuild for gating test changes
* Thu Oct 31 2024 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-11 * Wed Jun 15 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.75-4
- Add gating.yaml - Updates to the gating tests from mhoyer
* Wed Oct 30 2024 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-10 * Wed Jun 15 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.75-3
- Fix RHEL-64990 (dbroot fix and disable unsupported fabrics) - Update the gating tests
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 2.1.76-9 * Wed Jun 15 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.75-2
- Bump release for October 2024 mass rebuild: - Fix the gating tests
Resolves: RHEL-64018
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 2.1.76-8 * Mon Jun 06 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.75-1
- Bump release for June 2024 mass rebuild - Update to the latest upstream version
* Mon Feb 12 2024 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-7 * Mon Oct 26 2020 Maurizio Lombardi <mlombard@redhat.com> - 2.1.74-1
- Migrated to SPDX license - Update to the latest upstream version
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.76-6 * Tue Jul 21 2020 Maurizio Lombardi <mlombard@redhat.com> - 2.1.73-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - Merge a fix to prevent a potential data leak when saving the config file
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.76-5 * Thu Jun 25 2020 Maurizio Lombardi <mlombard@redhat.com> - 2.1.73-1
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Wed Aug 02 2023 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-4
- Fix kmod import
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.76-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Fri Jul 07 2023 Python Maint <python-maint@redhat.com> - 2.1.76-2
- Rebuilt for Python 3.12
* Tue Jun 06 2023 Maurizio Lombardi <mlombard@redhat.com> - 2.1.76-1
- Rebase to version 2.1.76
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.75-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.75-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 2.1.75-2
- Rebuilt for Python 3.11
* Mon May 16 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.75-1
- Update to new upstream version - Update to new upstream version
* Wed Mar 30 2022 Maurizio Lombardi <mlombard@redhat.com> - 2.1.74-7 * Mon May 11 2020 Maurizio Lombardi <mlombard@redhat.com> - 2.1.72-1
- Add support for cpus_allowed_list attribute - Update to new upstream version
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.74-6 * Thu Dec 12 2019 Maurizio Lombardi <mlombard@redhat.com> - 2.1.71-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - LIO should use /var/target for its runtime files
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.74-5 * Thu Nov 28 2019 Maurizio Lombardi <mlombard@redhat.com> - 2.1.71-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - Remove support to qla2xxx
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 2.1.74-4 * Tue Nov 19 2019 Maurizio Lombardi <mlombard@redhat.com> - 2.1.71-1
- Rebuilt for Python 3.10 - Update to new upstream version
* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.1.74-3 * Wed May 15 2019 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb69-4
- Rebuilt for updated systemd-rpm-macros - report the correct size for partitions
See https://pagure.io/fesco/issue/2583.
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.74-2 * Thu Jan 17 2019 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb69-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - Disable the FCoE fabric module
* Mon Aug 31 2020 Maurizio Lombardi <mlombard@redhat.com> - 2.1.74-1 * Fri Sep 28 2018 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb69-2
- Disable the unsupported fabrics
* Tue Sep 18 2018 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb69-1
- New upstream version that fixes a syntax error problem with python3
* Wed Sep 05 2018 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb68-1
- New upstream version - New upstream version
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.73-2 * Mon Jun 25 2018 Maurizio Lombardi <mlombard@redhat.com> - 2.1.fb67-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - epydoc is used only with python2 but the latter is not supported in RHEL8
I remove the dependency
* Thu Jun 25 2020 Matt Coleman <matt@datto.com> - 2.1.73-1
- New upstream version
- Use upstream's systemd service
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2.1.fb69-9
- Rebuilt for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.fb69-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Fri Nov 01 2019 Neal Gompa <ngompa13@gmail.com> - 2.1.fb69-7
- Fix file list for python3-rtslib subpackage
- Don't compress manpages in build phase, as rpm auto-compresses manpages
- Move systemd requires to the target-restore subpackage
- Disable building apidocs as epydoc is gone
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 2.1.fb69-6
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2.1.fb69-5
- Rebuilt for Python 3.8
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.fb69-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.fb69-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Oct 12 2018 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.1.fb69-2
- Python2 binary package has been removed
See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal
* Wed Oct 10 2018 Andy Grover <agrover@redhat.com> - 2.1.fb69-1
- New upstream version
- Fix URL so spectool -g works
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.1.fb67-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.1.fb67-4
- Rebuilt for Python 3.7
* Fri Mar 16 2018 Charalampos Stratakis <cstratak@redhat.com> - 2.1.fb67-3 * Fri Mar 16 2018 Charalampos Stratakis <cstratak@redhat.com> - 2.1.fb67-3
- Don't build the Python 2 subpackage on EL > 7 - Don't build the Python 2 subpackage on EL > 7

View File

@ -1,7 +0,0 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}

View File

@ -1,4 +0,0 @@
plan:
import:
url: https://gitlab.com/rh-kernel-stqe/sts
name: /plans/lio/core

View File

@ -1 +0,0 @@
SHA512 (rtslib-fb-2.1.76.tar.gz) = 50bc9f4ebff71cc87fd62036ff9d929fb1e5989be6251b1111904e76a7c026215692dc8930b90552a4ff850c6252338e420fe710993b8c8a0c737b65590a520d