Skip to content

Commit 662a883

Browse files
committed
store-scan: use runner or os temp dirs
1 parent 08dcf70 commit 662a883

File tree

3 files changed

+16
-9
lines changed

3 files changed

+16
-9
lines changed

dist/main/index.js

+6-3
Original file line numberDiff line numberDiff line change
@@ -7842,9 +7842,9 @@ async function setup() {
78427842
}
78437843
}
78447844
core.saveState('pushMode', pushMode);
7845+
const tmpdir = process.env['RUNNER_TEMP'] ?? os.tmpdir();
78457846
switch (pushMode) {
78467847
case PushMode.Daemon: {
7847-
const tmpdir = process.env['RUNNER_TEMP'] ?? os.tmpdir();
78487848
const daemonDir = await fs.mkdtemp(path.join(tmpdir, 'cachix-daemon-'));
78497849
const daemonLog = (0, node_fs_1.openSync)(`${daemonDir}/daemon.log`, 'a');
78507850
const daemon = (0, node_child_process_1.spawn)(cachixBin, [
@@ -7877,7 +7877,9 @@ async function setup() {
78777877
}
78787878
case PushMode.StoreScan: {
78797879
// Remember existing store paths
7880-
await exec.exec("sh", ["-c", `${__dirname}/list-nix-store.sh > /tmp/store-path-pre-build`]);
7880+
const preBuildPathsFile = `${tmpdir}/store-path-pre-build`;
7881+
core.saveState('preBuildPathsFile', preBuildPathsFile);
7882+
await exec.exec("sh", ["-c", `${__dirname}/list-nix-store.sh > ${preBuildPathsFile}`]);
78817883
break;
78827884
}
78837885
default:
@@ -7930,7 +7932,8 @@ async function upload() {
79307932
break;
79317933
}
79327934
case PushMode.StoreScan: {
7933-
await exec.exec(`${__dirname}/push-paths.sh`, [cachixBin, cachixArgs, name, pushFilter]);
7935+
const preBuildPathsFile = core.getState('preBuildPathsFile');
7936+
await exec.exec(`${__dirname}/push-paths.sh`, [cachixBin, cachixArgs, name, preBuildPathsFile, pushFilter]);
79347937
break;
79357938
}
79367939
}

dist/main/push-paths.sh

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#!/usr/bin/env bash
22
set -euo pipefail
33

4-
cachix=$1 cachixArgs=${2:--j8} cache=$3 pushFilter=$4
4+
cachix=$1 cachixArgs=${2:--j8} cache=$3 preBuildPathsFile=$4 pushFilter=$5
55

66
filterPaths() {
77
local regex=$1
@@ -13,7 +13,7 @@ filterPaths() {
1313
}
1414

1515
pathsToPush=""
16-
preBuildPaths=$(sort /tmp/store-path-pre-build)
16+
preBuildPaths=$(sort "$preBuildPathsFile")
1717
if [ $? -eq 0 ]; then
1818
postBuildPaths=$("$(dirname "$0")"/list-nix-store.sh | sort)
1919
if [ $? -eq 0 ]; then
@@ -22,7 +22,7 @@ if [ $? -eq 0 ]; then
2222
echo "::error::Failed to list post-build store paths."
2323
fi
2424
else
25-
echo "::error::Failed to find pre-build store paths."
25+
printf "::error::Failed to find pre-build store paths. Expected cached paths in %s\n" "$preBuildPathsFile"
2626
fi
2727

2828
if [[ -n $pushFilter ]]; then

src/main.ts

+7-3
Original file line numberDiff line numberDiff line change
@@ -130,9 +130,10 @@ async function setup() {
130130

131131
core.saveState('pushMode', pushMode);
132132

133+
const tmpdir = process.env['RUNNER_TEMP'] ?? os.tmpdir();
134+
133135
switch (pushMode) {
134136
case PushMode.Daemon: {
135-
const tmpdir = process.env['RUNNER_TEMP'] ?? os.tmpdir();
136137
const daemonDir = await fs.mkdtemp(path.join(tmpdir, 'cachix-daemon-'));
137138
const daemonLog = openSync(`${daemonDir}/daemon.log`, 'a');
138139

@@ -176,7 +177,9 @@ async function setup() {
176177

177178
case PushMode.StoreScan: {
178179
// Remember existing store paths
179-
await exec.exec("sh", ["-c", `${__dirname}/list-nix-store.sh > /tmp/store-path-pre-build`]);
180+
const preBuildPathsFile = `${tmpdir}/store-path-pre-build`;
181+
core.saveState('preBuildPathsFile', preBuildPathsFile);
182+
await exec.exec("sh", ["-c", `${__dirname}/list-nix-store.sh > ${preBuildPathsFile}`]);
180183
break;
181184
}
182185

@@ -244,7 +247,8 @@ async function upload() {
244247
}
245248

246249
case PushMode.StoreScan: {
247-
await exec.exec(`${__dirname}/push-paths.sh`, [cachixBin, cachixArgs, name, pushFilter]);
250+
const preBuildPathsFile = core.getState('preBuildPathsFile');
251+
await exec.exec(`${__dirname}/push-paths.sh`, [cachixBin, cachixArgs, name, preBuildPathsFile, pushFilter]);
248252
break;
249253
}
250254
}

0 commit comments

Comments
 (0)