RDO tickets are now tracked in Jira https://issues.redhat.com/projects/RDO/issues/
Bug 1986060 - Package Review: openstack-network-scripts
Summary: Package Review: openstack-network-scripts
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: RDO
Classification: Community
Component: Package Review
Version: trunk
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
: trunk
Assignee: Alan Pevec (Fedora)
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: RDO-XENA
TreeView+ depends on / blocked
 
Reported: 2021-07-26 15:25 UTC by Alex Schultz
Modified: 2021-11-01 13:44 UTC (History)
8 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 2016183 (view as bug list)
Environment:
Last Closed: 2021-10-20 21:46:24 UTC
Embargoed:
apevec: rdo-review+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
RDO 35744 0 None None None 2021-09-23 09:48:54 UTC

Description Alex Schultz 2021-07-26 15:25:31 UTC
Package openstack-network-scripts is build of the network-scripts sub package of initscripts that is no longer shipped in EL9 but we still require it for tripleo/puppet-vswitch.

Git source repository: https://github.com/fedora-sysv/initscripts

Initial spec: https://github.com/mwhahaha/openstack-network-scripts-distgit/blob/main/openstack-network-scripts.spec

Comment 1 Alfredo Moralejo 2021-07-27 11:30:38 UTC
What blocks moving puppet-vswitch to networkmanager using nmcli or nmstate?

Supporting network-scripts by OpenStack team once it has been decided to remove it from RHEL9 by rhel networking may lead to integration issues that expect NetworkManager to be running in hosts. Also, note that the ovs part of network-scripts is a subpackage of openvswitch, so we would need commitment from FDP team tha they will keep supporting it for RHEL9.

Comment 2 Alex Schultz 2021-07-27 13:12:20 UTC
It doesn't work. Currently nmcli does not support all the things that the legacy script does and there is currently no ETA on when it will.  Additionally nmstate cannot apply an ovs configuration so basically it cannot be used at this time.  Related Bug 1660250.  The ovs network manager integration is also lacking in terms of scope in comparison with the ovs version as well.  This unblocks our ability to deploy c9 now while we wait for NetworkManager/nmstate to become production ready.

Comment 4 Alex Schultz 2021-07-28 13:41:56 UTC
Per Bug 1986439, the openvswitch network-scripts will continue to exist unless the upstream removes it.

Comment 5 Karthik Sundaravel 2021-09-14 02:44:31 UTC
Few of the BZs related to the gap between NM and network-scripts are listed below

https://bugzilla.redhat.com/show_bug.cgi?id=2001563
https://bugzilla.redhat.com/show_bug.cgi?id=2001851
https://bugzilla.redhat.com/show_bug.cgi?id=2001792
https://bugzilla.redhat.com/show_bug.cgi?id=2001774

The network-scripts would be required until we have this supported in NM

Comment 6 Alan Pevec (Fedora) 2021-09-19 06:23:09 UTC
CS9 is now at 10.11.1 https://gitlab.com/redhat/centos-stream/rpms/initscripts/-/blob/c9s/initscripts.spec

/me figuring out how to closely track it in RDO Trunk with CS9 distgit as upstream source

Comment 7 Alan Pevec (Fedora) 2021-09-19 22:39:56 UTC
Spec URL: https://apevec.fedorapeople.org/rdo/openstack-network-scripts.spec
SRPM URL: https://apevec.fedorapeople.org/rdo/openstack-network-scripts-10.11.1-1.el9.src.rpm

Decription: Legacy scripts for manipulating of network devices

Comment 8 Alan Pevec (Fedora) 2021-09-19 23:04:08 UTC
$ licensecheck initscripts-10.11.1
initscripts-10.11.1/.packit.yml: *No copyright* UNKNOWN
initscripts-10.11.1/COPYING: GNU General Public License, Version 2
initscripts-10.11.1/Makefile: *No copyright* UNKNOWN
initscripts-10.11.1/README.md: *No copyright* UNKNOWN
initscripts-10.11.1/debugfiles.list: *No copyright* UNKNOWN
initscripts-10.11.1/debugsourcefiles.list: *No copyright* UNKNOWN
initscripts-10.11.1/debugsources.list: *No copyright* UNKNOWN
initscripts-10.11.1/elfbins.list: *No copyright* UNKNOWN
initscripts-10.11.1/initscripts.lang: *No copyright* UNKNOWN
initscripts-10.11.1/initscripts.spec: *No copyright* UNKNOWN

fedora-review tl;dr report
Issues:
=======
- Package does not contain duplicates in %files.
  Note: warning: File listed twice: /etc/sysconfig/network-scripts/ifcfg-lo
