lock test

pull/461/head
Frostebite 2022-09-17 04:38:00 +01:00
parent 54eab9797b
commit 9ed3251455
4 changed files with 24 additions and 3 deletions

8
dist/index.js vendored
View File

@ -618,6 +618,7 @@ exports.SharedWorkspaceLocking = void 0;
const cloud_runner_system_1 = __nccwpck_require__(99393); const cloud_runner_system_1 = __nccwpck_require__(99393);
const fs = __importStar(__nccwpck_require__(57147)); const fs = __importStar(__nccwpck_require__(57147));
const cloud_runner_1 = __importDefault(__nccwpck_require__(79144)); const cloud_runner_1 = __importDefault(__nccwpck_require__(79144));
const cloud_runner_logger_1 = __importDefault(__nccwpck_require__(22855));
class SharedWorkspaceLocking { class SharedWorkspaceLocking {
static GetLockedWorkspace() { static GetLockedWorkspace() {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
@ -648,7 +649,12 @@ class SharedWorkspaceLocking {
} }
static HasWorkspaceLock(workspace) { static HasWorkspaceLock(workspace) {
return __awaiter(this, void 0, void 0, function* () { return __awaiter(this, void 0, void 0, function* () {
yield cloud_runner_system_1.CloudRunnerSystem.Run(`aws s3 ls s3://game-ci-test-storage/locks/${workspace}`); cloud_runner_logger_1.default.log((yield cloud_runner_system_1.CloudRunnerSystem.Run(`aws s3 ls s3://game-ci-test-storage/locks/${workspace}/`))
.split('\n')
.map((x) => {
return x.split(' ');
})
.length.toString());
return true; return true;
}); });
} }

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,7 @@
import { CloudRunnerSystem } from '../cloud-runner/services/cloud-runner-system'; import { CloudRunnerSystem } from '../cloud-runner/services/cloud-runner-system';
import * as fs from 'fs'; import * as fs from 'fs';
import CloudRunner from '../cloud-runner/cloud-runner'; import CloudRunner from '../cloud-runner/cloud-runner';
import CloudRunnerLogger from '../cloud-runner/services/cloud-runner-logger';
export class SharedWorkspaceLocking { export class SharedWorkspaceLocking {
public static async GetLockedWorkspace() { public static async GetLockedWorkspace() {
const workspaces = SharedWorkspaceLocking.GetFreeWorkspaces(); const workspaces = SharedWorkspaceLocking.GetFreeWorkspaces();
@ -29,7 +30,14 @@ export class SharedWorkspaceLocking {
return SharedWorkspaceLocking.HasWorkspaceLock(workspace); return SharedWorkspaceLocking.HasWorkspaceLock(workspace);
} }
public static async HasWorkspaceLock(workspace: string): Promise<boolean> { public static async HasWorkspaceLock(workspace: string): Promise<boolean> {
await CloudRunnerSystem.Run(`aws s3 ls s3://game-ci-test-storage/locks/${workspace}`); CloudRunnerLogger.log(
(await CloudRunnerSystem.Run(`aws s3 ls s3://game-ci-test-storage/locks/${workspace}/`))
.split('\n')
.map((x) => {
return x.split(' ');
})
.length.toString(),
);
return true; return true;
} }

View File

@ -0,0 +1,7 @@
import SharedWorkspaceLocking from '../../cli/shared-workspace-locking';
describe('Cloud Runner', () => {
it('Locking', async () => {
await SharedWorkspaceLocking.IsWorkspaceLocked('test-workspace');
});
});