Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rpm: Update virtualization packages #9159

Merged
merged 7 commits into from
Feb 10, 2023

Conversation

andreabolognani
Copy link
Contributor

What this PR does / why we need it:

Update virtualization packages. Specifically:

  • QEMU (7.1.0 → 7.2.0)
  • libvirt (8.10.0 → 9.0.0)
  • SeaBIOS (1.16.0 → 1.16.1)
  • EDKII (20220826 → 20221207)
  • passt (20221026 → 20221110)
  • virtiofsd (1.4.0 → 1.5.0)
  • swtpm (0.7.0 → 0.8.0)

Release note:

This version of KubeVirt includes upgraded virtualization technology based on libvirt 9.0.0 and QEMU 7.2.0.
Each new release of libvirt and QEMU contains numerous improvements and bug fixes.

@kubevirt-bot
Copy link
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@kubevirt-bot kubevirt-bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. release-note Denotes a PR that will be considered when it comes time to generate release notes. dco-signoff: no Indicates the PR's author has not DCO signed all their commits. size/XXL labels Feb 2, 2023
@andreabolognani
Copy link
Contributor Author

/cc @jean-edouard

@kubevirt-bot kubevirt-bot added dco-signoff: yes Indicates the PR's author has DCO signed all their commits. and removed dco-signoff: no Indicates the PR's author has not DCO signed all their commits. labels Feb 2, 2023
@andreabolognani
Copy link
Contributor Author

@rmohr please take a look at the commit "rpm: Manually fix URL for passt package". Is this something that we can address in bazeldnf?

@andreabolognani
Copy link
Contributor Author

Note that the PR is currently marked as draft because libvirt 9.0.0 is not available in CentOS Stream 9 yet. That should hopefully change next week :)

@rmohr
Copy link
Member

rmohr commented Feb 2, 2023

@rmohr please take a look at the commit "rpm: Manually fix URL for passt package". Is this something that we can address in bazeldnf?

Yes definitely. Is the package pinned? If not, we should fix it very soon, because we could break automatic version bumps of the unpinned packages.

@andreabolognani
Copy link
Contributor Author

Yes definitely.

So we would just always generate fully escaped URLs? That sounds like a good idea in general.

I haven't looked at the logic handling this, so I'm unclear on how much of the generated URL is assembled by bazeldnf from smaller building blocks and how much is taken verbatim from other sources such as the repository's repodata files.

Is the package pinned? If not, we should fix it very soon, because we could break automatic version bumps of the unpinned packages.

It is pinned.

Moreover, the third-party repository that's currently used is somehow not triggering the issue. I think that might be because its baseurl already contains an escaped caret.

This variable is used in hack/rpm-deps.sh and it needs to be
possible to override it when calling 'make rpm-deps', as is the
case for all other variables of the same kind.

Fixes: 68db282
Signed-off-by: Andrea Bolognani <abologna@redhat.com>
We want to be able to pin the version for this component, just
like we already do for all other virtualization packages.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
Specifically:

       QEMU    7.1.0 -> 7.2.0
    libvirt   8.10.0 -> 9.0.0
    SeaBIOS   1.16.0 -> 1.16.1
      EDKII 20220826 -> 20221207
      passt 20221026 -> 20221110
  virtiofsd    1.4.0 -> 1.5.0
      swtpm    0.7.0 -> 0.8.0

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
It hasn't actually been needed since the switch to CentOS
Stream 9. See

  https://bugzilla.redhat.com/show_bug.cgi?id=1989514#c19

and later comments for more details.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
The URL generated by 'make rpm-deps' contains a caret, which
bazel loudly complains about at build time:

  Error downloading passt-0^20221110.g4129764-1.el9.x86_64.rpm: Illegal character in path at index 78:
  https://mirror.stream.centos.org/9-stream/AppStream/x86_64/os/Packages/passt-0^20221110.g4129764-1.el9.x86_64.rpm

For whatever reason, this was not a problem with the previous URL
for the passt package, which also contained a caret. In that case,
the unescaped caret only appeared after one that was properly
escaped, which apparently made things okay somehow?

In any case, escaping the caret makes bazel happy and this manual
tweak successfully survives a 'make rpm-deps' run, so we can work
around the problem this way until a proper solution is found.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
passt is part of CentOS Stream 9 now, so we no longer need
to use a custom repository for it.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
To match the updated RPM package.

Signed-off-by: Andrea Bolognani <abologna@redhat.com>
@andreabolognani andreabolognani marked this pull request as ready for review February 7, 2023 15:02
@kubevirt-bot kubevirt-bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Feb 7, 2023
@andreabolognani
Copy link
Contributor Author

A libvirt 9.0.0 build has made its way into CentOS Stream 9 composes, so there's no longer anything (that I'm currently aware of ;) preventing this from being merged.

@andreabolognani
Copy link
Contributor Author

The bazel issue with the passt URL was no longer showing up locally, so I figured I'd drop the corresponding commit and see whether CI would be okay with that. Well, it was not :(

@andreabolognani
Copy link
Contributor Author

/retest

@andreabolognani
Copy link
Contributor Author

The fossa test is failing but it seems to be unrelated to my changes. Everything else is green.

Anyone willing to lgtm/approve?

@alicefr
Copy link
Member

alicefr commented Feb 10, 2023

/lgtm

This also fixes make rpm-deps that is currently broken as the edk-ovmf package version is outdated and it fails to check it from the centos repo

@kubevirt-bot kubevirt-bot added the lgtm Indicates that a PR is ready to be merged. label Feb 10, 2023
@rmohr
Copy link
Member

rmohr commented Feb 10, 2023

/approve

@kubevirt-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: rmohr

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@kubevirt-bot kubevirt-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 10, 2023
@andreabolognani
Copy link
Contributor Author

Thanks a lot @alicefr @rmohr :)

Any ideas about the FOSSA job? Should we just try running it again, see whether it succeeds this time around?

@xpivarc
Copy link
Member

xpivarc commented Feb 10, 2023

Thanks a lot @alicefr @rmohr :)

Any ideas about the FOSSA job? Should we just try running it again, see whether it succeeds this time around?

It is not a required job and is a known issue. Unfortunately.

@jean-edouard
Copy link
Contributor

/retest

@kubevirt-bot
Copy link
Contributor

kubevirt-bot commented Feb 10, 2023

@andreabolognani: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-kubevirt-fossa 065f00d link false /test pull-kubevirt-fossa

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@fossedihelm
Copy link
Contributor

/cherrypick release-0.59

@kubevirt-bot
Copy link
Contributor

@fossedihelm: new pull request created: #9264

In response to this:

/cherrypick release-0.59

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. dco-signoff: yes Indicates the PR's author has DCO signed all their commits. lgtm Indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/XXL
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants