On Fri, Jan 12, 2024 at 5:11 PM Jiri Daněk <jda...@redhat.com> wrote:
>
> I'd like to enable Packit-as-a-Service (
https://github.com/marketplace/packit-as-a-service) for Qpid Proton and
Qpid Dispatch GitHub repositories, so that every new PR gets tested on
Fedora infrastructure (latest released Fedora and Fedora Rawhide).
>
> There are three (gradually more involved) ways to use Packit:
>
> 1. use it as a CI system that runs on Fedora (configurable version and
system architecture (x86_64, aarch64). The job steps are incidentally
written in a RPM spec file, but we don't use the produced RPM
> 2. write the spec in a way that it builds useful RPM, but don't publish
the rpm and don't synchronize the spec file with the spec file that Fedora
uses in its Proton build
> 3. keep the RPM specs in sync with fedora, when new Proton is released,
use a single packit command to propose spec changes and version upgrade
from the upstream proton spec to Fedora Rawhide
>
> My intention is to get Proton all the way to the third scenario.
>
> There are three steps to do this:
>
> First, if the plan is approved in a vote here, ASF infra will enable the
GitHub integration, https://issues.apache.org/jira/browse/INFRA-25349
(authed link)
>
> Then, a RPM spec file needs to be written and committed to the
repository. I volunteer to do that. The Packit CI job will be building from
this spec file. I'd like to place the spec in a packaging/ sub directory,
so that files for other packaging systems can be added later and it does
not clutter the /.
>
> Finally, the spec file should be brought into 1:1 correspondence with the
spec file that Fedora itself uses. This way, changes to Fedora's spec can
be proposed and tested in the ASF project first and then shipped into
Fedora (Rawhide).
>
> Benefits:
>
> * Compilation of Fedora will be tested directly in the GitHub repo and
issues can be fixed right away.
> * Packit infrastructure offers arm64 machines, so we can opt into
compiling on arm as well
>
> Supplementary information:
>
> * Packit website: https://packit.dev/
> * Packit guide (GitHub integration): https://packit.dev/docs/guide
> * Packit-as-a-Service: https://github.com/marketplace/packit-as-a-service
> * Fedora wiki page: https://fedoraproject.org/wiki/Packit
>
> Thank you,
> --
> Mit freundlichen Grüßen / Kind regards
> Jiri Daněk

Here's a draft PR for qpid-dispatch with the above
https://github.com/apache/qpid-dispatch/pull/1741

Here's how it builds on Packit/COPR
https://copr.fedorainfracloud.org/coprs/packit/apache-qpid-dispatch-1741/build/8509042/
(available for 60 days)

The .spec file is taken from Fedora, where it's licenced under MIT
https://docs.fedoraproject.org/en-US/legal/fedora-linux-license/

I am unsure how the MIT attribution needs to be handled, if I want to take
a Fedora package and put it under packaging/ in qpid-dispatch.

Other than that, I just need to add some tests for the built package, and
possibly also move the code that's in package patch files directly into the
qpid-dispatch codebase, in the instances that are fixes for various build
problems.

Currently qpid-dispatch was last present in f40 but was removed from
rawhide and f41 due to https://bugzilla.redhat.com/show_bug.cgi?id=2245601
--
Mit freundlichen Grüßen / Kind regards

Reply via email to