feat(ci): Add Fedora RPM package build workflow #951

Closed
tcpipuk wants to merge 1 commit from tom/ci-fedora-rpm into main
Owner

Building on the Fedora packaging files from #950, this adds a CI workflow to automatically build RPM packages for Fedora distributions.

The workflow:

  • Builds both binary and debug RPMs using rpkg
  • Tests package installation in the CI environment
  • Publishes packages to Forgejo's RPM registry
  • Uploads artifacts for easy download

Thanks to ginger for providing the initial Fedora build files that made this CI pipeline possible.

Building on the Fedora packaging files from #950, this adds a CI workflow to automatically build RPM packages for Fedora distributions. The workflow: - Builds both binary and debug RPMs using rpkg - Tests package installation in the CI environment - Publishes packages to Forgejo's RPM registry - Uploads artifacts for easy download Thanks to ginger for providing the initial Fedora build files that made this CI pipeline possible.
tcpipuk self-assigned this 2025-08-29 00:09:37 +00:00
feat(ci): Add Fedora RPM package build workflow
Some checks failed
Checks / Prek / Pre-commit & Formatting (push) Successful in 1m47s
Documentation / Build and Deploy Documentation (pull_request) Successful in 1m28s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 4m9s
rpm-build.yml / feat(ci): Add Fedora RPM package build workflow (pull_request) Has been cancelled
c53fcd57dc
Building on the Fedora packaging files from #950, this adds a CI workflow
to automatically build RPM packages for Fedora distributions.

The workflow:
- Builds both binary and debug RPMs using rpkg
- Tests package installation in the CI environment
- Publishes packages to Forgejo's RPM registry
- Uploads artifacts for easy download

Thanks to ginger for providing the initial Fedora build files that made
this CI pipeline possible.
tcpipuk force-pushed tom/ci-fedora-rpm from c53fcd57dc to 726ae4931f 2025-08-29 00:13:35 +00:00 Compare
ginger approved these changes 2025-08-29 00:30:25 +00:00
requested review from ginger 2025-08-29 00:47:21 +00:00
ginger left a comment
Contributor

Packages currently don't install because they're missing signatures:

OpenPGP check for package "continuwuity-0.0.git.5458.11486da1-1.tom_ci_fedora_rpm.fc42.x86_64" (/var/cache/libdnf5/gitea-continuwuation-tom-ci-fedora-rpm-b66e18a7df08e53f/packages/continuwuity-0.0.git.5458.11486da1-1.tom_ci_fedora_rpm.fc42.x86_64.rpm) from repo "gitea-continuwuation-tom-ci-fedora-rpm" has failed: The package is not signed.
Packages currently don't install because they're missing signatures: ``` OpenPGP check for package "continuwuity-0.0.git.5458.11486da1-1.tom_ci_fedora_rpm.fc42.x86_64" (/var/cache/libdnf5/gitea-continuwuation-tom-ci-fedora-rpm-b66e18a7df08e53f/packages/continuwuity-0.0.git.5458.11486da1-1.tom_ci_fedora_rpm.fc42.x86_64.rpm) from repo "gitea-continuwuation-tom-ci-fedora-rpm" has failed: The package is not signed. ```
@ -0,0 +8,4 @@
```bash
# Add the Continuwuity repository
sudo dnf config-manager --add-repo https://forgejo.ellis.link/api/packages/continuwuation/rpm/stable/continuwuation.repo
Contributor

This should be sudo dnf config-manager addrepo --from-repofile=https://forgejo.ellis.link/api/packages/continuwuation/rpm/stable/continuwuation.repo. Also, it appears currently to produce an error: Status code: 404 for https://forgejo.ellis.link/api/packages/continuwuation/rpm/stable/continuwuation/repodata/repomd.xml (IP: 213.32.25.24), although this could be because the PR has yet to be merged.

This should be `sudo dnf config-manager addrepo --from-repofile=https://forgejo.ellis.link/api/packages/continuwuation/rpm/stable/continuwuation.repo`. Also, it appears currently to produce an error: `Status code: 404 for https://forgejo.ellis.link/api/packages/continuwuation/rpm/stable/continuwuation/repodata/repomd.xml (IP: 213.32.25.24)`, although this could be because the PR has yet to be merged.
tcpipuk force-pushed tom/ci-fedora-rpm from 726ae4931f to b5ec8859a1 2025-08-29 01:15:23 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from b5ec8859a1 to 226e29feac 2025-08-29 01:18:22 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 226e29feac to e766bed8d4 2025-08-29 01:44:24 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from e766bed8d4 to 5222b1ba4e 2025-08-29 12:12:33 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 5222b1ba4e to c129696464 2025-08-29 12:34:08 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from c129696464 to 0aad0bdbd3 2025-08-29 17:41:47 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 0aad0bdbd3 to 05221c9ae4 2025-08-29 18:27:39 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 05221c9ae4 to 9c374a5483 2025-08-29 18:35:30 +00:00 Compare
test: Add minimal Fedora runner test workflow
Some checks failed
rpm-build.yml / test: Add minimal Fedora runner test workflow (pull_request) Failing after 0s
Release Docker Image / define-variables (push) Successful in 9s
Test Fedora Runner / test (push) Successful in 4s
Documentation / Build and Deploy Documentation (pull_request) Has been cancelled
Checks / Prek / Clippy and Cargo Tests (push) Failing after 15s
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been cancelled
Release Docker Image / merge (push) Has been cancelled
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been cancelled
Checks / Prek / Pre-commit & Formatting (push) Successful in 34s
b9568fbf21
tcpipuk force-pushed tom/ci-fedora-rpm from b9568fbf21 to 5d4944fd1a 2025-08-29 19:04:23 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 5d4944fd1a to 65b99ffe01 2025-08-29 19:07:44 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 65b99ffe01 to 04aa8d3523 2025-08-29 19:10:09 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 04aa8d3523 to d61f5826b9 2025-08-29 19:12:06 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from d61f5826b9 to 062c4ab47f 2025-08-29 19:14:49 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 062c4ab47f to 610f81c2f3 2025-08-29 19:22:39 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 610f81c2f3 to b5ed01fd6e 2025-08-29 19:35:06 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from b5ed01fd6e to 42a7124eef 2025-08-29 19:38:19 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 42a7124eef to 8ecdc04d23 2025-08-29 19:43:39 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 8ecdc04d23 to f9d5a0837e 2025-08-29 19:54:00 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from f9d5a0837e to fdc2a23d44 2025-08-29 19:58:17 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from fdc2a23d44 to 570204195b 2025-08-29 20:00:38 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 570204195b to 8975527351 2025-08-29 20:35:32 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 8975527351 to a26c5020d4 2025-08-29 20:37:55 +00:00 Compare
feat(rpm): Add GPG signing for RPM packages with documentation
Some checks failed
rpm-build.yml / feat(rpm): Add GPG signing for RPM packages with documentation (push) Failing after 0s
rpm-build.yml / feat(rpm): Add GPG signing for RPM packages with documentation (pull_request) Failing after 0s
Release Docker Image / define-variables (push) Successful in 10s
Documentation / Build and Deploy Documentation (pull_request) Successful in 41s
Checks / Prek / Pre-commit & Formatting (push) Successful in 1m17s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 6m49s
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been cancelled
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been cancelled
Release Docker Image / merge (push) Has been cancelled
Test Fedora Runner / test (push) Successful in 30m0s
35ab5121bf
Implement conditional GPG signing in CI workflows to address package
verification warnings. When RPM_SIGNING_KEY secret is present, packages
are automatically signed and verified. Public key distributed via
repository for user verification.

