Adds SRIOV srpm/s and container image/s to suse-edge/Factory (EDGE-1535) #282
Reference in New Issue
Block a user
Delete Branch "antaloala/Factory:edge-1535"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR is to include several commits, one per each of the following SRIOV packaging artifacts:
(deeper indentation used in some lines below tries to show which images are created from which srpm:s)
[srpm]
mstflint(required in thesriov-network-operator-config-daemonimage, not provided/available by/from BCL)[srpm]
sriov-network-operator-------------------> [suse-edge/Factory folder:]sriov-network-operator/sriov-network-manager--------------> [suse-edge/Factory folder:]sriov-network-operator-manager-image/sriov-network-config-daemon-------> [suse-edge/Factory folder:]sriov-network-operator-config-daemon-image/sriov-network-webhook--------------> [suse-edge/Factory folder:]sriov-network-operator-webhook-image/[srpm]
sriov-cni-----------------------------------> [suse-edge/Factory folder:]sriov-cni/sriov-cni-----------------------------> [suse-edge/Factory folder:]sriov-cni-image/[srpm]
ib-sriov-cni-------------------------------> [suse-edge/Factory folder:]ib-sriov-cni/ib-sriov-cni-------------------------> [suse-edge/Factory folder:]ib-sriov-cni-image/[srpm]
sriov-network-device-plugin-------------> [suse-edge/Factory folder:]sriov-network-device-plugin/sriov-network-device-plugin-------> [suse-edge/Factory folder:]sriov-network-device-plugin-image[srpm]
network-resources-injector--------------> [suse-edge/Factory folder:]network-resources-injector/network-resources-injector--------> [suse-edge/Factory folder:]network-resources-injector-image[srpm]
node-features-discovery--------------> [suse-edge/Factory folder:]node-features-discovery/node-features-discovery--------> [suse-edge/Factory folder:]node-features-discovery-imageA final commit to update the default values in the (already existing in suse-edge/Factory)
sriov-network-operatorHelm chart (to point to the new images); this commit updating also the default values in thesriov-nfdsubchart.Commits are being pushed to this ongoing PR once having assured the involved artifact is properly built (OBS server builds through a parallel OBS home project's subproject created, holding all these artifacts/packages: https://build.opensuse.org/project/show/home:antaloala:sriov-test)
Some of the comments are applying to all the specfiles.
Also don't forget to bump the chart version to reflect the fact we made a change.
@@ -0,0 +42,4 @@%build%define cgoenabled "0"%define gotags "no_openssl"Can you add a comment that these two are set like this upstream. It feels weird otherwise to define them like this
@@ -0,0 +50,4 @@%installinstall -D -m0755 ib-sriov %{buildroot}%{_bindir}/ib-sriovinstall -D -m0755 images/entrypoint.sh %{buildroot}/entrypoint.sh%{_libexecdir}/ib-sriov-cni/entrypoint.shwould make more sense imho, and then in Dockerfile use/usr/libexec/...as entrypoint.Discussed offline, would deviate too much from upstream Dockerfiles and make maintenance more difficult
@@ -0,0 +1,91 @@#If this is verbatim from openSUSE Factory or better from SLFO, then we usually do a git submodule to link to it.
When deciding (with Steven) how to handle this missing "mstflint" rpm (rancher/ecm colleagues take it -during the image generation- from a centOS repo) we finally agreed to better create our own rpm (in suse-edge/Factory) and so avoiding any dependency with BCL ... under the assumption this mstflint was not raising other dependencies to take care of (which, fortunately, is not the case.
Note the mstflint package from openSUSE:Factory looks to be some kind of "unmaintained" (it is based on upstream version 1.25.00-1 which is 2 years older than latest 1.33.00-1 I am now moving to as part of EDGE-1637)
It looks like it is actually included in SLES https://build.opensuse.org/package/show/SUSE:SLE-15-SP6:GA/mstflint - I don't see a version for SP7, but can we use that instead?
Looking at SCC we can see that version has been inherited by SP7 https://scc.suse.com/packages/37997463
Then, if we all agree, we can (re)use that existing mstflint rpm and so avoiding to have to build (and keep) our own one.
I am then removing the mstflint package (folder) from this PR.
+1 on re-using it, if it looks like it's unmaintained and we want it updated we can have a discussion with BCL or do it ourself, but let's postpone that to when we need it
@@ -0,0 +6,4 @@FROM registry.suse.com/bci/bci-base:$SLE_VERSION AS baseCOPY --from=micro / /installroot/RUN if [ "$(uname -m)" != "s390x" ]; then \I'd keep this one simple and just don't care about s390x as we don't support that architecture
@@ -0,0 +94,4 @@%files common%license LICENSE%doc README.md/bindataA pattern that can be used for this use-case is to use
%{datadir}/sriov-network-operatorand have aWORKDIRstatement in the Dockerfile pointing to that directory.As the other one, would deviate too much from upstream Dockerfile then, and make it harder to maintain.
WIP: Adds SRIOV srpm/s and container image/s to suse-edge/Factory (EDGE-1535)to Adds SRIOV srpm/s and container image/s to suse-edge/Factory (EDGE-1535)LGTM, just a nit about commits, I'm happy with the 1 commit per package thing, but can you squash those additional fix commits into their respective package commit, to make it easier to read the commit history.
If you want to add details about the choices we made in the commits please do it in the commits body (the titles are already long enough 😅)