mirror of
https://gitlab.com/veilid/veilid.git
synced 2025-07-30 10:18:41 -04:00
Adding automatic nightly release builds
- Restructured linux repo directory structure to include Stable and Nightly releases - Reworked Earthfile to pass IS_NIGHTLY boolean to package build scripts for use in file names - Added nightly pipeline to CICD config yaml. Pipeline is triggered by IS_NIGHTLY variable - Two distribution scripts now exist, one for Stable and one for Nightly - Reworked RPM build spec files to create appropriate file names - Reworked debian release generation scripts - RPM repo directory structure is prepped for arm64 builds - Switched from scp to rsync for moving the completed repo from ochestration to repo server - Created schedule in Gitlab UI to trigger nightly release at 2300 Central Time
This commit is contained in:
parent
8c297acdee
commit
fc7debba3f
14 changed files with 323 additions and 92 deletions
|
@ -3,6 +3,8 @@ set -e
|
|||
|
||||
ARCH=$1
|
||||
CARGO_ARCH=$2
|
||||
IS_NIGHTLY=$3
|
||||
BUILD_DATE=$(date '+%Y%m%d')
|
||||
CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-cli/Cargo.toml)"
|
||||
rm -rf /dpkg
|
||||
mkdir -p /dpkg/out
|
||||
|
@ -16,4 +18,13 @@ mkdir -p /dpkg/veilid-cli/usr/bin
|
|||
cp -f /veilid/target/$CARGO_ARCH/release/veilid-cli /dpkg/veilid-cli/usr/bin
|
||||
# pack it up
|
||||
dpkg-deb -b /dpkg/veilid-cli/
|
||||
mv /dpkg/veilid-cli.deb /dpkg/out/veilid-cli-$CARGO_VERSION\_$ARCH.deb
|
||||
# Appropriatly name the package for STABLE or NIGHTLY release
|
||||
if [ "$3" = true ]
|
||||
then
|
||||
mv /dpkg/veilid-cli.deb /dpkg/out/veilid-cli-$BUILD_DATE\_$ARCH.deb
|
||||
elif [ "$3" = false ]
|
||||
then
|
||||
mv /dpkg/veilid-cli.deb /dpkg/out/veilid-cli-$CARGO_VERSION\_$ARCH.deb
|
||||
else
|
||||
echo $3 "is not a valid state to determine if the build is STABLE or NIGHTLY"
|
||||
fi
|
|
@ -3,6 +3,8 @@ set -e
|
|||
|
||||
ARCH=$1
|
||||
CARGO_ARCH=$2
|
||||
IS_NIGHTLY=$3
|
||||
BUILD_DATE=$(date '+%Y%m%d')
|
||||
CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-server/Cargo.toml)"
|
||||
rm -rf /dpkg
|
||||
mkdir -p /dpkg/out
|
||||
|
@ -22,4 +24,13 @@ mkdir -p /dpkg/veilid-server/usr/bin
|
|||
cp -f /veilid/target/$CARGO_ARCH/release/veilid-server /dpkg/veilid-server/usr/bin
|
||||
# pack it up
|
||||
dpkg-deb -b /dpkg/veilid-server/
|
||||
mv /dpkg/veilid-server.deb /dpkg/out/veilid-server-$CARGO_VERSION\_$ARCH.deb
|
||||
# Appropriatly name the package for STABLE or NIGHTLY release
|
||||
if [ "$3" = true ]
|
||||
then
|
||||
mv /dpkg/veilid-server.deb /dpkg/out/veilid-server-$BUILD_DATE\_$ARCH.deb
|
||||
elif [ "$3" = false ]
|
||||
then
|
||||
mv /dpkg/veilid-server.deb /dpkg/out/veilid-server-$CARGO_VERSION\_$ARCH.deb
|
||||
else
|
||||
echo $3 "is not a valid state to determine if the build is STABLE or NIGHTLY"
|
||||
fi
|
|
@ -1,10 +1,20 @@
|
|||
#!/bin/bash
|
||||
ARCH=$1
|
||||
CARGO_ARCH=$2
|
||||
IS_NIGHTLY=$3
|
||||
BUILD_DATE=$(date '+%Y%m%d')
|
||||
CARGO_VERSION="$(/veilid/package/cargo_version.sh /veilid/veilid-cli/Cargo.toml)"
|
||||
|
||||
# veilid-cli spec file
|
||||
cp -rf /veilid/package/rpm/veilid-cli/veilid-cli.spec /root/rpmbuild/SPECS/
|
||||
if [ "$3" = true ]
|
||||
then
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec RELEASE_VERSION $BUILD_DATE
|
||||
elif [ "$3" = false ]
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec RELEASE_VERSION $CARGO_VERSION
|
||||
else
|
||||
echo $3 "is not a valid state to determine if the build is STABLE or NIGHTLY"
|
||||
fi
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec CARGO_VERSION $CARGO_VERSION
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec ARCH $ARCH
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-cli.spec CARGO_ARCH $CARGO_ARCH
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Summary: Veilid Server Command Line Interface
|
||||
Name: veilid-cli
|
||||
Version: $CARGO_VERSION
|
||||
Version: $RELEASE_VERSION
|
||||
Release: 1
|
||||
URL: https://veilid.com
|
||||
Group: System
|
||||
|
|
|
@ -1,11 +1,21 @@
|
|||
#!/bin/bash
|
||||
ARCH=$1
|
||||
CARGO_ARCH=$2
|
||||
IS_NIGHTLY=$3
|
||||
BUILD_DATE=$(date '+%Y%m%d')
|
||||
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 /root/rpmbuild/SPECS/
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec CARGO_VERSION $CARGO_VERSION
|
||||
# Select CARGO_VERSION for STABLE releases or BUILD_DATE for NIGHTLY releases
|
||||
if [ "$3" = true ]
|
||||
then
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec RELEASE_VERSION $BUILD_DATE
|
||||
elif [ "$3" = false ]
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec RELEASE_VERSION $CARGO_VERSION
|
||||
else
|
||||
echo $3 "is not a valid state to determine if the build is STABLE or NIGHTLY"
|
||||
fi
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec ARCH $ARCH
|
||||
/veilid/package/replace_variable.sh /root/rpmbuild/SPECS/veilid-server.spec CARGO_ARCH $CARGO_ARCH
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
Summary: Install a server grade, headless Veilid node
|
||||
Name: veilid-server
|
||||
Version: $CARGO_VERSION
|
||||
Version: $RELEASE_VERSION
|
||||
Release: 1
|
||||
URL: https://veilid.com
|
||||
Group: System
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue