feat: generate RPM packages for CentOS 7, Rocky Linux 8/9/10
- Update Dockerfile.package to build RPMs for multiple distributions using a unified fpm-based approach - Add RPM maintainer scripts (postinst, prerm, postrm) for proper installation and service management - Update ja4sentinel.spec for CentOS 7+ compatibility - Add packaging/systemd/config.yml as default configuration - Update test-rpm.sh to test installation on all 4 target distributions - Fix CentOS 7 repository configuration (EOL - vault.centos.org) Generated RPMs: - el7: CentOS 7 (libpcap >= 1.4.0) - el8: Rocky Linux 8 (libpcap >= 1.9.0) - el9: Rocky Linux 9 (libpcap >= 1.9.0) - el10: AlmaLinux 10 / Rocky Linux 10 (libpcap >= 1.9.0) Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
25
Makefile
25
Makefile
@ -109,9 +109,28 @@ package-deb:
|
||||
@echo "RPM packages created:"
|
||||
ls -la build/rpm/
|
||||
|
||||
## package-rpm: Build RPM package (requires Docker)
|
||||
package-rpm: package-deb
|
||||
@echo "RPM built together with DEB in Dockerfile.package"
|
||||
## package-rpm: Build RPM packages for all target distributions (requires Docker)
|
||||
package-rpm:
|
||||
mkdir -p build/rpm/el7 build/rpm/el8 build/rpm/el9 build/rpm/el10
|
||||
@echo "Building RPM packages for CentOS 7, Rocky Linux 8/9, AlmaLinux 10..."
|
||||
docker build --target output -t ja4sentinel-rpm-packager:latest \
|
||||
--build-arg VERSION=$(PKG_VERSION) \
|
||||
-f Dockerfile.package .
|
||||
@echo "Extracting RPM packages from Docker image..."
|
||||
@docker run --rm -v $(PWD)/build:/output ja4sentinel-rpm-packager:latest sh -c \
|
||||
'cp -r /packages/rpm/el7 /output/rpm/ && \
|
||||
cp -r /packages/rpm/el8 /output/rpm/ && \
|
||||
cp -r /packages/rpm/el9 /output/rpm/ && \
|
||||
cp -r /packages/rpm/el10 /output/rpm/'
|
||||
@echo "RPM packages created:"
|
||||
@echo " CentOS 7 (el7):"
|
||||
ls -la build/rpm/el7/ 2>/dev/null || echo " (no packages)"
|
||||
@echo " Rocky Linux 8 (el8):"
|
||||
ls -la build/rpm/el8/ 2>/dev/null || echo " (no packages)"
|
||||
@echo " Rocky Linux 9 (el9):"
|
||||
ls -la build/rpm/el9/ 2>/dev/null || echo " (no packages)"
|
||||
@echo " AlmaLinux/Rocky 10 (el10):"
|
||||
ls -la build/rpm/el10/ 2>/dev/null || echo " (no packages)"
|
||||
|
||||
## test-package-deb: Test DEB package installation in Docker
|
||||
test-package-deb: package-deb
|
||||
|
||||
Reference in New Issue
Block a user