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

[rhaos-maint] Manual Backports #357

Open
wants to merge 6 commits into
base: rhaos-maint
Choose a base branch
from

Conversation

lsm5
Copy link
Member

@lsm5 lsm5 commented Feb 19, 2025

Backports of some commits from main branch. FYI, rhaos-maint is used by openshift 4.16 and 4.17.

We won't be cutting any releases from this branch, so packagers can use whatever version exists in container.te for rpm version. Both main and rhaos-maint are currently expected to be the same except for commit 77c681f

I'm also backporting packit and TMT config as-is from main branch, but those should probably be updated to only run on the c9s or rhel 9 and make them openshift specific if possible.

Summary by Sourcery

This pull request backports changes to the rhaos-maint branch. It updates the packit configuration to include aarch64 builds, modifies the gating configuration to include testing updates, and simplifies the podman-tests.sh script to focus on system tests.

Build:

  • The packit configuration is updated to build on both x86_64 and aarch64 architectures for Fedora and CentOS Stream.

CI:

  • The gating configuration is updated to include 'bodhi_update_push_testing' in the decision context.

Tests:

  • The podman-tests.sh script is simplified to only run system tests using bats.

maage and others added 6 commits February 19, 2025 16:34
Signed-off-by: Markus Linnala <[email protected]>
(cherry picked from commit f848c3e)
Signed-off-by: Lokesh Mandvekar <[email protected]>
`dnf download` on CentOS Stream ends up downloading all rpm versions of
a package from all available repos instead of only the latest rpm. This
leads to more (unnecessary) complications in the test script.

Things are a lot simpler if we directly test using the `podman-tests`
package. This means we'll have to disable podman e2e tests and only do
system tests but that shouldn't be too big a problem.

A better way to run podman e2e tests would be by creating a `podman-src`
rpm subpackage that'll install all the rpm sources.

The same set of tests can be run across all environments so there's no
need to maintain separate plans for upstream and downstream.

Signed-off-by: Lokesh Mandvekar <[email protected]>
(cherry picked from commit 3f2d85a)
Signed-off-by: Lokesh Mandvekar <[email protected]>
container-selinux maybe noarch but it would help to have aarch64
visibility to ensure everything works, especially RE: podman.

Signed-off-by: Lokesh Mandvekar <[email protected]>
(cherry picked from commit b6f01ab)
Signed-off-by: Lokesh Mandvekar <[email protected]>
OSCI will gate on TMT tests for CentOS Stream.

Bodhi will gate on pushes for both testing and stable.

Signed-off-by: Lokesh Mandvekar <[email protected]>
(cherry picked from commit b27a1d0)
Signed-off-by: Lokesh Mandvekar <[email protected]>
Need this to enable openshift mergebot.

Signed-off-by: Lokesh Mandvekar <[email protected]>
(cherry picked from commit bf26c8d)
Signed-off-by: Lokesh Mandvekar <[email protected]>
Signed-off-by: Lokesh Mandvekar <[email protected]>
(cherry picked from commit 1b5db5c)
Signed-off-by: Lokesh Mandvekar <[email protected]>
Copy link

sourcery-ai bot commented Feb 19, 2025

Reviewer's Guide by Sourcery

This pull request backports changes to the rhaos-maint branch. It updates the packit configuration to include aarch64 builds, modifies the gating policy to include testing updates, and simplifies the podman-tests.sh script to focus on system tests.

Updated class diagram for packit configuration

classDiagram
    class PackitConfiguration {
        -jobs: list
            -copr_build
                -trigger: pull_request
                -targets: list
                    -fedora-all-x86_64
                    -fedora-all-aarch64
                    -fedora-eln-x86_64
                    -fedora-eln-aarch64
                    -centos-stream-9-x86_64
                    -centos-stream-9-aarch64
                    -centos-stream-10-x86_64
                    -centos-stream-10-aarch64
    }
    note for PackitConfiguration "Targets now include aarch64 builds for Fedora and CentOS Stream"
Loading

Updated class diagram for gating policy

classDiagram
    class Policy {
        -product_versions: list
            -fedora-*
        -decision_context: list
            -bodhi_update_push_stable
            -bodhi_update_push_testing
        -rules: list
            -PassingTestCaseRule
                -test_case_name: fedora-ci.koji-build.tier0.functional
    }
    note for Policy "Decision context now includes bodhi_update_push_testing"
Loading

File-Level Changes

Change Details Files
The packit configuration was updated to include aarch64 builds for Fedora and CentOS Stream.
  • Added 'fedora-all-aarch64' target to the packit configuration.
  • Added 'fedora-eln-aarch64' target to the packit configuration.
  • Added 'centos-stream-9-aarch64' target to the packit configuration.
  • Added 'centos-stream-10-aarch64' target to the packit configuration.
.packit.yaml
The gating policy was updated to include 'bodhi_update_push_testing' as a decision context.
  • Added 'bodhi_update_push_testing' to the decision_context list in the gating policy.
rpm/gating.yaml
The podman-tests.sh script was simplified to only run system tests using bats.
  • Removed the logic for determining the test type (e2e or system) based on command-line arguments.
  • Removed the logic for downloading and extracting podman source code.
  • Removed the logic for running e2e tests.
  • The script now directly executes the system tests using bats.
test/podman-tests.sh

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!
  • Generate a plan of action for an issue: Comment @sourcery-ai plan on
    an issue to generate a plan of action for it.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

openshift-ci bot commented Feb 19, 2025

The following users are mentioned in OWNERS file(s) but are untrusted for the following reasons. One way to make the user trusted is to add them as members of the containers org. You can then trigger verification by writing /verify-owners in a comment.

  • zpytela
    • User is not a member of the org. User is not a collaborator. Satisfy at least one of these conditions to make the user trusted.

@lsm5
Copy link
Member Author

lsm5 commented Feb 19, 2025

  • zpytela

    • User is not a member of the org. User is not a collaborator. Satisfy at least one of these conditions to make the user trusted.

Invited @zpytela to containers org.

@lsm5 lsm5 marked this pull request as ready for review February 19, 2025 12:03
Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @lsm5 - I've reviewed your changes - here's some feedback:

Overall Comments:

  • The removal of the e2e tests from podman-tests.sh seems like a significant change; is there a reason for this?
  • The gating policy update to include bodhi_update_push_testing is a good addition.
Here's what I looked at during the review
  • 🟢 General issues: all looks good
  • 🟢 Security: all looks good
  • 🟢 Testing: all looks good
  • 🟢 Complexity: all looks good
  • 🟢 Documentation: all looks good

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

@lsm5
Copy link
Member Author

lsm5 commented Feb 20, 2025

@haircommander PTAL

@haircommander
Copy link
Collaborator

/lgtm

Copy link

openshift-ci bot commented Feb 20, 2025

[APPROVALNOTIFIER] This PR is APPROVED

Approval requirements bypassed by manually added approval.

This pull-request has been approved by: lsm5

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants