From 7536620791b157c0fcba896e7ff3904afa9e4489 Mon Sep 17 00:00:00 2001 From: Lokesh Mandvekar Date: Wed, 19 Feb 2025 16:14:46 +0530 Subject: [PATCH] [skip-ci] Packit/Copr: Fix `podman version` in rpm Additional rpm patching to show upstream short sha in `podman --version` caused podman-machine-os tests to fail. This commit gets rid of that patching and instead sets define.gitCommit LDFLAG for Copr rpms. Signed-off-by: Lokesh Mandvekar --- .packit.sh | 9 +++------ rpm/podman.spec | 15 +++++++-------- 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/.packit.sh b/.packit.sh index 7eb5aa002c..7d28a45108 100644 --- a/.packit.sh +++ b/.packit.sh @@ -12,7 +12,7 @@ PACKAGE=podman SPEC_FILE=rpm/$PACKAGE.spec # Get short sha -SHORT_SHA=$(git rev-parse --short HEAD) +GIT_COMMIT=$(git rev-parse HEAD) # Get Version from HEAD VERSION=$(grep '^const RawVersion' version/rawversion/version.go | cut -d\" -f2) @@ -41,8 +41,5 @@ sed -i "s/^Source0:.*.tar.gz/Source0: $PACKAGE-$VERSION.tar.gz/" $SPEC_FILE # Update setup macro to use the correct build dir sed -i "s/^%autosetup.*/%autosetup -Sgit -n %{name}-$VERSION/" $SPEC_FILE -# Update relevant sed entries in spec file with the actual VERSION and SHORT_SHA -# This allows podman --version to also show the SHORT_SHA along with the -# VERSION -sed -i "s/##VERSION##/$VERSION/" $SPEC_FILE -sed -i "s/##SHORT_SHA##/$SHORT_SHA/" $SPEC_FILE +# Update LDFLAGS to show commit id for Copr builds +sed -i "s/##GIT_COMMIT##/$GIT_COMMIT/" $SPEC_FILE diff --git a/rpm/podman.spec b/rpm/podman.spec index b6a60cedfa..185a8e804c 100644 --- a/rpm/podman.spec +++ b/rpm/podman.spec @@ -216,14 +216,6 @@ sed -i 's;@@PODMAN@@\;$(BINDIR);@@PODMAN@@\;%{_bindir};' Makefile sed -i '/DELETE ON RHEL9/,/DELETE ON RHEL9/d' libpod/runtime.go %endif -# These changes are only meant for copr builds -%if %{defined copr_build} -# podman --version should show short sha -sed -i "s/^const RawVersion = .*/const RawVersion = \"##VERSION##-##SHORT_SHA##\"/" version/rawversion/version.go -# use ParseTolerant to allow short sha in version -sed -i "s/^var Version.*/var Version, err = semver.ParseTolerant(rawversion.RawVersion)/" version/version.go -%endif - %build %set_build_flags export CGO_CFLAGS=$CFLAGS @@ -245,6 +237,13 @@ LDFLAGS="-X %{ld_libpod}/define.buildInfo=${SOURCE_DATE_EPOCH:-$(date +%s)} \ -X %{ld_libpod}/config._etcDir=%{_sysconfdir} \ -X %{ld_project}/pkg/systemd/quadlet._binDir=%{_bindir}" +%if %{defined copr_build} +# ##GIT_COMMIT## is set by `.packit.sh` in Packit's Copr RPM build jobs. +# Has no effect on Koji builds. +GIT_COMMIT="##GIT_COMMIT##" +LDFLAGS="$LDFLAGS -X %{ld_libpod}/define.gitCommit=$GIT_COMMIT" +%endif + # build rootlessport first %gobuild -o bin/rootlessport ./cmd/rootlessport