release: 24.10.0 #144
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Binary Release Build | |
on: | |
push: | |
branches: | |
- release/** | |
env: | |
CARGO_TERM_COLOR: always | |
RELAY_CARGO_ARGS: "--locked" | |
jobs: | |
linux: | |
name: Linux | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Rust Toolchain | |
run: rustup toolchain install stable --profile minimal --no-self-update | |
- name: Build binary | |
run: | | |
make build-linux-release | |
env: | |
RELAY_FEATURES: | |
- name: Bundle Debug File | |
run: | | |
cd target/release/ | |
zip relay-Linux-x86_64-debug.zip relay.debug | |
mv relay relay-Linux-x86_64 | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: artifact-linux | |
path: target/release/relay-Linux-x86_64* | |
if-no-files-found: 'error' | |
# since this artifact will be merged, compression is not necessary | |
compression-level: '0' | |
macos: | |
name: macOS | |
runs-on: macos-14 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Rust Toolchain | |
run: rustup toolchain install stable --profile minimal --no-self-update | |
- name: Run Cargo Build | |
run: cargo build --manifest-path=relay/Cargo.toml --release | |
env: | |
CARGO_PROFILE_RELEASE_SPLIT_DEBUGINFO: packed | |
- name: Bundle dSYM | |
run: | | |
cd target/release | |
mv relay relay-Darwin-x86_64 | |
zip -r relay-Darwin-x86_64-dsym.zip relay.dSYM | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: artifact-macos | |
path: target/release/relay-Darwin-x86_64* | |
if-no-files-found: 'error' | |
# since this artifact will be merged, compression is not necessary | |
compression-level: '0' | |
windows: | |
name: Windows | |
runs-on: windows-2019 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Install Rust Toolchain | |
run: rustup toolchain install stable --profile minimal --no-self-update | |
- name: Run Cargo Build | |
run: cargo build --manifest-path=relay/Cargo.toml --release | |
- name: Bundle PDB | |
run: | | |
Install-Module 7Zip4PowerShell -Force -Verbose | |
cd target/release | |
7z a relay-Windows-x86_64-pdb.zip relay.pdb | |
mv relay.exe relay-Windows-x86_64.exe | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: artifact-windows | |
path: target/release/relay-Windows-x86_64* | |
if-no-files-found: 'error' | |
# since this artifact will be merged, compression is not necessary | |
compression-level: '0' | |
merge: | |
name: Create Release Artifact | |
runs-on: ubuntu-latest | |
needs: [linux, macos, windows] | |
steps: | |
# Note: due to the immutability of artifacts in upload-artifact v4, | |
# there cannot be mutliple upload-artifacts with the same name, in a sha's workflow runs. | |
# However in this case it is fine because this only runs on release/** branches, | |
# and the other runs on release-library/** branches. | |
- uses: actions/upload-artifact/merge@v4 | |
with: | |
# Craft expects release assets to be a single artifact named after the sha. | |
name: ${{ github.sha }} | |
pattern: artifact-* | |
delete-merged: true |