From 638e228ba45be7f9dd4547f0003c3e91ce62b0e3 Mon Sep 17 00:00:00 2001 From: Jef Roosens Date: Tue, 13 May 2025 10:06:49 +0200 Subject: [PATCH] chore: add publish functionality to justfile --- .cargo/config.toml | 4 ++++ Justfile | 35 +++++++++++++++++++++++++++++++++++ alex-example.toml | 24 +++++++++++++----------- 3 files changed, 52 insertions(+), 11 deletions(-) diff --git a/.cargo/config.toml b/.cargo/config.toml index a5bfa9c..4b1cf60 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -1,3 +1,7 @@ [alias] runs = "run -- --config data/config --backup data/backups --world data/worlds --layers 2min,2,4,4;3min,3,2,2" runrs = "run --release -- --config data/config --backup data/backups --world data/worlds --layers 2min,2,4,4;3min,3,2,2" + +[target.aarch64-unknown-linux-musl] +linker = "aarch64-linux-gnu-gcc" +runner = "qemu-aarch64" diff --git a/Justfile b/Justfile index 76be6db..54943ad 100644 --- a/Justfile +++ b/Justfile @@ -1,7 +1,16 @@ +[group('build')] build: cargo build --frozen --workspace alias b := build +[group('build')] +build-release target: + cargo build \ + --release \ + --frozen \ + --workspace \ + --target '{{ target }}' + test: cargo test --frozen --workspace alias t := test @@ -23,3 +32,29 @@ clean: doc: cargo doc --workspace --frozen + +run: + mkdir -p data + cargo run --frozen --package alex -- run \ + --config data/config \ + --backup data/backups \ + --world data/worlds \ + --jar ./paper-1.21.5-77.jar \ + --java '/usr/lib/jvm/java-21-openjdk/bin/java' \ + --layers '2min,2,4,4;3min,3,2,2' + +publish-release-binaries tag: (build-release 'x86_64-unknown-linux-musl') (build-release 'aarch64-unknown-linux-musl') + # Check the binaries are proper static binaries + [ "$(readelf -d target/x86_64-unknown-linux-musl/release/alex | grep NEEDED | wc -l)" = 0 ] + [ "$(readelf -d target/aarch64-unknown-linux-musl/release/alex | grep NEEDED | wc -l)" = 0 ] + + curl \ + --netrc \ + --fail \ + --upload-file target/x86_64-unknown-linux-musl/release/alex \ + https://git.rustybever.be/api/packages/Chewing_Bever/generic/alex/"{{ tag }}"/alex-linux-amd64 + curl \ + --netrc \ + --fail \ + --upload-file target/aarch64-unknown-linux-musl/release/alex \ + https://git.rustybever.be/api/packages/Chewing_Bever/generic/alex/"{{ tag }}"/alex-linux-arm64 diff --git a/alex-example.toml b/alex-example.toml index 234a7bf..3157870 100644 --- a/alex-example.toml +++ b/alex-example.toml @@ -1,16 +1,18 @@ config = "data/config" world = "data/worlds" backup = "data/backups" -server = "Paper" +server = "paper" +jar = './paper-1.21.5-77.jar' +java = '/usr/lib/jvm/java-21-openjdk/bin/java' -# [[layers]] -# name = "2min" -# frequency = 2 -# chains = 4 -# chain_len = 4 +[[layers]] +name = "2min" +frequency = 2 +chains = 4 +chain_len = 4 -# [[layers]] -# name = "3min" -# frequency = 3 -# chains = 2 -# chain_len = 2 +[[layers]] +name = "3min" +frequency = 3 +chains = 2 +chain_len = 2