transfer locked workspace to static CloudRunner field

pull/461/head
Frostebite 2022-10-06 18:24:05 +01:00
parent f89d7cd572
commit 3656f1a061
6 changed files with 12 additions and 5 deletions

7
dist/index.js vendored
View File

@ -543,6 +543,7 @@ class Cli {
${JSON.stringify(buildParameter, undefined, 4)}
`);
__1.CloudRunner.buildParameters = buildParameter;
__1.CloudRunner.lockedWorkspace = process.env.LOCKED_WORKSPACE;
return yield results.target[results.propertyKey](Cli.options);
});
}
@ -4379,8 +4380,8 @@ class CloudRunnerFolders {
}
// Only the following paths that do not start a path.join with another "Full" suffixed property need to start with an absolute /
static get uniqueCloudRunnerJobFolderAbsolute() {
return cloud_runner_1.default.buildParameters.retainWorkspace && process.env.LOCKED_WORKSPACE
? path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, process.env.LOCKED_WORKSPACE)
return cloud_runner_1.default.buildParameters.retainWorkspace && cloud_runner_1.default.lockedWorkspace
? path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.lockedWorkspace)
: path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.buildParameters.buildGuid);
}
static get cacheFolderFull() {
@ -5091,6 +5092,7 @@ class BuildAutomationWorkflow {
if (cloud_runner_options_1.default.retainWorkspaces) {
const workspace = (yield shared_workspace_locking_1.default.GetOrCreateLockedWorkspace(`test-workspace-${cloud_runner_1.default.buildParameters.buildGuid}`, cloud_runner_1.default.buildParameters.buildGuid, cloud_runner_1.default.buildParameters)) || cloud_runner_1.default.buildParameters.buildGuid;
process.env.LOCKED_WORKSPACE = workspace;
cloud_runner_1.default.lockedWorkspace = workspace;
cloud_runner_logger_1.default.logLine(`Using workspace ${workspace}`);
cloudRunnerStepState.environment = [
...cloudRunnerStepState.environment,
@ -5125,6 +5127,7 @@ class BuildAutomationWorkflow {
cloud_runner_logger_1.default.logWithTime('Configurable post build step(s) time');
if (cloud_runner_options_1.default.retainWorkspaces) {
yield shared_workspace_locking_1.default.ReleaseWorkspace(`test-workspace-${cloud_runner_1.default.buildParameters.buildGuid}`, cloud_runner_1.default.buildParameters.buildGuid, cloud_runner_1.default.buildParameters);
cloud_runner_1.default.lockedWorkspace = undefined;
}
cloud_runner_logger_1.default.log(`Cloud Runner finished running standard build automation`);
return output;

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -78,6 +78,7 @@ export class Cli {
${JSON.stringify(buildParameter, undefined, 4)}
`);
CloudRunner.buildParameters = buildParameter;
CloudRunner.lockedWorkspace = process.env.LOCKED_WORKSPACE;
return await results.target[results.propertyKey](Cli.options);
}

View File

@ -20,6 +20,7 @@ class CloudRunner {
public static buildParameters: BuildParameters;
private static defaultSecrets: CloudRunnerSecret[];
private static cloudRunnerEnvironmentVariables: CloudRunnerEnvironmentVariable[];
static lockedWorkspace: string | undefined;
public static setup(buildParameters: BuildParameters) {
CloudRunnerLogger.setup();
CloudRunner.buildParameters = buildParameters;

View File

@ -11,8 +11,8 @@ export class CloudRunnerFolders {
// Only the following paths that do not start a path.join with another "Full" suffixed property need to start with an absolute /
public static get uniqueCloudRunnerJobFolderAbsolute(): string {
return CloudRunner.buildParameters.retainWorkspace && process.env.LOCKED_WORKSPACE
? path.join(`/`, CloudRunnerFolders.buildVolumeFolder, process.env.LOCKED_WORKSPACE)
return CloudRunner.buildParameters.retainWorkspace && CloudRunner.lockedWorkspace
? path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.lockedWorkspace)
: path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.buildParameters.buildGuid);
}

View File

@ -33,6 +33,7 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
)) || CloudRunner.buildParameters.buildGuid;
process.env.LOCKED_WORKSPACE = workspace;
CloudRunner.lockedWorkspace = workspace;
CloudRunnerLogger.logLine(`Using workspace ${workspace}`);
cloudRunnerStepState.environment = [
@ -87,6 +88,7 @@ export class BuildAutomationWorkflow implements WorkflowInterface {
CloudRunner.buildParameters.buildGuid,
CloudRunner.buildParameters,
);
CloudRunner.lockedWorkspace = undefined;
}
CloudRunnerLogger.log(`Cloud Runner finished running standard build automation`);