improve locking naming

pull/524/head
Frostebite 2023-03-20 19:23:53 +00:00
parent a34b82de82
commit e3b1e975ad
9 changed files with 33 additions and 32 deletions

31
dist/index.js vendored
View File

@ -207,7 +207,7 @@ const cli_1 = __nccwpck_require__(55651);
const github_1 = __importDefault(__nccwpck_require__(83654)); const github_1 = __importDefault(__nccwpck_require__(83654));
const cloud_runner_options_1 = __importDefault(__nccwpck_require__(96552)); const cloud_runner_options_1 = __importDefault(__nccwpck_require__(96552));
class BuildParameters { class BuildParameters {
static useRetainedWorkspaceMode(buildParameters) { static shouldUseRetainedWorkspaceMode(buildParameters) {
return buildParameters.maxRetainedWorkspaces > 0; return buildParameters.maxRetainedWorkspaces > 0;
} }
static async create() { static async create() {
@ -548,7 +548,7 @@ class Cli {
${JSON.stringify(buildParameter, undefined, 4)} ${JSON.stringify(buildParameter, undefined, 4)}
`); `);
__1.CloudRunner.buildParameters = buildParameter; __1.CloudRunner.buildParameters = buildParameter;
__1.CloudRunner.lockedWorkspace = process.env.CI_LOCKED_WORKSPACE; __1.CloudRunner.lockedWorkspace = process.env.CI_LOCKED_WORKSPACE || ``;
await __1.CloudRunner.setup(buildParameter); await __1.CloudRunner.setup(buildParameter);
return await results.target[results.propertyKey](Cli.options); return await results.target[results.propertyKey](Cli.options);
} }
@ -618,7 +618,7 @@ class Cli {
core.info(`Running POST build tasks`); core.info(`Running POST build tasks`);
await caching_1.Caching.PushToCache(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(`${cloud_runner_folders_1.CloudRunnerFolders.cacheFolderForCacheKeyFull}/Library`), cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.libraryFolderAbsolute), `lib-${__1.CloudRunner.buildParameters.buildGuid}`); await caching_1.Caching.PushToCache(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(`${cloud_runner_folders_1.CloudRunnerFolders.cacheFolderForCacheKeyFull}/Library`), cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.libraryFolderAbsolute), `lib-${__1.CloudRunner.buildParameters.buildGuid}`);
await caching_1.Caching.PushToCache(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(`${cloud_runner_folders_1.CloudRunnerFolders.cacheFolderForCacheKeyFull}/build`), cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.projectBuildFolderAbsolute), `build-${__1.CloudRunner.buildParameters.buildGuid}`); await caching_1.Caching.PushToCache(cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(`${cloud_runner_folders_1.CloudRunnerFolders.cacheFolderForCacheKeyFull}/build`), cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.projectBuildFolderAbsolute), `build-${__1.CloudRunner.buildParameters.buildGuid}`);
if (!__1.BuildParameters.useRetainedWorkspaceMode(__1.CloudRunner.buildParameters)) { if (!__1.BuildParameters.shouldUseRetainedWorkspaceMode(__1.CloudRunner.buildParameters)) {
await cloud_runner_system_1.CloudRunnerSystem.Run(`rm -r ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`); await cloud_runner_system_1.CloudRunnerSystem.Run(`rm -r ${cloud_runner_folders_1.CloudRunnerFolders.ToLinuxFolder(cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`);
} }
await remote_client_1.RemoteClient.runCustomHookFiles(`after-build`); await remote_client_1.RemoteClient.runCustomHookFiles(`after-build`);
@ -1050,7 +1050,7 @@ class CloudRunner {
if (!CloudRunner.buildParameters.isCliMode) if (!CloudRunner.buildParameters.isCliMode)
core.endGroup(); core.endGroup();
try { try {
if (__1.BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (__1.BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
CloudRunner.lockedWorkspace = shared_workspace_locking_1.default.NewWorkspaceName(); CloudRunner.lockedWorkspace = shared_workspace_locking_1.default.NewWorkspaceName();
const result = await shared_workspace_locking_1.default.GetLockedWorkspace(CloudRunner.lockedWorkspace, CloudRunner.buildParameters.buildGuid, CloudRunner.buildParameters); const result = await shared_workspace_locking_1.default.GetLockedWorkspace(CloudRunner.lockedWorkspace, CloudRunner.buildParameters.buildGuid, CloudRunner.buildParameters);
if (result) { if (result) {
@ -1063,7 +1063,7 @@ class CloudRunner {
else { else {
cloud_runner_logger_1.default.log(`Max retained workspaces reached ${buildParameters.maxRetainedWorkspaces}`); cloud_runner_logger_1.default.log(`Max retained workspaces reached ${buildParameters.maxRetainedWorkspaces}`);
buildParameters.maxRetainedWorkspaces = 0; buildParameters.maxRetainedWorkspaces = 0;
CloudRunner.lockedWorkspace = undefined; CloudRunner.lockedWorkspace = ``;
} }
} }
const content = { ...CloudRunner.buildParameters }; const content = { ...CloudRunner.buildParameters };
@ -1079,14 +1079,14 @@ class CloudRunner {
if (!CloudRunner.buildParameters.isCliMode) if (!CloudRunner.buildParameters.isCliMode)
core.endGroup(); core.endGroup();
await github_1.default.updateGitHubCheck(CloudRunner.buildParameters.buildGuid, `success`, `success`, `completed`); await github_1.default.updateGitHubCheck(CloudRunner.buildParameters.buildGuid, `success`, `success`, `completed`);
if (__1.BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (__1.BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
const workspace = CloudRunner.lockedWorkspace || ``; const workspace = CloudRunner.lockedWorkspace || ``;
await shared_workspace_locking_1.default.ReleaseWorkspace(workspace, CloudRunner.buildParameters.buildGuid, CloudRunner.buildParameters); await shared_workspace_locking_1.default.ReleaseWorkspace(workspace, CloudRunner.buildParameters.buildGuid, CloudRunner.buildParameters);
const isLocked = await shared_workspace_locking_1.default.IsWorkspaceLocked(workspace, CloudRunner.buildParameters); const isLocked = await shared_workspace_locking_1.default.IsWorkspaceLocked(workspace, CloudRunner.buildParameters);
if (isLocked) { if (isLocked) {
throw new Error(`still locked after releasing ${await shared_workspace_locking_1.default.GetAllLocksForWorkspace(workspace, buildParameters)}`); throw new Error(`still locked after releasing ${await shared_workspace_locking_1.default.GetAllLocksForWorkspace(workspace, buildParameters)}`);
} }
CloudRunner.lockedWorkspace = undefined; CloudRunner.lockedWorkspace = ``;
} }
await github_1.default.triggerWorkflowOnComplete(CloudRunner.buildParameters.finalHooks); await github_1.default.triggerWorkflowOnComplete(CloudRunner.buildParameters.finalHooks);
if (buildParameters.constantGarbageCollection) { if (buildParameters.constantGarbageCollection) {
@ -1104,6 +1104,7 @@ class CloudRunner {
} }
} }
} }
CloudRunner.lockedWorkspace = ``;
CloudRunner.retainedWorkspacePrefix = `retained-workspace`; CloudRunner.retainedWorkspacePrefix = `retained-workspace`;
exports["default"] = CloudRunner; exports["default"] = CloudRunner;
@ -3115,7 +3116,7 @@ class Kubernetes {
defaultSecretsArray) { defaultSecretsArray) {
try { try {
this.buildParameters = buildParameters; this.buildParameters = buildParameters;
const id = __1.BuildParameters.useRetainedWorkspaceMode(buildParameters) const id = __1.BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)
? cloud_runner_1.default.lockedWorkspace ? cloud_runner_1.default.lockedWorkspace
: buildParameters.buildGuid; : buildParameters.buildGuid;
this.pvcName = `unity-builder-pvc-${id}`; this.pvcName = `unity-builder-pvc-${id}`;
@ -3278,7 +3279,7 @@ class Kubernetes {
branchName, branchName,
// eslint-disable-next-line no-unused-vars // eslint-disable-next-line no-unused-vars
defaultSecretsArray) { defaultSecretsArray) {
if (__1.BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (__1.BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
return; return;
} }
cloud_runner_logger_1.default.log(`deleting PVC`); cloud_runner_logger_1.default.log(`deleting PVC`);
@ -4249,10 +4250,10 @@ class RemoteClient {
} }
static async cloneRepoWithoutLFSFiles() { static async cloneRepoWithoutLFSFiles() {
process.chdir(`${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`); process.chdir(`${cloud_runner_folders_1.CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`);
if (build_parameters_1.default.useRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)) { if (build_parameters_1.default.shouldUseRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)) {
if (node_fs_1.default.existsSync(node_path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`))) { if (node_fs_1.default.existsSync(node_path_1.default.join(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute, `.git`))) {
process.chdir(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute); process.chdir(cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute);
remote_client_logger_1.RemoteClientLogger.log(`${cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${build_parameters_1.default.useRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)}`); remote_client_logger_1.RemoteClientLogger.log(`${cloud_runner_folders_1.CloudRunnerFolders.repoPathAbsolute} repo exists - skipping clone - retained workspace mode ${build_parameters_1.default.shouldUseRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)}`);
await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch && git reset --hard ${cloud_runner_1.default.buildParameters.gitSha}`); await cloud_runner_system_1.CloudRunnerSystem.Run(`git fetch && git reset --hard ${cloud_runner_1.default.buildParameters.gitSha}`);
return; return;
} }
@ -4309,7 +4310,7 @@ class RemoteClient {
} }
} }
static async handleRetainedWorkspace() { static async handleRetainedWorkspace() {
if (!build_parameters_1.default.useRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)) { if (!build_parameters_1.default.shouldUseRetainedWorkspaceMode(cloud_runner_1.default.buildParameters)) {
return; return;
} }
remote_client_logger_1.RemoteClientLogger.log(`Retained Workspace: ${cloud_runner_1.default.lockedWorkspace !== undefined}`); remote_client_logger_1.RemoteClientLogger.log(`Retained Workspace: ${cloud_runner_1.default.lockedWorkspace !== undefined}`);
@ -4823,8 +4824,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 / // 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() { static get uniqueCloudRunnerJobFolderAbsolute() {
return cloud_runner_1.default.buildParameters && return cloud_runner_1.default.buildParameters &&
build_parameters_1.default.useRetainedWorkspaceMode(cloud_runner_1.default.buildParameters) && build_parameters_1.default.shouldUseRetainedWorkspaceMode(cloud_runner_1.default.buildParameters) &&
cloud_runner_1.default.lockedWorkspace cloud_runner_1.default.lockedWorkspace !== ``
? node_path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.lockedWorkspace) ? node_path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.lockedWorkspace)
: node_path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.buildParameters.buildGuid); : node_path_1.default.join(`/`, CloudRunnerFolders.buildVolumeFolder, cloud_runner_1.default.buildParameters.buildGuid);
} }
@ -5331,7 +5332,7 @@ class SharedWorkspaceLocking {
.filter((x) => x.includes(workspace) && x.endsWith(`_lock`)); .filter((x) => x.includes(workspace) && x.endsWith(`_lock`));
} }
static async GetLockedWorkspace(workspace, runId, buildParametersContext) { static async GetLockedWorkspace(workspace, runId, buildParametersContext) {
if (!build_parameters_1.default.useRetainedWorkspaceMode(buildParametersContext)) { if (!build_parameters_1.default.shouldUseRetainedWorkspaceMode(buildParametersContext)) {
return false; return false;
} }
if (await SharedWorkspaceLocking.DoesCacheKeyTopLevelExist(buildParametersContext)) { if (await SharedWorkspaceLocking.DoesCacheKeyTopLevelExist(buildParametersContext)) {

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -81,7 +81,7 @@ class BuildParameters {
public skipCache!: boolean; public skipCache!: boolean;
public cacheUnityInstallationOnMac!: boolean; public cacheUnityInstallationOnMac!: boolean;
public unityHubVersionOnMac!: string; public unityHubVersionOnMac!: string;
public static useRetainedWorkspaceMode(buildParameters: BuildParameters) { public static shouldUseRetainedWorkspaceMode(buildParameters: BuildParameters) {
return buildParameters.maxRetainedWorkspaces > 0; return buildParameters.maxRetainedWorkspaces > 0;
} }

View File

@ -79,7 +79,7 @@ export class Cli {
${JSON.stringify(buildParameter, undefined, 4)} ${JSON.stringify(buildParameter, undefined, 4)}
`); `);
CloudRunner.buildParameters = buildParameter; CloudRunner.buildParameters = buildParameter;
CloudRunner.lockedWorkspace = process.env.CI_LOCKED_WORKSPACE; CloudRunner.lockedWorkspace = process.env.CI_LOCKED_WORKSPACE || ``;
await CloudRunner.setup(buildParameter); await CloudRunner.setup(buildParameter);
return await results.target[results.propertyKey](Cli.options); return await results.target[results.propertyKey](Cli.options);
@ -191,7 +191,7 @@ export class Cli {
`build-${CloudRunner.buildParameters.buildGuid}`, `build-${CloudRunner.buildParameters.buildGuid}`,
); );
if (!BuildParameters.useRetainedWorkspaceMode(CloudRunner.buildParameters)) { if (!BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters)) {
await CloudRunnerSystem.Run( await CloudRunnerSystem.Run(
`rm -r ${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`, `rm -r ${CloudRunnerFolders.ToLinuxFolder(CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute)}`,
); );

View File

@ -21,7 +21,7 @@ class CloudRunner {
public static buildParameters: BuildParameters; public static buildParameters: BuildParameters;
private static defaultSecrets: CloudRunnerSecret[]; private static defaultSecrets: CloudRunnerSecret[];
private static cloudRunnerEnvironmentVariables: CloudRunnerEnvironmentVariable[]; private static cloudRunnerEnvironmentVariables: CloudRunnerEnvironmentVariable[];
static lockedWorkspace: string | undefined; static lockedWorkspace: string = ``;
public static readonly retainedWorkspacePrefix: string = `retained-workspace`; public static readonly retainedWorkspacePrefix: string = `retained-workspace`;
public static get isCloudRunnerEnvironment() { public static get isCloudRunnerEnvironment() {
return process.env[`GITHUB_ACTIONS`] !== `true`; return process.env[`GITHUB_ACTIONS`] !== `true`;
@ -91,7 +91,7 @@ class CloudRunner {
); );
if (!CloudRunner.buildParameters.isCliMode) core.endGroup(); if (!CloudRunner.buildParameters.isCliMode) core.endGroup();
try { try {
if (BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
CloudRunner.lockedWorkspace = SharedWorkspaceLocking.NewWorkspaceName(); CloudRunner.lockedWorkspace = SharedWorkspaceLocking.NewWorkspaceName();
const result = await SharedWorkspaceLocking.GetLockedWorkspace( const result = await SharedWorkspaceLocking.GetLockedWorkspace(
@ -109,7 +109,7 @@ class CloudRunner {
} else { } else {
CloudRunnerLogger.log(`Max retained workspaces reached ${buildParameters.maxRetainedWorkspaces}`); CloudRunnerLogger.log(`Max retained workspaces reached ${buildParameters.maxRetainedWorkspaces}`);
buildParameters.maxRetainedWorkspaces = 0; buildParameters.maxRetainedWorkspaces = 0;
CloudRunner.lockedWorkspace = undefined; CloudRunner.lockedWorkspace = ``;
} }
} }
const content = { ...CloudRunner.buildParameters }; const content = { ...CloudRunner.buildParameters };
@ -131,7 +131,7 @@ class CloudRunner {
if (!CloudRunner.buildParameters.isCliMode) core.endGroup(); if (!CloudRunner.buildParameters.isCliMode) core.endGroup();
await GitHub.updateGitHubCheck(CloudRunner.buildParameters.buildGuid, `success`, `success`, `completed`); await GitHub.updateGitHubCheck(CloudRunner.buildParameters.buildGuid, `success`, `success`, `completed`);
if (BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
const workspace = CloudRunner.lockedWorkspace || ``; const workspace = CloudRunner.lockedWorkspace || ``;
await SharedWorkspaceLocking.ReleaseWorkspace( await SharedWorkspaceLocking.ReleaseWorkspace(
workspace, workspace,
@ -147,7 +147,7 @@ class CloudRunner {
)}`, )}`,
); );
} }
CloudRunner.lockedWorkspace = undefined; CloudRunner.lockedWorkspace = ``;
} }
await GitHub.triggerWorkflowOnComplete(CloudRunner.buildParameters.finalHooks); await GitHub.triggerWorkflowOnComplete(CloudRunner.buildParameters.finalHooks);

View File

@ -95,7 +95,7 @@ class Kubernetes implements ProviderInterface {
) { ) {
try { try {
this.buildParameters = buildParameters; this.buildParameters = buildParameters;
const id = BuildParameters.useRetainedWorkspaceMode(buildParameters) const id = BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)
? CloudRunner.lockedWorkspace ? CloudRunner.lockedWorkspace
: buildParameters.buildGuid; : buildParameters.buildGuid;
this.pvcName = `unity-builder-pvc-${id}`; this.pvcName = `unity-builder-pvc-${id}`;
@ -334,7 +334,7 @@ class Kubernetes implements ProviderInterface {
// eslint-disable-next-line no-unused-vars // eslint-disable-next-line no-unused-vars
defaultSecretsArray: { ParameterKey: string; EnvironmentVariable: string; ParameterValue: string }[], defaultSecretsArray: { ParameterKey: string; EnvironmentVariable: string; ParameterValue: string }[],
) { ) {
if (BuildParameters.useRetainedWorkspaceMode(buildParameters)) { if (BuildParameters.shouldUseRetainedWorkspaceMode(buildParameters)) {
return; return;
} }
CloudRunnerLogger.log(`deleting PVC`); CloudRunnerLogger.log(`deleting PVC`);

View File

@ -91,13 +91,13 @@ export class RemoteClient {
private static async cloneRepoWithoutLFSFiles() { private static async cloneRepoWithoutLFSFiles() {
process.chdir(`${CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`); process.chdir(`${CloudRunnerFolders.uniqueCloudRunnerJobFolderAbsolute}`);
if (BuildParameters.useRetainedWorkspaceMode(CloudRunner.buildParameters)) { if (BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters)) {
if (fs.existsSync(path.join(CloudRunnerFolders.repoPathAbsolute, `.git`))) { if (fs.existsSync(path.join(CloudRunnerFolders.repoPathAbsolute, `.git`))) {
process.chdir(CloudRunnerFolders.repoPathAbsolute); process.chdir(CloudRunnerFolders.repoPathAbsolute);
RemoteClientLogger.log( RemoteClientLogger.log(
`${ `${
CloudRunnerFolders.repoPathAbsolute CloudRunnerFolders.repoPathAbsolute
} repo exists - skipping clone - retained workspace mode ${BuildParameters.useRetainedWorkspaceMode( } repo exists - skipping clone - retained workspace mode ${BuildParameters.shouldUseRetainedWorkspaceMode(
CloudRunner.buildParameters, CloudRunner.buildParameters,
)}`, )}`,
); );
@ -162,7 +162,7 @@ export class RemoteClient {
} }
} }
static async handleRetainedWorkspace() { static async handleRetainedWorkspace() {
if (!BuildParameters.useRetainedWorkspaceMode(CloudRunner.buildParameters)) { if (!BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters)) {
return; return;
} }
RemoteClientLogger.log(`Retained Workspace: ${CloudRunner.lockedWorkspace !== undefined}`); RemoteClientLogger.log(`Retained Workspace: ${CloudRunner.lockedWorkspace !== undefined}`);

View File

@ -14,8 +14,8 @@ export class CloudRunnerFolders {
public static get uniqueCloudRunnerJobFolderAbsolute(): string { public static get uniqueCloudRunnerJobFolderAbsolute(): string {
return CloudRunner.buildParameters && return CloudRunner.buildParameters &&
BuildParameters.useRetainedWorkspaceMode(CloudRunner.buildParameters) && BuildParameters.shouldUseRetainedWorkspaceMode(CloudRunner.buildParameters) &&
CloudRunner.lockedWorkspace CloudRunner.lockedWorkspace !== ``
? path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.lockedWorkspace) ? path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.lockedWorkspace)
: path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.buildParameters.buildGuid); : path.join(`/`, CloudRunnerFolders.buildVolumeFolder, CloudRunner.buildParameters.buildGuid);
} }

View File

@ -63,7 +63,7 @@ export class SharedWorkspaceLocking {
.filter((x) => x.includes(workspace) && x.endsWith(`_lock`)); .filter((x) => x.includes(workspace) && x.endsWith(`_lock`));
} }
public static async GetLockedWorkspace(workspace: string, runId: string, buildParametersContext: BuildParameters) { public static async GetLockedWorkspace(workspace: string, runId: string, buildParametersContext: BuildParameters) {
if (!BuildParameters.useRetainedWorkspaceMode(buildParametersContext)) { if (!BuildParameters.shouldUseRetainedWorkspaceMode(buildParametersContext)) {
return false; return false;
} }