cpio digest mismatch when installing gitlab-runner and gitlab-runner-fips in RHEL 8 in FIPS mode
Summary
Steps to reproduce
On a RHEL 8 machine with FIPS enforced,
dnf install gitlab-runner
or
dnf install gitlab-runner-fips
Actual behavior
# dnf install gitlab-runner-fips
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : gitlab-runner-fips-14.10.0-1.x86_64 1/1
Error unpacking rpm package gitlab-runner-fips-14.10.0-1.x86_64
Verifying : gitlab-runner-fips-14.10.0-1.x86_64 1/1
Installed products updated.
Failed:
gitlab-runner-fips-14.10.0-1.x86_64
Error: Transaction failed
Attempting to manually install:
# rpm -Uvh gitlab-runner-fips-14.10.0-1.x86_64.rpm
Verifying... ################################# [100%]
Preparing... ################################# [100%]
Updating / installing...
1:gitlab-runner-fips-14.10.0-1 ################################# [100%]
error: unpacking of archive failed on file /usr/bin/gitlab-runner;626041f0: cpio: Digest mismatch
error: gitlab-runner-fips-14.10.0-1.x86_64: install failed
Expected behavior
The package should get installed properly.
Environment description
RHEL 8.5 (currently), FIPS mode enabled
Used GitLab Runner version
# gitlab-runner --version
FIPS mode enabled. Using BoringSSL.
Version: 14.10.0
Git revision: c6bb62f6
Git branch: 14-10-stable
GO version: go1.17.7
Built: 2022-04-19T18:15:14+0000
OS/Arch: linux/amd64
Possible fixes
It's most likely the file digest causing issues.
rpm -Uvh --nofiledigest <rpm> succeeds.