pull/496/head
Frostebite 2023-02-12 03:34:34 +00:00
parent 29ae2e4659
commit d7059f7206
3 changed files with 11 additions and 6 deletions

View File

@ -5,10 +5,10 @@ import CloudRunnerOptions from '../cloud-runner-options';
import BuildParameters from '../../build-parameters';
import CloudRunner from '../cloud-runner';
export class SharedWorkspaceLocking {
private static get workspaceBucketRoot() {
public static get workspaceBucketRoot() {
return `s3://${CloudRunner.buildParameters.awsBaseStackName}/`;
}
private static get workspaceRoot() {
public static get workspaceRoot() {
return `${SharedWorkspaceLocking.workspaceBucketRoot}locks/`;
}
public static async GetAllWorkspaces(buildParametersContext: BuildParameters): Promise<string[]> {
@ -281,7 +281,7 @@ export class SharedWorkspaceLocking {
);
}
private static async ReadLines(command: string): Promise<string[]> {
public static async ReadLines(command: string): Promise<string[]> {
return CloudRunnerSystem.RunAndReadLines(command);
}
}

View File

@ -6,7 +6,6 @@ import setups from './cloud-runner-suite.test';
import fs from 'fs';
import { CreateParameters } from './create-test-parameter';
import CloudRunnerLogger from '../services/cloud-runner-logger';
import { CloudRunnerSystem } from '../services/cloud-runner-system';
describe('Cloud Runner Local Docker Workflows', () => {
setups();
@ -15,7 +14,6 @@ describe('Cloud Runner Local Docker Workflows', () => {
if (CloudRunnerOptions.cloudRunnerCluster === `local-docker`) {
it('inspect stateful folder of Workflows', async () => {
const testValue = `the state in a job exits in the expected local-docker folder`;
await CloudRunnerSystem.Run(`echo "${testValue}" >> ./cloud-runner-cache/test-in-state.txt`);
// Setup parameters
const buildParameter = await CreateParameters({
@ -25,7 +23,7 @@ describe('Cloud Runner Local Docker Workflows', () => {
customJob: `
- name: 'step 1'
image: 'ubuntu'
commands: 'ls /data/ && cat /data/test-in-state.txt >> /data/test-out-state.txt'
commands: 'echo "${testValue}" >> /data/test-out-state.txt'
`,
});
const baseImage = new ImageTag(buildParameter);

View File

@ -44,6 +44,13 @@ describe('Cloud Runner Locking', () => {
CloudRunnerLogger.log(
await (await SharedWorkspaceLocking.GetAllLocks(newWorkspaceName, buildParameters)).join(`,`),
);
CloudRunnerLogger.log(
(
await SharedWorkspaceLocking.ReadLines(
`aws s3 ls ${SharedWorkspaceLocking.workspaceRoot}${buildParameters.cacheKey}/`,
)
).join(`,`),
);
const isExpectedLockedAfterLocking =
(await SharedWorkspaceLocking.IsWorkspaceLocked(newWorkspaceName, buildParameters)) === true;
expect(isExpectedLockedAfterLocking).toBeTruthy();