Also consolidate RPM documentation into docs/deploying/fedora.md with
flattened hierarchy for better mdBook integration and readability.
tcpipuk force-pushed tom/ci-fedora-rpm from 35ab5121bf to 0ab7e5aef5 2025-08-30 18:40:43 +00:00 Compare
ci: Add package publishing and installation testing to Fedora workflow
Some checks failed
build-fedora.yml / ci: Add package publishing and installation testing to Fedora workflow (push) Failing after 0s
build-fedora.yml / ci: Add package publishing and installation testing to Fedora workflow (pull_request) Failing after 0s
Release Docker Image / define-variables (push) Has been cancelled
Release Docker Image / build-image (linux/amd64, release, linux-amd64, base) (push) Has been cancelled
Release Docker Image / build-image (linux/arm64, release, linux-arm64, base) (push) Has been cancelled
Release Docker Image / merge (push) Has been cancelled
Documentation / Build and Deploy Documentation (pull_request) Successful in 41s
Checks / Prek / Pre-commit & Formatting (push) Successful in 1m11s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 2m55s
13e171409a
Extends build-fedora.yml with complete CI pipeline functionality including
RPM signature verification, installation testing, and automatic publishing
to Forgejo package registry. Workflow now triggers on source code changes
and pull requests. Packages publish to stable/dev/feature groups based on
branch or tag.
tcpipuk force-pushed tom/ci-fedora-rpm from 13e171409a to ad6f2abac3 2025-08-30 19:10:48 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from ad6f2abac3 to 3182cc5b94 2025-08-30 19:13:17 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 3182cc5b94 to 5a57ced811 2025-08-30 19:19:31 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 5a57ced811 to 0cefd1bd60 2025-08-30 19:21:14 +00:00 Compare
tcpipuk force-pushed tom/ci-fedora-rpm from 0cefd1bd60 to 7406556550 2025-08-30 19:30:45 +00:00 Compare
tcpipuk closed this pull request 2025-08-30 19:31:17 +00:00
Some checks failed
Checks / Prek / Pre-commit & Formatting (push) Successful in 1m32s
Required
Details
Checks / Prek / Clippy and Cargo Tests (push) Successful in 5m49s
Required
Details
Documentation / Build and Deploy Documentation (pull_request) Successful in 33s
Build Fedora RPM / build (pull_request) Has been cancelled

Pull request closed

Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: continuwuation/continuwuity#951
No description provided.