Skip to content

Conversation

@kontura
Copy link
Contributor

@kontura kontura commented Oct 17, 2025

This requires: drpm, libcomps, dnf-plugins-core, dnf-plugins-extras, microdnf - to setup packit

It also requires dnf5 change to get the right version for all packit builds.

There is also a libsolv workaround because it is missing a packit setup as well but I think it is unlikely libsolv upstream would accept it.

Finally all the builds will run in parallel now so we loose the requires relationship between components. This could cause problems when one package requires a new version of another. However I think the build should fail only once because in a second run the new dependency will be already built.
One possible proper (and easy but slower) solution could be to configure the github action to do only one build at the time in the specified order.

Copy link
Contributor

@mfocko mfocko left a comment

Choose a reason for hiding this comment

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

LGTM

- component: libmodulemd
url: https://github.com/fedora-modularity/
- component: libsolv
url: https://github.com/openSUSE/
Copy link
Contributor

Choose a reason for hiding this comment

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

I've noticed yesterday that we also have rpm-software-management/libsolv, given this I guess it's not used anymore? So should it be archived?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Unfortunately there is a couple (one really) of small patches we need in RHEL that libsolv upstream doesn't want. Specifically its computing hashes using OpenSSL instead of the libsolv custom algorithms.

We store this in the rpm-software-management/libsolv.

@mfocko
Copy link
Contributor

mfocko commented Nov 11, 2025

Finally all the builds will run in parallel now so we loose the requires relationship between components. This could cause problems when one package requires a new version of another. However I think the build should fail only once because in a second run the new dependency will be already built.

Copr allows setting order of the builds, but IIRC
a) it requires build IDs, not components :/
b) Packit doesn't support this option yet :/

@mfocko
Copy link
Contributor

mfocko commented Nov 11, 2025

Copr allows setting order of the builds, but IIRC
a) it requires build IDs, not components :/
b) Packit doesn't support this option yet :/

https://python-copr.readthedocs.io/en/latest/client_v3/build_options.html#:~:text=after_build_id,ID%20is%20processed

eh… I guess there should be an option in the GitHub Action to propagate the build ID out… though I think it would need to be parsed from the Packit output; and now that I think about it, it would be sequential anyways 🤔

@kontura
Copy link
Contributor Author

kontura commented Nov 11, 2025

Copr allows setting order of the builds, but IIRC
a) it requires build IDs, not components :/
b) Packit doesn't support this option yet :/

https://python-copr.readthedocs.io/en/latest/client_v3/build_options.html#:~:text=after_build_id,ID%20is%20processed

Oh yea, right, I think that is what rpm-gitoverlay uses.

eh… I guess there should be an option in the GitHub Action to propagate the build ID out… though I think it would need to be parsed from the Packit output; and now that I think about it, it would be sequential anyways 🤔

We probably could build something to have it in batches but indeed I don't think it is worth it. We can always add it later if it turns out to cause problems. Perhaps even Packit will add some support (packit/packit-service#2105) that could be used in this use case.

@kontura kontura merged commit d461389 into rpm-software-management:main Nov 12, 2025
13 checks passed
kontura added a commit to kontura/dnf5 that referenced this pull request Nov 13, 2025
Since packit 1.6.0 `validate-config` was changed to `config validate`,
new version of packit/pre-commit-hooks supports both.

This started to happen now because since rpm-software-management/ci-dnf-stack#1771
packit is installed in `dnf-ci-host`. Previously without packit the
`pre-commit - Validate package config` check was a no-op.
github-merge-queue bot pushed a commit to rpm-software-management/dnf5 that referenced this pull request Nov 13, 2025
Since packit 1.6.0 `validate-config` was changed to `config validate`,
new version of packit/pre-commit-hooks supports both.

This started to happen now because since rpm-software-management/ci-dnf-stack#1771
packit is installed in `dnf-ci-host`. Previously without packit the
`pre-commit - Validate package config` check was a no-op.
kontura added a commit to kontura/ci-dnf-stack that referenced this pull request Nov 14, 2025
Since packit 1.6.0 `validate-config` was changed to `config validate`,
new version of packit/pre-commit-hooks supports both.

This started to happen now because since rpm-software-management#1771
packit is installed in `dnf-ci-host`. Previously without packit the
`pre-commit - Validate package config` check was a no-op.
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