From eb394bfc0a6b28c8f187788f77471b09cde687dc Mon Sep 17 00:00:00 2001 From: Marius Kleidl <1375043+Acconut@users.noreply.github.com> Date: Tue, 20 May 2025 22:40:16 +0200 Subject: [PATCH] tusd: embed version in binary (#409019) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * nixosTests.tusd: Fix network race condition Fixes error: client # curl: (7) Failed to connect to server port 1080 after 8 ms: Could not connect to server client # [ 5.621267] network-addresses-eth1-start[795]: adding address 192.168.1.1/24... done * tusd: embed version in binary Currently, tusd reports 'n/a' when its version is queried using `tusd -version`. This change embeds the current version during the build process, so it correctly reports the value. See https://github.com/tus/tusd/blob/8e66333a019e500eb1c5a0b9843342606382ef5e/scripts/build_funcs.sh#L20 --------- Co-authored-by: Niklas Hambüchen --- nixos/tests/tusd/default.nix | 1 + pkgs/by-name/tu/tusd/package.nix | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/nixos/tests/tusd/default.nix b/nixos/tests/tusd/default.nix index 3ef7544dd22f..ec188dee56ca 100644 --- a/nixos/tests/tusd/default.nix +++ b/nixos/tests/tusd/default.nix @@ -43,6 +43,7 @@ in client.succeed("${pkgs.coreutils}/bin/truncate --size=100M file-100M.bin") # Upload it. + client.wait_for_unit("network.target") client.succeed("${./tus-curl-upload.sh} file-100M.bin http://server:${toString port}/files/") print("Upload succeeded") diff --git a/pkgs/by-name/tu/tusd/package.nix b/pkgs/by-name/tu/tusd/package.nix index 5cc36513d403..2e0febe8adaf 100644 --- a/pkgs/by-name/tu/tusd/package.nix +++ b/pkgs/by-name/tu/tusd/package.nix @@ -18,6 +18,10 @@ buildGoModule rec { vendorHash = "sha256-YununGyB72zE0tmqO3BREJeMTjCuy/1fhPHC5r8OLjg="; + ldflags = [ + "-X github.com/tus/tusd/v2/cmd/tusd/cli.VersionName=v${version}" + ]; + # Tests need the path to the binary: # https://github.com/tus/tusd/blob/0e52ad650abed02ec961353bb0c3c8bc36650d2c/internal/e2e/e2e_test.go#L37 preCheck = ''