=> the same as in original network-scripts:
%{_sysconfdir}/sysconfig/network-scripts/*

%config(noreplace)    %{_sysconfdir}/sysconfig/network-scripts/ifcfg-lo


- Permissions on files are set properly.
  Note: See rpmlint output
=> the same as in original network-scripts:
network-scripts.x86_64: E: missing-call-to-setgroups-before-setuid /usr/sbin/usernetctl
network-scripts.x86_64: E: setuid-binary /usr/sbin/usernetctl root 4755
network-scripts.x86_64: E: non-standard-executable-perm /usr/sbin/usernetctl 4755

Comment 9 Alan Pevec (Fedora) 2021-09-21 00:10:42 UTC
> /me figuring out how to closely track it in RDO Trunk with CS9 distgit as upstream source

I came up with nothing useful yet, but at the moment we could actually grab network-scripts subpackage from CS9 Koji, it is built but then filtered out by the CS9 compose config:

https://kojihub.stream.centos.org/kojifiles/packages/initscripts/10.11.1/1.el9/x86_64/network-scripts-10.11.1-1.el9.x86_64.rpm

Comment 10 Alan Pevec (Fedora) 2021-09-21 01:20:32 UTC
> I came up with nothing useful yet

one approach would be to came up with a smaller diff against CS9 initscripts.spec which we would attempt to apply when CS9 is updated.
https://apevec.fedorapeople.org/rdo/openstack-network-scripts.spec takes %install from https://github.com/mwhahaha/openstack-network-scripts-distgit/blob/main/openstack-network-scripts.spec
the rest are mostly removals from the CS9 spec

diff -u https://gitlab.com/redhat/centos-stream/rpms/initscripts/-/blob/c9s/initscripts.spec https://apevec.fedorapeople.org/rdo/openstack-network-scripts.spec

=> https://apevec.fedorapeople.org/rdo/openstack-network-scripts.diff

Comment 11 Alan Pevec (Fedora) 2021-09-21 12:00:54 UTC
Reviewing openstack-network-scripts.diff compared to Initial spec:

-Requires:         %{name}%{?_isa} = %{version}-%{release}
+Requires:         %{upstream_name}%{?_isa} = %{version}-%{release}

vs

Requires:         initscripts >= %{version}-%{release}

[?] >= is more flexible since initscripts updates in CS9 will not immediately block installation of openstack-network-scripts,
but might miss incompatible CS9 changes. Not sure which is better, not blocking CI or getting signal that

[x] Binary RPM https://apevec.fedorapeople.org/rdo/openstack-network-scripts-10.11.1-1.el9.x86_64.rpm
installs cleanly on current CS9 production compose

[?] Removed Obsoletes: upgrades of network-scripts cannot happen since it is not in CS9 and if it was grabbed from CS9 Koji, installation is prevented by file conflicts

[?] Provides network-scripts for existing Requires: TODO get rid of that later once RDO packages change to explicit Requires: openstack-network-scripts ?
+Provides:         network-scripts = %{version}-%{release}
-Provides:         deprecated()


[x] %install section could break on initscripts upstream changes, considering this a feature to get FTBFS signal
[x] Removed all docs in the RPM, this should be only for deployment tools and not for general usage

@Alfredo wdyt about [?] points?

Comment 12 Alfredo Moralejo 2021-09-21 13:53:34 UTC
My feedback:

(In reply to Alan Pevec (Fedora) from comment #11)
> 
> [?] >= is more flexible since initscripts updates in CS9 will not
> immediately block installation of openstack-network-scripts,
> but might miss incompatible CS9 changes. Not sure which is better, not
> blocking CI or getting signal that
> 

+1 to use >=

> 
> [?] Removed Obsoletes: upgrades of network-scripts cannot happen since it is
> not in CS9 and if it was grabbed from CS9 Koji, installation is prevented by
> file conflicts

Yes, i think we can remove the obsoletes.

> 
> [?] Provides network-scripts for existing Requires: TODO get rid of that
> later once RDO packages change to explicit Requires:
> openstack-network-scripts ?
> +Provides:         network-scripts = %{version}-%{release}
> -Provides:         deprecated()
> 


+1 to provide network-scripts for backwards compatibility.

> 
> 
> @Alfredo wdyt about [?] points?

Comment 13 Alan Pevec (Fedora) 2021-09-22 11:20:01 UTC
>= added and pushed final spec to:
https://github.com/rdo-common/openstack-network-scripts

We will import this to git.centos.org and build as RDO dep in CBS Koji.

Comment 14 Alan Pevec (Fedora) 2021-09-22 11:27:51 UTC
> > [?] Removed Obsoletes: upgrades of network-scripts cannot happen since it is
> > not in CS9 and if it was grabbed from CS9 Koji, installation is prevented by
> > file conflicts
> 
> Yes, i think we can remove the obsoletes.

I had a look at LEAP and afaict for upgrades 8->9 LEAP removes rhel8 network-scripts

Comment 15 Alan Pevec 2021-10-20 21:46:24 UTC
This is now in RDO >=Xena deps for CS9:
https://cbs.centos.org/koji/buildinfo?buildID=35210


Note You need to log in before you can comment on or make changes to this bug.