Skip to content

Configure packit to use caret notation for postrelease snapshots#638

Open
kontura wants to merge 2 commits intofedora-modularity:mainfrom
kontura:snapshot-build
Open

Configure packit to use caret notation for postrelease snapshots#638
kontura wants to merge 2 commits intofedora-modularity:mainfrom
kontura:snapshot-build

Conversation

@kontura
Copy link
Copy Markdown
Contributor

@kontura kontura commented Apr 1, 2026

This ensures the build of that specific version is considered newer than any other regular release of it.

For rpm-software-management/ci-dnf-stack#1843

Example build: https://copr.fedorainfracloud.org/coprs/amatej/dnf-nightly/build/10282557/

@ppisar ppisar self-assigned this Apr 1, 2026
@ppisar
Copy link
Copy Markdown
Collaborator

ppisar commented Apr 1, 2026

The caret character is not supported on RHEL 7 and thus the CI fails there. libmodulemd needs to support RHEL 7. Is it possible to change the configuration file so that it keeps using the old schema for epel-7 target?

@kontura
Copy link
Copy Markdown
Contributor Author

kontura commented Apr 4, 2026

I have separated the epel7 but probably some CI jobs didn't run correctly?

Copy link
Copy Markdown
Collaborator

@ppisar ppisar left a comment

Choose a reason for hiding this comment

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

Various tests on Fedora, e.g. "Installed RPM Tests" failed:

Run $GITHUB_WORKSPACE/.ci/retry-command.sh dnf -y install --nogpgcheck --allowerasing --repofrompath libmodulemd-ci,x86_64 x86_64/python3-libmodulemd*.rpm x86_64/libmodulemd-devel*.rpm
[...]
Failed to resolve the transaction:
Problem 1: cannot install both python3-libmodulemd-2.15.3^20260407074247132574.0fea74c7c0ba16895f0691dab7bbd3db5c1b2718-0.20260407074247130049.0fea74c7c0ba16895f0691dab7bbd3db5c1b2718.fc45.x86_64 from @commandline and python3-libmodulemd-2.15.3-0.20260407074427604704.0fea74c7c0ba16895f0691dab7bbd3db5c1b2718.fc45.x86_64 from @commandline
  - conflicting requests

I have not idea why it did not failed before, but obviously the dnf commands needs to explicitly install "$arch/libmodulemd*.rpm" package to allow DNF to replace a libmodulemd binary package with the matching version.

Could you please amend that command in .ci/fedora/ci-tasks.sh?

Since it's difficult to glob local "libmodulemd" package with unknown version without including libmodulemd-debuginfo package, try a different approach like dnf5 do --from-repo libmodulemd.

This ensures the build of that specific version is considered newer than
any other regular release of it.

For rpm-software-management/ci-dnf-stack#1843

For epel7 keep old style since rpm doesn't support `^` in version there.
This ensures we don't also build `libmodulemd-epel7` packit package.
@kontura kontura force-pushed the snapshot-build branch 2 times, most recently from cee472d to 201d877 Compare April 11, 2026 08:11
@sonarqubecloud
Copy link
Copy Markdown

@kontura
Copy link
Copy Markdown
Contributor Author

kontura commented Apr 11, 2026

I see, I think the problem was that it internally uses packit --debug build locally ../.. which started building two versions: libmodulemd and libmodulemd-epel7 as configured by the first commit. I have added one more commit to build only the libmodulemd packit package in the ci.

I have changed it in .github/workflows/ci.yaml and also in ‎.ci/fedora/ci-tasks.sh but I haven't investigated if ‎.ci/fedora/ci-tasks.sh is actually used.

I have also noticed the packit --debug build locally ../.. produces NEVRAs that don't look right. I have reported that here: packit/packit#2711.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants