new test
parent
29ae2e4659
commit
d7059f7206
|
@ -5,10 +5,10 @@ import CloudRunnerOptions from '../cloud-runner-options';
|
||||||
import BuildParameters from '../../build-parameters';
|
import BuildParameters from '../../build-parameters';
|
||||||
import CloudRunner from '../cloud-runner';
|
import CloudRunner from '../cloud-runner';
|
||||||
export class SharedWorkspaceLocking {
|
export class SharedWorkspaceLocking {
|
||||||
private static get workspaceBucketRoot() {
|
public static get workspaceBucketRoot() {
|
||||||
return `s3://${CloudRunner.buildParameters.awsBaseStackName}/`;
|
return `s3://${CloudRunner.buildParameters.awsBaseStackName}/`;
|
||||||
}
|
}
|
||||||
private static get workspaceRoot() {
|
public static get workspaceRoot() {
|
||||||
return `${SharedWorkspaceLocking.workspaceBucketRoot}locks/`;
|
return `${SharedWorkspaceLocking.workspaceBucketRoot}locks/`;
|
||||||
}
|
}
|
||||||
public static async GetAllWorkspaces(buildParametersContext: BuildParameters): Promise<string[]> {
|
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);
|
return CloudRunnerSystem.RunAndReadLines(command);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,6 @@ import setups from './cloud-runner-suite.test';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import { CreateParameters } from './create-test-parameter';
|
import { CreateParameters } from './create-test-parameter';
|
||||||
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
import CloudRunnerLogger from '../services/cloud-runner-logger';
|
||||||
import { CloudRunnerSystem } from '../services/cloud-runner-system';
|
|
||||||
|
|
||||||
describe('Cloud Runner Local Docker Workflows', () => {
|
describe('Cloud Runner Local Docker Workflows', () => {
|
||||||
setups();
|
setups();
|
||||||
|
@ -15,7 +14,6 @@ describe('Cloud Runner Local Docker Workflows', () => {
|
||||||
if (CloudRunnerOptions.cloudRunnerCluster === `local-docker`) {
|
if (CloudRunnerOptions.cloudRunnerCluster === `local-docker`) {
|
||||||
it('inspect stateful folder of Workflows', async () => {
|
it('inspect stateful folder of Workflows', async () => {
|
||||||
const testValue = `the state in a job exits in the expected local-docker folder`;
|
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
|
// Setup parameters
|
||||||
const buildParameter = await CreateParameters({
|
const buildParameter = await CreateParameters({
|
||||||
|
@ -25,7 +23,7 @@ describe('Cloud Runner Local Docker Workflows', () => {
|
||||||
customJob: `
|
customJob: `
|
||||||
- name: 'step 1'
|
- name: 'step 1'
|
||||||
image: 'ubuntu'
|
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);
|
const baseImage = new ImageTag(buildParameter);
|
||||||
|
|
|
@ -44,6 +44,13 @@ describe('Cloud Runner Locking', () => {
|
||||||
CloudRunnerLogger.log(
|
CloudRunnerLogger.log(
|
||||||
await (await SharedWorkspaceLocking.GetAllLocks(newWorkspaceName, buildParameters)).join(`,`),
|
await (await SharedWorkspaceLocking.GetAllLocks(newWorkspaceName, buildParameters)).join(`,`),
|
||||||
);
|
);
|
||||||
|
CloudRunnerLogger.log(
|
||||||
|
(
|
||||||
|
await SharedWorkspaceLocking.ReadLines(
|
||||||
|
`aws s3 ls ${SharedWorkspaceLocking.workspaceRoot}${buildParameters.cacheKey}/`,
|
||||||
|
)
|
||||||
|
).join(`,`),
|
||||||
|
);
|
||||||
const isExpectedLockedAfterLocking =
|
const isExpectedLockedAfterLocking =
|
||||||
(await SharedWorkspaceLocking.IsWorkspaceLocked(newWorkspaceName, buildParameters)) === true;
|
(await SharedWorkspaceLocking.IsWorkspaceLocked(newWorkspaceName, buildParameters)) === true;
|
||||||
expect(isExpectedLockedAfterLocking).toBeTruthy();
|
expect(isExpectedLockedAfterLocking).toBeTruthy();
|
||||||
|
|
Loading…
Reference in New Issue