build: production profile, justfile adjustments

This commit is contained in:
2026-05-17 23:10:58 +02:00
parent d891a14a46
commit 48b1d2821f
2 changed files with 64 additions and 58 deletions
+4 -2
View File
@@ -55,12 +55,14 @@ debug-assertions = true
overflow-checks = true overflow-checks = true
lto = false lto = false
panic = "unwind" panic = "unwind"
codegen-units = 1 incremental = true
[profile.release-lto] [profile.production]
inherits = "release" inherits = "release"
debug = false debug = false
strip = true strip = true
debug-assertions = false debug-assertions = false
overflow-checks = false overflow-checks = false
lto = true lto = true
incremental = false
codegen-units = 1
+60 -56
View File
@@ -2,36 +2,40 @@ export RUSTFLAGS := "-C target-cpu=native"
export WEBKIT_DISABLE_COMPOSITING_MODE := "1" export WEBKIT_DISABLE_COMPOSITING_MODE := "1"
export DOCKER_CONFIG := env_var_or_default("DOCKER_CONFIG", ".lanspread-peer-cli/docker-config") export DOCKER_CONFIG := env_var_or_default("DOCKER_CONFIG", ".lanspread-peer-cli/docker-config")
build:
cargo tauri build --no-bundle -- --profile dev
run: run:
cargo tauri dev cargo tauri dev --release
build:
cargo tauri build --no-bundle #-- --profile dev
bundle:
cargo tauri build -- --profile production
fmt: fmt:
cargo +nightly fmt cargo +nightly fmt
just --fmt
_fix: _fix:
cargo fix cargo fix
cargo clippy --fix cargo clippy --fix
fix: _fix fmt fix: _fix fmt
clippy: clippy:
cargo clippy cargo clippy
test: test:
cargo test --workspace cargo test --workspace
clean: clean:
cargo clean cargo clean
peer-cli-build: peer-cli-build:
cargo build -p lanspread-peer-cli cargo build -p lanspread-peer-cli
peer-cli-image: peer-cli-image:
mkdir -p "$DOCKER_CONFIG" mkdir -p "$DOCKER_CONFIG"
docker build -f crates/lanspread-peer-cli/Dockerfile -t lanspread-peer-cli:dev . docker build -f crates/lanspread-peer-cli/Dockerfile -t lanspread-peer-cli:dev .
# macvlan: each peer container gets its own MAC/IP on the real LAN. # macvlan: each peer container gets its own MAC/IP on the real LAN.
# Override on the command line if your LAN differs, e.g. # Override on the command line if your LAN differs, e.g.
@@ -42,54 +46,54 @@ LANSPREAD_SUBNET := "192.168.1.0/24"
LANSPREAD_GATEWAY := "192.168.1.1" LANSPREAD_GATEWAY := "192.168.1.1"
peer-cli-net: peer-cli-net:
mkdir -p "$DOCKER_CONFIG" mkdir -p "$DOCKER_CONFIG"
docker network inspect {{LANSPREAD_NET}} >/dev/null 2>&1 || \ docker network inspect {{ LANSPREAD_NET }} >/dev/null 2>&1 || \
docker network create -d macvlan \ docker network create -d macvlan \
--subnet={{LANSPREAD_SUBNET}} \ --subnet={{ LANSPREAD_SUBNET }} \
--gateway={{LANSPREAD_GATEWAY}} \ --gateway={{ LANSPREAD_GATEWAY }} \
-o parent={{LANSPREAD_PARENT_IFACE}} \ -o parent={{ LANSPREAD_PARENT_IFACE }} \
{{LANSPREAD_NET}} {{ LANSPREAD_NET }}
peer-cli-run NAME: peer-cli-net peer-cli-run NAME: peer-cli-net
mkdir -p ".lanspread-peer-cli/{{NAME}}/state" ".lanspread-peer-cli/{{NAME}}/games" mkdir -p ".lanspread-peer-cli/{{ NAME }}/state" ".lanspread-peer-cli/{{ NAME }}/games"
docker run --rm --init --network {{LANSPREAD_NET}} --name "lanspread-peer-cli-{{NAME}}" -i \ docker run --rm --init --network {{ LANSPREAD_NET }} --name "lanspread-peer-cli-{{ NAME }}" -i \
-v "$PWD/.lanspread-peer-cli/{{NAME}}/state:/state" \ -v "$PWD/.lanspread-peer-cli/{{ NAME }}/state:/state" \
-v "$PWD/.lanspread-peer-cli/{{NAME}}/games:/games" \ -v "$PWD/.lanspread-peer-cli/{{ NAME }}/games:/games" \
lanspread-peer-cli:dev \ lanspread-peer-cli:dev \
--name "{{NAME}}" \ --name "{{ NAME }}" \
--games-dir /games \ --games-dir /games \
--state-dir /state \ --state-dir /state \
--catalog-db /app/game.db --catalog-db /app/game.db
peer-cli-alpha: peer-cli-net peer-cli-alpha: peer-cli-net
mkdir -p ".lanspread-peer-cli/alpha/state" mkdir -p ".lanspread-peer-cli/alpha/state"
docker run --rm --init --network lanspread --name "lanspread-peer-cli-alpha" -i \ docker run --rm --init --network lanspread --name "lanspread-peer-cli-alpha" -i \
-v "$PWD/.lanspread-peer-cli/alpha/state:/state" \ -v "$PWD/.lanspread-peer-cli/alpha/state:/state" \
-v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-alpha:/games:ro" \ -v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-alpha:/games:ro" \
lanspread-peer-cli:dev \ lanspread-peer-cli:dev \
--name "alpha" \ --name "alpha" \
--games-dir /games \ --games-dir /games \
--state-dir /state \ --state-dir /state \
--catalog-db /app/game.db --catalog-db /app/game.db
peer-cli-bravo: peer-cli-net peer-cli-bravo: peer-cli-net
mkdir -p ".lanspread-peer-cli/bravo/state" mkdir -p ".lanspread-peer-cli/bravo/state"
docker run --rm --init --network lanspread --name "lanspread-peer-cli-bravo" -i \ docker run --rm --init --network lanspread --name "lanspread-peer-cli-bravo" -i \
-v "$PWD/.lanspread-peer-cli/bravo/state:/state" \ -v "$PWD/.lanspread-peer-cli/bravo/state:/state" \
-v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-bravo:/games:ro" \ -v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-bravo:/games:ro" \
lanspread-peer-cli:dev \ lanspread-peer-cli:dev \
--name "bravo" \ --name "bravo" \
--games-dir /games \ --games-dir /games \
--state-dir /state \ --state-dir /state \
--catalog-db /app/game.db --catalog-db /app/game.db
peer-cli-charlie: peer-cli-net peer-cli-charlie: peer-cli-net
mkdir -p ".lanspread-peer-cli/charlie/state" mkdir -p ".lanspread-peer-cli/charlie/state"
docker run --rm --init --network lanspread --name "lanspread-peer-cli-charlie" -i \ docker run --rm --init --network lanspread --name "lanspread-peer-cli-charlie" -i \
-v "$PWD/.lanspread-peer-cli/charlie/state:/state" \ -v "$PWD/.lanspread-peer-cli/charlie/state:/state" \
-v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-charlie:/games:ro" \ -v "$PWD/crates/lanspread-peer-cli/fixtures/fixture-charlie:/games:ro" \
lanspread-peer-cli:dev \ lanspread-peer-cli:dev \
--name "charlie" \ --name "charlie" \
--games-dir /games \ --games-dir /games \
--state-dir /state \ --state-dir /state \
--catalog-db /app/game.db --catalog-db /app/game.db