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

Fetch dep rpm updates #92

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft

Conversation

lsm5
Copy link
Member

@lsm5 lsm5 commented Mar 12, 2025

Sometimes, the latest podman release rpm might need other dependencies like containers-common updated as well.

This PR will fetch dependencies directly from koji regardless of bodhi status.

aardvark-dns, containers-common, crun and netavark will be fetched from default distro tags as well as sidetags owned by packit using koji download-build ....

NOTE: container-selinux rpm currently is facing conflicts with selinux-policy so I've skipped it for now.

Dependencies for podman release RPMs are now fetched from the respective upstream release PRs.

Copy link

openshift-ci bot commented Mar 12, 2025

[APPROVALNOTIFIER] This PR is APPROVED

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

@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch 19 times, most recently from 5b46bb8 to 8460ff5 Compare March 18, 2025 11:02
@lsm5 lsm5 marked this pull request as ready for review March 18, 2025 11:21
@lsm5
Copy link
Member Author

lsm5 commented Mar 18, 2025

Opening for review. @Luap99 @ashley-cui @baude @mheon PTAL.

@lsm5 lsm5 marked this pull request as draft March 18, 2025 11:22
@lsm5
Copy link
Member Author

lsm5 commented Mar 18, 2025

Err, never mind. spoke too soon. I see this in the logs:

Resolving dependencies...done
error: Could not depsolve transaction; 1 problem detected:
 Problem: package netavark-2:1.14.0-1.fc41.x86_64 from @System requires aardvark-dns >= 2:1.14, but none of the providers can be installed
  - cannot install both aardvark-dns-2:1.12.2-2.fc41.x86_64 from @commandline and aardvark-dns-2:1.14.0-1.fc41.x86_64 from @System
  - cannot install both aardvark-dns-2:1.12.2-2.fc41.x86_64 from @commandline and aardvark-dns-2:1.14.0-1.fc41.x86_64 from updates
  - cannot install both aardvark-dns-2:1.12.2-2.fc41.x86_64 from @commandline and aardvark-dns-2:1.14.0-1.fc41.x86_64 from updates-archive
  - conflicting requests

@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch from 8460ff5 to 7b14fa1 Compare March 18, 2025 13:01
@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch 2 times, most recently from a0f528e to 13bccc8 Compare March 25, 2025 12:18
@lsm5
Copy link
Member Author

lsm5 commented Mar 25, 2025

f41-updates-testing has no builds of crun
Downloading [1/1]: aardvark-dns-1.14.0-1.fc41.x86_64.rpm
[====================================] 100% 881.63 KiB / 881.63 KiB
f41-build-side-108226 has no builds of aardvark-dns
f41-build-side-108216 has no builds of containers-common
Downloading [1/2]: containers-common-0.62.2-1.fc41.noarch.rpm
[====================================] 100% 92.04 KiB / 92.04 KiB
Downloading [2/2]: containers-common-extra-0.62.2-1.fc41.noarch.rpm
[====================================] 100% 9.08 KiB / 9.08 KiB
Downloading [1/1]: netavark-1.14.1-1.fc41.x86_64.rpm
[=========                           ]  27% 1.00 MiB / 3.67 MiB
[===================                 ]  54% 2.00 MiB / 3.67 MiB
[=============================       ]  81% 3.00 MiB / 3.67 MiB
[====================================] 100% 3.67 MiB / 3.67 MiB
f41-build-side-108226 has no builds of netavark
Enabled rpm-md repositories: fedora-cisco-openh264 fedora updates updates-archive
Updating metadata for 'fedora-cisco-openh264'...done
Updating metadata for 'fedora'...done
Updating metadata for 'updates'...done
Updating metadata for 'updates-archive'...done
Importing rpm-md...done
rpm-md repo 'fedora-cisco-openh264'; generated: 2024-03-11T19:22:31Z solvables: 3
rpm-md repo 'fedora'; generated: 2024-10-24T13:55:59Z solvables: 76624
rpm-md repo 'updates'; generated: 2025-03-25T01:18:54Z solvables: 23372
rpm-md repo 'updates-archive'; generated: 2025-03-25T02:22:58Z solvables: 41071
Resolving dependencies...done
error: Request to reinstall exact base package versions: aardvark-dns

I think the dependency fetching looks alright now and tests pass

Opening for review.

@lsm5 lsm5 marked this pull request as ready for review March 25, 2025 12:55
@lsm5
Copy link
Member Author

lsm5 commented Mar 25, 2025

@Luap99 Thanks for the comments.

I'm probably gonna rework it to keep all koji ops outside of the container. Setting it back to draft.

@lsm5 lsm5 marked this pull request as draft March 25, 2025 16:02
@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch 6 times, most recently from 2b012b2 to d0885cb Compare April 2, 2025 11:26
@lsm5
Copy link
Member Author

lsm5 commented Apr 2, 2025

Good for another review. I'm keeping draft status because I need to revert PR_NUM change.

Copy link
Member

@Luap99 Luap99 left a comment

Choose a reason for hiding this comment

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

I have not looked into how this stuff works in koji but it looks reasonable to me.

Comment on lines 50 to 52
rm -f crun-krun*.rpm crun-wasm*.rpm && \
dnf -y update --best --allowerasing *.rpm && \
rm -f *.rpm && \
Copy link
Member

Choose a reason for hiding this comment

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

I don't think the removal does anything for the OCI image size as the COPY step already create a new layer AFAIK.
I guess it is still correct as we don't want "random" rpm files in the actual disk image.

I wonder if it would not be simpler to mount them instead of using COPY. I think podman build -v coul be an option or RUN --mount in the Containerfile.

Copy link
Member Author

Choose a reason for hiding this comment

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

ack. I could look into that. Thanks

Sometimes, the latest podman release rpm might need other dependencies
like containers-common updated as well.

This PR will fetch dependencies directly from koji regardless of
bodhi status.

container-selinux and crun will be fetched from the default distro tags
while aardvark-dns, containers-common, and netavark will be fetched from
sidetags owned by packit using `koji download-build ...`.

Signed-off-by: Lokesh Mandvekar <[email protected]>
@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch from d0885cb to 36709a6 Compare April 2, 2025 14:54
Signed-off-by: Lokesh Mandvekar <[email protected]>
@lsm5 lsm5 force-pushed the fetch-dep-rpm-updates branch from 36709a6 to 01b18c9 Compare April 2, 2025 14:57
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.

2 participants