build: Remove GitHub workflows
These are being replaced by our reproducible builds.
This commit is contained in:
parent
5f1657484f
commit
0c93a1c1a4
|
|
@ -1,29 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
main () {
|
||||
if [[ $# -ne 1 ]]; then
|
||||
echo "$#: Wrong number of arguments"
|
||||
return 1
|
||||
fi
|
||||
|
||||
local target=$1
|
||||
|
||||
rustup target add "$target"
|
||||
staging="radicle-$target"
|
||||
mkdir -p "$staging/debug"
|
||||
|
||||
cargo build --target "$target" --bin git-remote-rad
|
||||
cp target/"$target"/debug/git-remote-rad "$staging"/debug/
|
||||
|
||||
cargo build --target="$target" --bin rad
|
||||
cp target/"$target"/debug/rad "$staging"/debug/
|
||||
|
||||
tar czf "$staging-debug.tar.gz" "$staging"/debug
|
||||
cp "$staging-debug.tar.gz" "$staging"/debug/
|
||||
}
|
||||
|
||||
main "$@"
|
||||
|
|
@ -1,64 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
# Attempt to install `asciidoctor` on Debian, Arch Linux and MacOS.
|
||||
install() {
|
||||
os="$(uname)"
|
||||
|
||||
case "$os" in
|
||||
Linux)
|
||||
if command -v apt-get >/dev/null 2>&1; then
|
||||
# Debian
|
||||
apt-get update
|
||||
apt-get install -y asciidoctor
|
||||
elif command -v pacman >/dev/null 2>&1; then
|
||||
# Arch Linux
|
||||
pacman -Sy --noconfirm asciidoctor
|
||||
fi ;;
|
||||
Darwin) # MacOS
|
||||
if command -v brew >/dev/null 2>&1; then
|
||||
brew install asciidoctor
|
||||
fi ;;
|
||||
*)
|
||||
echo "fatal: unknown operating system: $os"
|
||||
exit 1 ;;
|
||||
esac
|
||||
}
|
||||
|
||||
main () {
|
||||
if [ $# -ne 1 ]; then
|
||||
echo "$#: Wrong number of arguments"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if ! command -v asciidoctor >/dev/null 2>&1; then
|
||||
install
|
||||
fi
|
||||
|
||||
target="$1"
|
||||
rustup target add "$target"
|
||||
|
||||
staging="radicle-$target"
|
||||
mkdir -p "$staging"
|
||||
|
||||
cargo build --target="$target" --package=radicle-httpd --release
|
||||
cp target/"$target"/release/radicle-httpd "$staging"/
|
||||
cp target/"$target"/release/rad-web "$staging"/
|
||||
|
||||
cargo build --target="$target" --package=radicle-node --release
|
||||
cp target/"$target"/release/radicle-node "$staging"/
|
||||
|
||||
cargo build --target="$target" --bin rad --release
|
||||
cp target/"$target"/release/rad "$staging"/
|
||||
|
||||
cargo build --target="$target" --bin git-remote-rad --release
|
||||
cp target/"$target"/release/git-remote-rad "$staging"/
|
||||
|
||||
scripts/build-man-pages.sh "$staging" $(find . -name '*.1.adoc')
|
||||
|
||||
tar czf "$staging.tar.gz" "$staging"
|
||||
cp "$staging.tar.gz" "$staging"/
|
||||
}
|
||||
|
||||
main "$@"
|
||||
|
|
@ -1,90 +0,0 @@
|
|||
name: Release
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master, release/*]
|
||||
|
||||
jobs:
|
||||
release-linux-binaries:
|
||||
permissions:
|
||||
contents: 'read'
|
||||
id-token: 'write'
|
||||
runs-on: ubuntu-20.04
|
||||
strategy:
|
||||
matrix:
|
||||
target: [x86_64-unknown-linux-musl, aarch64-unknown-linux-musl]
|
||||
include:
|
||||
- target: x86_64-unknown-linux-musl
|
||||
docker_image: registry.gitlab.com/rust_musl_docker/image:stable-latest
|
||||
docker_options: -v /home/runner/work/heartwood/heartwood:/workdir -v /home/runner/.cargo/git:/root/.cargo/git -v /home/runner/.cargo/registry:/root/.cargo/registry
|
||||
- target: aarch64-unknown-linux-musl
|
||||
docker_image: messense/rust-musl-cross:aarch64-musl
|
||||
docker_options: -v /home/runner/work/heartwood/heartwood:/home/rust/src -v /home/runner/.cargo/git:/root/.cargo/git -v /home/runner/.cargo/registry:/root/.cargo/registry
|
||||
steps:
|
||||
- name: Checkout source code
|
||||
uses: actions/checkout@v4
|
||||
- name: Get tags
|
||||
run: git fetch --prune --unshallow --tags origin
|
||||
- name: Configure build cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cargo/registry
|
||||
~/.cargo/git
|
||||
target
|
||||
key: cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }}
|
||||
- name: Build the binaries
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ matrix.docker_image }}
|
||||
options: ${{ matrix.docker_options }}
|
||||
run: .github/workflows/build.bash "${{ matrix.target }}"
|
||||
- name: Build the debug binaries
|
||||
uses: addnab/docker-run-action@v3
|
||||
with:
|
||||
image: ${{ matrix.docker_image }}
|
||||
options: ${{ matrix.docker_options }}
|
||||
run: .github/workflows/build-debug.bash "${{ matrix.target }}"
|
||||
- run: .github/workflows/upload.bash "${{ matrix.target }}" "${{ github.sha }}"
|
||||
env:
|
||||
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
|
||||
release-macos-binaries:
|
||||
permissions:
|
||||
contents: 'read'
|
||||
id-token: 'write'
|
||||
runs-on: macos-11
|
||||
strategy:
|
||||
matrix:
|
||||
target:
|
||||
- aarch64-apple-darwin
|
||||
- x86_64-apple-darwin
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Get tags
|
||||
run: git fetch --prune --unshallow --tags origin
|
||||
- name: Configure build cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cargo/registry
|
||||
~/.cargo/git
|
||||
target
|
||||
key: cargo-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }}
|
||||
- uses: dtolnay/rust-toolchain@stable
|
||||
- name: Build the release binaries
|
||||
run: .github/workflows/build.bash "${{ matrix.target }}"
|
||||
- name: Build the debug binaries
|
||||
run: .github/workflows/build-debug.bash "${{ matrix.target }}"
|
||||
- run: .github/workflows/upload.bash "${{ matrix.target }}" "${{ github.sha }}"
|
||||
env:
|
||||
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
|
||||
update-latest-symlink:
|
||||
needs: [release-linux-binaries, release-macos-binaries]
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: .github/workflows/update-latest-symlink.sh "${{ github.sha }}"
|
||||
env:
|
||||
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
|
||||
remotely() {
|
||||
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ssh-private-key github-actions@files.radicle.xyz "$@"
|
||||
}
|
||||
|
||||
main () {
|
||||
if [ $# -ne 1 ]; then
|
||||
echo "$#: Wrong number of arguments"
|
||||
return 1
|
||||
fi
|
||||
target="x86_64-unknown-linux-musl"
|
||||
sha=$1
|
||||
|
||||
trap 'rm -f ssh-private-key' EXIT
|
||||
|
||||
echo "$SSH_PRIVATE_KEY" > ssh-private-key
|
||||
chmod go-rwx ssh-private-key
|
||||
|
||||
remotely "/mnt/radicle/releases/${sha}/${target}/rad version --json > /mnt/radicle/releases/${sha}/version.json"
|
||||
remotely ln -snf "/mnt/radicle/releases/${sha}" "/mnt/radicle/releases/latest"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
|
||||
main () {
|
||||
if [[ $# -ne 2 ]]; then
|
||||
echo "$#: Wrong number of arguments"
|
||||
return 1
|
||||
fi
|
||||
|
||||
local target=$1
|
||||
local sha=$2
|
||||
|
||||
echo "$SSH_PRIVATE_KEY" >ssh-private-key
|
||||
chmod go-rwx ssh-private-key
|
||||
ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ssh-private-key github-actions@files.radicle.xyz mkdir -p "/mnt/radicle/releases/$sha/$target/debug"
|
||||
scp -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i ssh-private-key -r radicle-$target/* "github-actions@files.radicle.xyz:/mnt/radicle/releases/$sha/$target"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Loading…
Reference in New Issue