feat: add RPM packaging and Packit CI/CD for complytime-providers#5
Open
marcusburghardt wants to merge 2 commits intocomplytime:mainfrom
Open
feat: add RPM packaging and Packit CI/CD for complytime-providers#5marcusburghardt wants to merge 2 commits intocomplytime:mainfrom
marcusburghardt wants to merge 2 commits intocomplytime:mainfrom
Conversation
Add Fedora RPM spec that builds from a single source package and produces two binary sub-packages: - complytime-providers-openscap (requires complyctl, scap-security-guide) - complytime-providers-ampel (requires complyctl) No main binary RPM is produced. Follows Fedora Packaging Guidelines for Go projects with vendored dependencies. Uses vendor/modules.txt via %license for automatic bundled provides generation. rpmlint passes with 0 errors, 0 warnings. Assisted-by: OpenCode (claude-opus-4-6) Signed-off-by: Marcus Burghardt <maburgha@redhat.com>
Add Packit configuration with: - COPR builds on PRs (Fedora rawhide/43/42, CentOS Stream 9/10) - Testing Farm tests on PRs via TMT plans - propose_downstream on release (rawhide, f43, f42) - Koji builds and Bodhi updates on dist-git commits Add FMF metadata root and TMT test plan that validates both provider binaries are installed at the expected path with executable permissions after RPM installation. packit validate confirms configuration is valid. Assisted-by: OpenCode (claude-opus-4-6) Signed-off-by: Marcus Burghardt <maburgha@redhat.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add complete Fedora RPM packaging pipeline for complytime-providers. A single source RPM produces two binary sub-packages so users can install only the providers they need:
No main
complytime-providersbinary RPM is produced.Files added:
vendor/modules.txt, and unit tests in%check/usr/libexec/complytime/providers/with executable permissionsCompanion PR: complytime/complyctl#485 (complyctl side — spec simplification, GoReleaser cleanup, release docs)
Related Issues
complytime-providers(manual, one-time)Review Hints
Review the two commits in sequence:
feat:): thecomplytime-providers.specfile with sub-package definitionsci:): Packit configuration, FMF metadata, and TMT test planBoth
rpmlint complytime-providers.specandpackit validatepass with zero errors. Thepackit validatewarning about the package not existing is expected — it requires a Fedora package review first.To build and test the RPM locally:
Alternatively:
packit build locallyThe
Requires: complyctl >= 0.0.8version is a placeholder — it should be set to the first complyctl release that includes the provider SDK rename (pkg/provider/).There is a simple release JOB in the workflow, but it is expected to be changed when integrating with Fedora.