# SPDX-License-Identifier: Apache-2.0 %bcond check 1 %global app_dir complytime # https://github.com/complytime/complyctl %global goipath github.com/complytime/complyctl Version: 1.1.0 %gometa -f Name: complyctl Release: 1.20261005091953166364.pr902.5.ga32f9339%{?dist} Summary: Compliance scanning CLI for OSCAL-based assessment workflows # License includes vendored dependency licenses. # Generated by go-vendor-tools; verify with: # go_vendor_license --config go-vendor-tools.toml report expression License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0 URL: %{gourl} Source0: complyctl-1.1.0.tar.gz # Generated by go-vendor-tools Source1: %{archivename}-vendor.tar.bz2 Source2: go-vendor-tools.toml BuildRequires: go-vendor-tools %description %{name} fetches Gemara policies from OCI registries, resolves dependency graphs, dispatches scans to providers via gRPC, and produces compliance reports (EvaluationLog, OSCAL, Markdown, SARIF). Providers are distributed separately via the complytime-providers package. %prep %goprep -A %setup -q -T -D -a1 %{forgesetupargs} -n complyctl-1.1.0 %autopatch -p1 # Lower the go.mod directive to match the system Go version so # rpmbuild succeeds with GOTOOLCHAIN=local. This handles cases where # the system Go has the same major.minor but an older patch version # than what go.mod requires (e.g., system Go 1.26.7 vs go.mod 1.26.8). # Reference: https://packages.fedoraproject.org/pkgs/golang/golang/ SYSTEM_GO_VERSION=$(go version | grep -oP 'go\K[0-9]+\.[0-9]+\.[0-9]+') sed -i "s/^go [0-9].*/go ${SYSTEM_GO_VERSION}/" go.mod sed -i "/^## explicit; go /s/go [0-9]\..*/go ${SYSTEM_GO_VERSION}/" vendor/modules.txt %generate_buildrequires %go_vendor_license_buildrequires -c %{S:2} %build %global gomodulesmode GO111MODULE=on export GO_LDFLAGS="-X %{goipath}/internal/version.version=%{version} \ -X %{goipath}/internal/version.gitTreeState=clean \ -X %{goipath}/internal/version.commit=%{version} \ -X %{goipath}/internal/version.buildDate=$(date -d @${SOURCE_DATE_EPOCH} +%%Y-%%m-%%d)" %gobuild -o %{gobuilddir}/bin/complyctl %{goipath}/cmd/complyctl %install %go_vendor_license_install -c %{S:2} install -d %{buildroot}%{_bindir} install -d -m 0755 %{buildroot}%{_libexecdir}/%{app_dir}/providers install -d %{buildroot}%{_mandir}/man1 install -p -m 0755 %{gobuilddir}/bin/complyctl %{buildroot}%{_bindir}/complyctl install -p -m 0644 docs/man/complyctl.1 %{buildroot}%{_mandir}/man1/complyctl.1 %check %go_vendor_license_check -c %{S:2} %if %{with check} %gocheck2 -t %{goipath}/tests -t %{goipath}/cmd/test-provider -t %{goipath}/cmd/mock-oci-registry -t %{goipath}/cmd/behavioral-report %endif %files -f %{go_vendor_license_filelist} %attr(0755, root, root) %{_bindir}/complyctl %doc README.md %{_mandir}/man1/complyctl.1* %dir %{_libexecdir}/%{app_dir} %dir %{_libexecdir}/%{app_dir}/providers %changelog * Mon Oct 05 2026 Packit - 1.1.0-1.20261005091953166364.pr902.5.ga32f9339 - fix: switch homebrew formula publishing to PR-based flow (Marcus Burghardt) - chore(deps): bump github.com/complytime/complypack from 0.0.9 to 0.1.0 (dependabot[bot]) - chore(deps): bump github.com/gemaraproj/go-gemara from 0.10.0 to 0.11.0 (dependabot[bot]) * Tue Aug 25 2026 Marcus Burghardt - 1.0.0-1 - Bump to upstream version v1.0.0 - Modernize spec for Fedora Go packaging guidelines - Adopt go-vendor-tools for vendored license verification - Fix debuginfo generation by switching to %%gobuild macro - Use %%gocheck2 for unit tests with proper exclusions - Use %%autorelease for automatic release numbering - Remove CentOS Stream targets (go-vendor-tools unavailable) * Tue Jul 07 2026 Marcus Burghardt - 0.0.8-2 - Add go.mod compatibility patch for Fedora 43 (Go 1.25) * Fri Apr 24 2026 Marcus Burghardt - 0.0.8-1 - Simplify spec for core-only delivery after provider split - Remove openscap-provider sub-package (moved to complytime-providers) - Add complyctl.1 man page - Add vendor/modules.txt for automatic bundled provides generation - Build only complyctl binary from cmd/complyctl * Wed Jul 9 2025 Marcus Burghardt - 0.0.8-1 - Bump to upstream version v0.0.8 * Tue Jul 8 2025 Marcus Burghardt - 0.0.7-1 - Bump to upstream version v0.0.7 - Include manifest file for openscap-plugin * Mon Jun 16 2025 George Vauter - 0.0.6-2 - Update package name to complyctl * Wed Jun 11 2025 Marcus Burghardt - 0.0.6-1 - Bump to upstream version v0.0.6 - Align with Fedora Package Guidelines * Tue May 6 2025 Qingmin Duanmu - 0.0.3-2 - Add complytime and openscap plugin man pages * Wed Apr 30 2025 Qingmin Duanmu - 0.0.3-1 - Separate plugin binary from manifest * Fri Apr 11 2025 Qingmin Duanmu - 0.0.2-1 - Separate package for openscap-plugin * Tue Apr 08 2025 Marcus Burghardt - 0.0.2-1 - Initial RPM