hacking on rpm building

This commit is contained in:
TC 2023-07-02 19:12:42 -05:00
parent b84fc597e9
commit 8e38a962d2
3 changed files with 33 additions and 9 deletions

View File

@ -118,7 +118,7 @@ unit-tests-linux-arm64:
RUN cargo test --target aarch64-unknown-linux-gnu --release -p veilid-server -p veilid-cli -p veilid-tools -p veilid-core
# Package
package-linux-amd64:
package-linux-amd64-deb:
FROM +build-linux-amd64
#################################
### DEBIAN DPKG .DEB FILES
@ -132,12 +132,26 @@ package-linux-amd64:
# save artifacts
SAVE ARTIFACT --keep-ts /dpkg/out/*.deb AS LOCAL ./target/packages/
################################
package-linux-amd64-rpm:
FROM --platform amd64 centos:8
RUN yum install -y createrepo rpm-build rpm-sign wget gcc python3 yum-utils rpmdevtools
RUN rpmdev-setuptree
#################################
### RPMBUILD .RPM FILES
################################
#################################
COPY --dir package /veilid
RUN mkdir /veilid/target
COPY --dir +build-linux-amd64/target/x86_64-unknown-linux-gnu /target/x86_64-unknown-linux-gnu
RUN mkdir -p /rpm-work-dir/veilid-server
# veilid-server
RUN /veilid/package/rpm/earthly_make_veilid_server_rpm.sh amd64 x86_64-unknown-linux-gnu
SAVE ARTIFACT --keep-ts /rpmbuild/RPMS/x86_64/.rpm AS LOCAL ./target/packages/
# veilid-cli
#RUN /veilid/package/debian/earthly_make_veilid_cli_deb.sh amd64 x86_64-unknown-linux-gnu
# save artifacts
#SAVE ARTIFACT --keep-ts /dpkg/out/*.deb AS LOCAL ./target/packages/
package-linux-arm64:
package-linux-arm64-deb:
FROM +build-linux-arm64
#################################
### DEBIAN DPKG .DEB FILES

View File

@ -0,0 +1,10 @@
#!/bin/bash
ARCH=$1
CARGO_ARCH=$2
CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-server/Cargo.toml)"
# veilid-server spec file
cp -rf /veilid/package/rpm/veilid-server/veilid-server.spec /rpmbuild/specs/
/veilid/package/replace_variable.sh /veilid/package/rpm/veilid-server/veilid-server.spec CARGO_VERSION $CARGO_VERSION
/veilid/package/replace_variable.sh /veilid/package/rpm/veilid-server/veilid-server.spec ARCH $ARCH
/veilid/package/replace_variable.sh /veilid/package/rpm/veilid-server/veilid-server.spec CARGO_ARCH $CARGO_ARCH

View File

@ -7,7 +7,7 @@ Group: System
License: MPL 2.0
Packager: Veilid Foundation, Inc.
Requires: glibc-common >= 2.23
BuildRoot: ~/rpm-work-dir/veilid-server
BuildRoot: /rpm-work-dir/veilid-server
BuildArch: $ARCH
%description
@ -15,13 +15,13 @@ A server grade, headless Veilid node
%install
mkdir -p %{buildroot}/usr/bin/
cp ~/veilid-binaries/server/veilid-server %{buildroot}/usr/bin/veilid-server
cp /veilid/target/$CARGO_ARCH/release/veilid-server %{buildroot}/usr/bin/veilid-server
mkdir -p %{buildroot}/etc/systemd/system
cp ~/veilid-binaries/server/veilid-server.service %{buildroot}/etc/systemd/system/veilid-server.service
cp /veilid/package/systemd/veilid-server.service %{buildroot}/etc/systemd/system/veilid-server.service
mkdir -p %{buildroot}/etc/veilid-server
cp ~/veilid-binaries/server/veilid-server.conf %{buildroot}/etc/veilid-server/veilid-server.conf
cp /veilid/package/linux/veilid-server.conf %{buildroot}/etc/veilid-server/veilid-server.conf
%files
/usr/bin/veilid-server