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