@ludeo/cloud-common 1.2.258 → 1.2.260-beta-yahil-1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/v4/types/site-controller/index.d.ts +1 -0
- package/dist/v4/types/site-controller/index.js +1 -0
- package/dist/v4/types/site-controller/index.js.map +1 -1
- package/dist/v4/types/site-controller/runtime-artifacts.dto.d.ts +22 -0
- package/dist/v4/types/site-controller/runtime-artifacts.dto.js +77 -0
- package/dist/v4/types/site-controller/runtime-artifacts.dto.js.map +1 -0
- package/dist/v4/types/site-controller/types.d.ts +4 -1
- package/dist/v4/types/site-controller/types.js +12 -2
- package/dist/v4/types/site-controller/types.js.map +1 -1
- package/package.json +1 -1
- package/src/v4/types/site-controller/index.ts +2 -1
- package/src/v4/types/site-controller/runtime-artifacts.dto.ts +51 -0
- package/src/v4/types/site-controller/types.ts +15 -3
|
@@ -21,4 +21,5 @@ __exportStar(require("./create-distribution.dto"), exports);
|
|
|
21
21
|
__exportStar(require("./terminate-build-distribution.dto"), exports);
|
|
22
22
|
__exportStar(require("./terminate-machine.dto"), exports);
|
|
23
23
|
__exportStar(require("./terminate-game.dto"), exports);
|
|
24
|
+
__exportStar(require("./runtime-artifacts.dto"), exports);
|
|
24
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,qEAAmD;AACnD,0DAAwC;AACxC,uDAAqC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0CAAwB;AACxB,uDAAqC;AACrC,oDAAkC;AAClC,4DAA0C;AAC1C,qEAAmD;AACnD,0DAAwC;AACxC,uDAAqC;AACrC,0DAAwC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export declare class RuntimeArtifactUploadObjectDto {
|
|
2
|
+
key: string;
|
|
3
|
+
contentType?: string;
|
|
4
|
+
}
|
|
5
|
+
export declare class ObjectKeyUrlPair {
|
|
6
|
+
key: string;
|
|
7
|
+
url: string;
|
|
8
|
+
}
|
|
9
|
+
export declare class RuntimeArtifactsDownloadUrlsRequestDto {
|
|
10
|
+
artifactPrefix: string;
|
|
11
|
+
latestVersion: string;
|
|
12
|
+
}
|
|
13
|
+
export declare class RuntimeArtifactsUploadUrlsRequestDto {
|
|
14
|
+
objects: RuntimeArtifactUploadObjectDto[];
|
|
15
|
+
}
|
|
16
|
+
export declare class RuntimeArtifactsDownloadUrlsResponseDto {
|
|
17
|
+
objects: ObjectKeyUrlPair[];
|
|
18
|
+
artifactPrefix: string;
|
|
19
|
+
}
|
|
20
|
+
export declare class RuntimeArtifactsUploadUrlsResponseDto {
|
|
21
|
+
urls: ObjectKeyUrlPair[];
|
|
22
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.RuntimeArtifactsUploadUrlsResponseDto = exports.RuntimeArtifactsDownloadUrlsResponseDto = exports.RuntimeArtifactsUploadUrlsRequestDto = exports.RuntimeArtifactsDownloadUrlsRequestDto = exports.ObjectKeyUrlPair = exports.RuntimeArtifactUploadObjectDto = void 0;
|
|
13
|
+
const class_validator_1 = require("class-validator");
|
|
14
|
+
const validate_nested_type_decorator_1 = require("../../../decorators/validate-nested-type.decorator");
|
|
15
|
+
class RuntimeArtifactUploadObjectDto {
|
|
16
|
+
}
|
|
17
|
+
exports.RuntimeArtifactUploadObjectDto = RuntimeArtifactUploadObjectDto;
|
|
18
|
+
__decorate([
|
|
19
|
+
(0, class_validator_1.IsString)(),
|
|
20
|
+
__metadata("design:type", String)
|
|
21
|
+
], RuntimeArtifactUploadObjectDto.prototype, "key", void 0);
|
|
22
|
+
__decorate([
|
|
23
|
+
(0, class_validator_1.IsOptional)(),
|
|
24
|
+
(0, class_validator_1.IsString)(),
|
|
25
|
+
__metadata("design:type", String)
|
|
26
|
+
], RuntimeArtifactUploadObjectDto.prototype, "contentType", void 0);
|
|
27
|
+
class ObjectKeyUrlPair {
|
|
28
|
+
}
|
|
29
|
+
exports.ObjectKeyUrlPair = ObjectKeyUrlPair;
|
|
30
|
+
__decorate([
|
|
31
|
+
(0, class_validator_1.IsString)(),
|
|
32
|
+
__metadata("design:type", String)
|
|
33
|
+
], ObjectKeyUrlPair.prototype, "key", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsString)(),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], ObjectKeyUrlPair.prototype, "url", void 0);
|
|
38
|
+
class RuntimeArtifactsDownloadUrlsRequestDto {
|
|
39
|
+
}
|
|
40
|
+
exports.RuntimeArtifactsDownloadUrlsRequestDto = RuntimeArtifactsDownloadUrlsRequestDto;
|
|
41
|
+
__decorate([
|
|
42
|
+
(0, class_validator_1.IsString)(),
|
|
43
|
+
__metadata("design:type", String)
|
|
44
|
+
], RuntimeArtifactsDownloadUrlsRequestDto.prototype, "artifactPrefix", void 0);
|
|
45
|
+
__decorate([
|
|
46
|
+
(0, class_validator_1.IsString)(),
|
|
47
|
+
__metadata("design:type", String)
|
|
48
|
+
], RuntimeArtifactsDownloadUrlsRequestDto.prototype, "latestVersion", void 0);
|
|
49
|
+
class RuntimeArtifactsUploadUrlsRequestDto {
|
|
50
|
+
}
|
|
51
|
+
exports.RuntimeArtifactsUploadUrlsRequestDto = RuntimeArtifactsUploadUrlsRequestDto;
|
|
52
|
+
__decorate([
|
|
53
|
+
(0, class_validator_1.IsArray)(),
|
|
54
|
+
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => RuntimeArtifactUploadObjectDto),
|
|
55
|
+
__metadata("design:type", Array)
|
|
56
|
+
], RuntimeArtifactsUploadUrlsRequestDto.prototype, "objects", void 0);
|
|
57
|
+
class RuntimeArtifactsDownloadUrlsResponseDto {
|
|
58
|
+
}
|
|
59
|
+
exports.RuntimeArtifactsDownloadUrlsResponseDto = RuntimeArtifactsDownloadUrlsResponseDto;
|
|
60
|
+
__decorate([
|
|
61
|
+
(0, class_validator_1.IsArray)(),
|
|
62
|
+
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => ObjectKeyUrlPair),
|
|
63
|
+
__metadata("design:type", Array)
|
|
64
|
+
], RuntimeArtifactsDownloadUrlsResponseDto.prototype, "objects", void 0);
|
|
65
|
+
__decorate([
|
|
66
|
+
(0, class_validator_1.IsString)(),
|
|
67
|
+
__metadata("design:type", String)
|
|
68
|
+
], RuntimeArtifactsDownloadUrlsResponseDto.prototype, "artifactPrefix", void 0);
|
|
69
|
+
class RuntimeArtifactsUploadUrlsResponseDto {
|
|
70
|
+
}
|
|
71
|
+
exports.RuntimeArtifactsUploadUrlsResponseDto = RuntimeArtifactsUploadUrlsResponseDto;
|
|
72
|
+
__decorate([
|
|
73
|
+
(0, class_validator_1.IsArray)(),
|
|
74
|
+
(0, validate_nested_type_decorator_1.ValidateNestedType)(() => ObjectKeyUrlPair),
|
|
75
|
+
__metadata("design:type", Array)
|
|
76
|
+
], RuntimeArtifactsUploadUrlsResponseDto.prototype, "urls", void 0);
|
|
77
|
+
//# sourceMappingURL=runtime-artifacts.dto.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime-artifacts.dto.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/runtime-artifacts.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAgE;AAChE,uGAAwF;AAExF,MAAa,8BAA8B;CAO1C;AAPD,wEAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;2DACC;AAIZ;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mEACU;AAIvB,MAAa,gBAAgB;CAM5B;AAND,4CAMC;AAJC;IADC,IAAA,0BAAQ,GAAE;;6CACC;AAGZ;IADC,IAAA,0BAAQ,GAAE;;6CACC;AAGd,MAAa,sCAAsC;CAOlD;AAPD,wFAOC;AAJC;IADC,IAAA,0BAAQ,GAAE;;8EACY;AAGvB;IADC,IAAA,0BAAQ,GAAE;;6EACW;AAGxB,MAAa,oCAAoC;CAIhD;AAJD,oFAIC;AADC;IAFC,IAAA,yBAAO,GAAE;IACT,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,8BAA8B,CAAC;;qEACf;AAG5C,MAAa,uCAAuC;CAQnD;AARD,0FAQC;AALC;IAFC,IAAA,yBAAO,GAAE;IACT,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC;;wEACf;AAI5B;IADC,IAAA,0BAAQ,GAAE;;+EACY;AAGzB,MAAa,qCAAqC;CAIjD;AAJD,sFAIC;AADC;IAFC,IAAA,yBAAO,GAAE;IACT,IAAA,mDAAkB,EAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC;;mEAClB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { LudeocastV2Distributions } from "../build";
|
|
2
2
|
import { MachineResourceSettings } from "../pools";
|
|
3
3
|
import { LudeoCastV2MachineResourceProviderSettings } from "../cloud";
|
|
4
|
+
import { ObjectKeyUrlPair } from "./runtime-artifacts.dto";
|
|
4
5
|
export declare enum MachineMode {
|
|
5
6
|
PROTON = "proton",
|
|
6
7
|
ANDROID = "android",
|
|
@@ -8,7 +9,8 @@ export declare enum MachineMode {
|
|
|
8
9
|
}
|
|
9
10
|
export declare class RuntimeArtifactsPayload {
|
|
10
11
|
latestVersion: string;
|
|
11
|
-
|
|
12
|
+
downloads: ObjectKeyUrlPair[];
|
|
13
|
+
artifactPrefix: string;
|
|
12
14
|
}
|
|
13
15
|
export declare class ProtonGameCreationPayload {
|
|
14
16
|
exeRelativePath: string;
|
|
@@ -17,6 +19,7 @@ export declare class ProtonGameCreationPayload {
|
|
|
17
19
|
buildId: string;
|
|
18
20
|
gameVersionId?: string;
|
|
19
21
|
runtimeArtifacts?: RuntimeArtifactsPayload;
|
|
22
|
+
additionalMounts?: Record<string, string>;
|
|
20
23
|
}
|
|
21
24
|
export declare class AndroidGameCreationPayload {
|
|
22
25
|
packageId: string;
|
|
@@ -12,6 +12,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
12
12
|
exports.TerminationType = exports.SiteAdapterFlow = exports.AgentRunMode = exports.GameStatusReason = exports.MachineStatusReason = exports.SiteOperationStatus = exports.AndroidGameCreationPayload = exports.ProtonGameCreationPayload = exports.RuntimeArtifactsPayload = exports.MachineMode = void 0;
|
|
13
13
|
const class_validator_1 = require("class-validator");
|
|
14
14
|
const decorators_1 = require("../../../decorators");
|
|
15
|
+
const runtime_artifacts_dto_1 = require("./runtime-artifacts.dto");
|
|
15
16
|
var MachineMode;
|
|
16
17
|
(function (MachineMode) {
|
|
17
18
|
MachineMode["PROTON"] = "proton";
|
|
@@ -27,9 +28,13 @@ __decorate([
|
|
|
27
28
|
], RuntimeArtifactsPayload.prototype, "latestVersion", void 0);
|
|
28
29
|
__decorate([
|
|
29
30
|
(0, class_validator_1.IsArray)(),
|
|
30
|
-
(0,
|
|
31
|
+
(0, decorators_1.ValidateNestedType)(() => runtime_artifacts_dto_1.ObjectKeyUrlPair),
|
|
31
32
|
__metadata("design:type", Array)
|
|
32
|
-
], RuntimeArtifactsPayload.prototype, "
|
|
33
|
+
], RuntimeArtifactsPayload.prototype, "downloads", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
(0, class_validator_1.IsString)(),
|
|
36
|
+
__metadata("design:type", String)
|
|
37
|
+
], RuntimeArtifactsPayload.prototype, "artifactPrefix", void 0);
|
|
33
38
|
class ProtonGameCreationPayload {
|
|
34
39
|
}
|
|
35
40
|
exports.ProtonGameCreationPayload = ProtonGameCreationPayload;
|
|
@@ -61,6 +66,11 @@ __decorate([
|
|
|
61
66
|
(0, decorators_1.ValidateNestedType)(() => RuntimeArtifactsPayload),
|
|
62
67
|
__metadata("design:type", RuntimeArtifactsPayload)
|
|
63
68
|
], ProtonGameCreationPayload.prototype, "runtimeArtifacts", void 0);
|
|
69
|
+
__decorate([
|
|
70
|
+
(0, class_validator_1.IsOptional)(),
|
|
71
|
+
(0, class_validator_1.IsObject)(),
|
|
72
|
+
__metadata("design:type", Object)
|
|
73
|
+
], ProtonGameCreationPayload.prototype, "additionalMounts", void 0);
|
|
64
74
|
class AndroidGameCreationPayload {
|
|
65
75
|
}
|
|
66
76
|
exports.AndroidGameCreationPayload = AndroidGameCreationPayload;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAkF;AAIlF,oDAAyD;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/types.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAkF;AAIlF,oDAAyD;AACzD,mEAA2D;AAE3D,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,gCAAiB,CAAA;IACjB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;AACzB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAGD,MAAa,uBAAuB;CAcnC;AAdD,0DAcC;AAZC;IADC,IAAA,0BAAQ,GAAE;;8DACW;AAKtB;IAFC,IAAA,yBAAO,GAAE;IACT,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,wCAAgB,CAAC;;0DACb;AAM9B;IADC,IAAA,0BAAQ,GAAE;;+DACY;AAGzB,MAAa,yBAAyB;CA2BrC;AA3BD,8DA2BC;AAzBC;IADC,IAAA,0BAAQ,GAAE;;kEACa;AAIxB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;iFAC6C;AAIxD;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;;uEACsB;AAGhC;IADC,IAAA,wBAAM,GAAE;;0DACO;AAIhB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;gEACY;AAIvB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC;8BAC/B,uBAAuB;mEAAC;AAK3C;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;mEAC+B;AAG5C,MAAa,0BAA0B;CAOtC;AAPD,gEAOC;AALC;IADC,IAAA,0BAAQ,GAAE;;6DACO;AAIlB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;kFAC6C;AAO1D,IAAY,mBAGX;AAHD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sCAAe,CAAA;AACjB,CAAC,EAHW,mBAAmB,mCAAnB,mBAAmB,QAG9B;AAED,IAAY,mBAOX;AAPD,WAAY,mBAAmB;IAC7B,0CAAmB,CAAA;IACnB,sEAA+C,CAAA;IAC/C,oEAA6C,CAAA;IAC7C,oDAA6B,CAAA;IAC7B,0DAAmC,CAAA;IACnC,8CAAuB,CAAA;AACzB,CAAC,EAPW,mBAAmB,mCAAnB,mBAAmB,QAO9B;AAED,IAAY,gBAMX;AAND,WAAY,gBAAgB;IAC1B,iDAA6B,CAAA;IAC7B,iDAA6B,CAAA;IAC7B,qDAAiC,CAAA;IACjC,iDAA6B,CAAA;IAC7B,2CAAuB,CAAA;AACzB,CAAC,EANW,gBAAgB,gCAAhB,gBAAgB,QAM3B;AAED,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,yCAAyB,CAAA;IACzB,6CAA6B,CAAA;AAC/B,CAAC,EAHW,YAAY,4BAAZ,YAAY,QAGvB;AAED,IAAY,eAIX;AAJD,WAAY,eAAe;IACzB,wCAAqB,CAAA;IACrB,8CAA2B,CAAA;IAC3B,gCAAa,CAAA;AACf,CAAC,EAJW,eAAe,+BAAf,eAAe,QAI1B;AAED,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,kDAA+B,CAAA;AACjC,CAAC,EAHW,eAAe,+BAAf,eAAe,QAG1B"}
|
package/package.json
CHANGED
|
@@ -4,4 +4,5 @@ export * from "./create-game.dto";
|
|
|
4
4
|
export * from "./create-distribution.dto";
|
|
5
5
|
export * from "./terminate-build-distribution.dto";
|
|
6
6
|
export * from "./terminate-machine.dto";
|
|
7
|
-
export * from "./terminate-game.dto";
|
|
7
|
+
export * from "./terminate-game.dto";
|
|
8
|
+
export * from "./runtime-artifacts.dto";
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { IsArray, IsOptional, IsString } from 'class-validator';
|
|
2
|
+
import { ValidateNestedType } from '../../../decorators/validate-nested-type.decorator';
|
|
3
|
+
|
|
4
|
+
export class RuntimeArtifactUploadObjectDto {
|
|
5
|
+
@IsString()
|
|
6
|
+
key: string;
|
|
7
|
+
|
|
8
|
+
@IsOptional()
|
|
9
|
+
@IsString()
|
|
10
|
+
contentType?: string;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** Full bucket object key paired with a presigned URL (adapter responses and MQTT `runtimeArtifacts.downloads`). */
|
|
14
|
+
export class ObjectKeyUrlPair {
|
|
15
|
+
@IsString()
|
|
16
|
+
key: string;
|
|
17
|
+
|
|
18
|
+
@IsString()
|
|
19
|
+
url: string;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
export class RuntimeArtifactsDownloadUrlsRequestDto {
|
|
23
|
+
/** Client-relative parent path inside the artifact root (no trailing `latestVersion`; no artifact-folder prefix — adapters add RUNTIME_ARTIFACTS_FOLDER). */
|
|
24
|
+
@IsString()
|
|
25
|
+
artifactPrefix: string;
|
|
26
|
+
|
|
27
|
+
@IsString()
|
|
28
|
+
latestVersion: string;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export class RuntimeArtifactsUploadUrlsRequestDto {
|
|
32
|
+
@IsArray()
|
|
33
|
+
@ValidateNestedType(() => RuntimeArtifactUploadObjectDto)
|
|
34
|
+
objects: RuntimeArtifactUploadObjectDto[];
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
export class RuntimeArtifactsDownloadUrlsResponseDto {
|
|
38
|
+
@IsArray()
|
|
39
|
+
@ValidateNestedType(() => ObjectKeyUrlPair)
|
|
40
|
+
objects: ObjectKeyUrlPair[];
|
|
41
|
+
|
|
42
|
+
/** Full object key prefix incl. artifact folder, **parent only** (matches request `artifactPrefix` + folder; no `latestVersion` segment). */
|
|
43
|
+
@IsString()
|
|
44
|
+
artifactPrefix: string;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
export class RuntimeArtifactsUploadUrlsResponseDto {
|
|
48
|
+
@IsArray()
|
|
49
|
+
@ValidateNestedType(() => ObjectKeyUrlPair)
|
|
50
|
+
urls: ObjectKeyUrlPair[];
|
|
51
|
+
}
|
|
@@ -3,6 +3,7 @@ import { LudeocastV2Distributions } from "../build";
|
|
|
3
3
|
import { MachineResourceSettings } from "../pools";
|
|
4
4
|
import { LudeoCastV2MachineResourceProviderSettings } from "../cloud";
|
|
5
5
|
import { ValidateNestedType } from "../../../decorators";
|
|
6
|
+
import { ObjectKeyUrlPair } from "./runtime-artifacts.dto";
|
|
6
7
|
|
|
7
8
|
export enum MachineMode {
|
|
8
9
|
PROTON = "proton",
|
|
@@ -15,10 +16,16 @@ export class RuntimeArtifactsPayload {
|
|
|
15
16
|
@IsString()
|
|
16
17
|
latestVersion: string;
|
|
17
18
|
|
|
18
|
-
/** Presigned GET
|
|
19
|
+
/** Presigned GET per object; `key` is the full object key (mirrors bucket layout). */
|
|
19
20
|
@IsArray()
|
|
20
|
-
@
|
|
21
|
-
|
|
21
|
+
@ValidateNestedType(() => ObjectKeyUrlPair)
|
|
22
|
+
downloads: ObjectKeyUrlPair[];
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Parent prefix under artifact root (**excludes** `latestVersion`; agent joins with {@code latestVersion} for binds / disk layout).
|
|
26
|
+
*/
|
|
27
|
+
@IsString()
|
|
28
|
+
artifactPrefix: string;
|
|
22
29
|
}
|
|
23
30
|
|
|
24
31
|
export class ProtonGameCreationPayload {
|
|
@@ -43,6 +50,11 @@ export class ProtonGameCreationPayload {
|
|
|
43
50
|
@IsOptional()
|
|
44
51
|
@ValidateNestedType(() => RuntimeArtifactsPayload)
|
|
45
52
|
runtimeArtifacts?: RuntimeArtifactsPayload;
|
|
53
|
+
|
|
54
|
+
/** Docker bind mounts `{ hostAbsolutePath: containerAbsolutePath }` (site fills for runtime artifacts, etc.). */
|
|
55
|
+
@IsOptional()
|
|
56
|
+
@IsObject()
|
|
57
|
+
additionalMounts?: Record<string, string>;
|
|
46
58
|
}
|
|
47
59
|
|
|
48
60
|
export class AndroidGameCreationPayload {
|