From d0b28f0e7429cbde81e881c7fda51df6ee0819b0 Mon Sep 17 00:00:00 2001 From: Jade Lovelace Date: Tue, 11 Jun 2024 20:42:50 -0700 Subject: [PATCH] releng: fix docs upload There were two bugs I found: 1. If the build isn't already done in the store, nix-store --realise does not know how to build it. You have to just give it the derivation and I guess it will realise all outputs, which is fine. 2. cp without -T will not overwrite an existing manual directory, creating a path manual/manual. Change-Id: Ibebfd136a266da5330944a985e636ebb776f1909 --- releng/create_release.xsh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/releng/create_release.xsh b/releng/create_release.xsh index 94c78a83f..b51a3ad23 100644 --- a/releng/create_release.xsh +++ b/releng/create_release.xsh @@ -275,11 +275,11 @@ def do_tag_merge(force_tag=False, no_check_git=False): def build_manual(eval_result): - manual = next(x['outputs']['doc'] for x in eval_result if x['attr'] == 'build.x86_64-linux') + (drv, manual) = next((x['drvPath'], x['outputs']['doc']) for x in eval_result if x['attr'] == 'build.x86_64-linux') print('[+] Building manual') - realise([manual]) + realise([drv]) - cp --no-preserve=mode -vr @(manual)/share/doc/nix @(MANUAL) + cp --no-preserve=mode -T -vr @(manual)/share/doc/nix/manual @(MANUAL) def upload_manual(env: RelengEnvironment):