src: only prune if buildkitd was spun up
parent
4e97fd3608
commit
f9f71c9f11
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
20
src/main.ts
20
src/main.ts
|
@ -400,7 +400,9 @@ actionsToolkit.run(
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prune buildkit cache to clean up unused layers before shutting down buildkitd.
|
try {
|
||||||
|
const {stdout} = await execAsync('pgrep buildkitd');
|
||||||
|
if (stdout.trim()) {
|
||||||
try {
|
try {
|
||||||
core.info('Pruning BuildKit cache');
|
core.info('Pruning BuildKit cache');
|
||||||
await pruneBuildkitCache();
|
await pruneBuildkitCache();
|
||||||
|
@ -410,16 +412,13 @@ actionsToolkit.run(
|
||||||
core.warning(`Error pruning BuildKit cache: ${error.message}`);
|
core.warning(`Error pruning BuildKit cache: ${error.message}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
await leaveTailnet();
|
|
||||||
|
|
||||||
try {
|
|
||||||
const {stdout} = await execAsync('pgrep buildkitd');
|
|
||||||
if (stdout.trim()) {
|
|
||||||
const buildkitdShutdownStartTime = Date.now();
|
const buildkitdShutdownStartTime = Date.now();
|
||||||
await shutdownBuildkitd();
|
await shutdownBuildkitd();
|
||||||
const buildkitdShutdownDurationMs = Date.now() - buildkitdShutdownStartTime;
|
const buildkitdShutdownDurationMs = Date.now() - buildkitdShutdownStartTime;
|
||||||
await reporter.reportMetric(Metric_MetricType.BPA_BUILDKITD_SHUTDOWN_DURATION_MS, buildkitdShutdownDurationMs);
|
await reporter.reportMetric(Metric_MetricType.BPA_BUILDKITD_SHUTDOWN_DURATION_MS, buildkitdShutdownDurationMs);
|
||||||
core.info('Shutdown buildkitd');
|
core.info('Shutdown buildkitd');
|
||||||
|
} else {
|
||||||
|
core.debug('No buildkitd process found running');
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (error.code === 1) {
|
if (error.code === 1) {
|
||||||
|
@ -429,6 +428,8 @@ actionsToolkit.run(
|
||||||
core.warning(`Error checking for buildkitd processes: ${error.message}`);
|
core.warning(`Error checking for buildkitd processes: ${error.message}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
await leaveTailnet();
|
||||||
try {
|
try {
|
||||||
// Run sync to flush any pending writes before unmounting.
|
// Run sync to flush any pending writes before unmounting.
|
||||||
await execAsync('sync');
|
await execAsync('sync');
|
||||||
|
@ -476,7 +477,13 @@ actionsToolkit.run(
|
||||||
core.info('buildkitd.log contents:');
|
core.info('buildkitd.log contents:');
|
||||||
core.info(buildkitdLog);
|
core.info(buildkitdLog);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
// Only log warning if the file was expected to exist (builder setup completed)
|
||||||
|
const sentinelPath = path.join('/tmp', 'builder-setup-complete');
|
||||||
|
if (fs.existsSync(sentinelPath)) {
|
||||||
core.warning(`Failed to read buildkitd.log: ${error.message}`);
|
core.warning(`Failed to read buildkitd.log: ${error.message}`);
|
||||||
|
} else {
|
||||||
|
core.debug(`buildkitd.log not found (builder setup incomplete): ${error.message}`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -496,7 +503,6 @@ actionsToolkit.run(
|
||||||
try {
|
try {
|
||||||
const {stdout} = await execAsync('pgrep buildkitd');
|
const {stdout} = await execAsync('pgrep buildkitd');
|
||||||
if (stdout.trim()) {
|
if (stdout.trim()) {
|
||||||
// Prune buildkit cache to clean up unused layers before shutting down buildkitd.
|
|
||||||
try {
|
try {
|
||||||
core.info('Pruning BuildKit cache');
|
core.info('Pruning BuildKit cache');
|
||||||
await pruneBuildkitCache();
|
await pruneBuildkitCache();
|
||||||
|
|
Loading…
Reference in New Issue