@ludeo/cloud-common 1.2.192-beta-yahil-5 → 1.2.192

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.
Files changed (76) hide show
  1. package/dist/tsconfig.tsbuildinfo +1 -1
  2. package/dist/v4/contexts/site-controller-context.d.ts +1 -1
  3. package/dist/v4/contexts/site-controller-context.js +1 -1
  4. package/dist/v4/contexts/site-controller-context.js.map +1 -1
  5. package/dist/v4/events/cloud-builds/create-build-snapshot-request.d.ts +15 -0
  6. package/dist/v4/events/cloud-builds/{create-build-distribution-request.js → create-build-snapshot-request.js} +20 -20
  7. package/dist/v4/events/cloud-builds/create-build-snapshot-request.js.map +1 -0
  8. package/dist/v4/events/cloud-builds/index.d.ts +2 -2
  9. package/dist/v4/events/cloud-builds/index.js +2 -2
  10. package/dist/v4/events/cloud-builds/index.js.map +1 -1
  11. package/dist/v4/events/cloud-builds/terminate-build-snapshot-request.d.ts +16 -0
  12. package/dist/v4/events/cloud-builds/{terminate-build-distribution-request.js → terminate-build-snapshot-request.js} +19 -19
  13. package/dist/v4/events/cloud-builds/terminate-build-snapshot-request.js.map +1 -0
  14. package/dist/v4/events/ludeocast-agent/resource-update.d.ts +1 -1
  15. package/dist/v4/events/ludeocast-agent/resource-update.js +1 -0
  16. package/dist/v4/events/ludeocast-agent/resource-update.js.map +1 -1
  17. package/dist/v4/events/site-controller/build-snapshot-creation-ended.d.ts +16 -0
  18. package/dist/v4/events/site-controller/{build-distribution-creation-ended.js → build-snapshot-creation-ended.js} +18 -18
  19. package/dist/v4/events/site-controller/build-snapshot-creation-ended.js.map +1 -0
  20. package/dist/v4/events/site-controller/build-snapshot-termination-ended.d.ts +15 -0
  21. package/dist/v4/events/site-controller/{build-distribution-termination-ended.js → build-snapshot-termination-ended.js} +16 -16
  22. package/dist/v4/events/site-controller/build-snapshot-termination-ended.js.map +1 -0
  23. package/dist/v4/events/site-controller/index.d.ts +2 -2
  24. package/dist/v4/events/site-controller/index.js +2 -2
  25. package/dist/v4/events/site-controller/index.js.map +1 -1
  26. package/dist/v4/events/site-controller/resource-status-update.d.ts +9 -5
  27. package/dist/v4/events/site-controller/resource-status-update.js +22 -4
  28. package/dist/v4/events/site-controller/resource-status-update.js.map +1 -1
  29. package/dist/v4/types/build.d.ts +5 -9
  30. package/dist/v4/types/build.js +12 -6
  31. package/dist/v4/types/build.js.map +1 -1
  32. package/dist/v4/types/site-controller/create-game.dto.d.ts +1 -1
  33. package/dist/v4/types/site-controller/create-game.dto.js +1 -1
  34. package/dist/v4/types/site-controller/create-game.dto.js.map +1 -1
  35. package/dist/v4/types/site-controller/create-snapshot.dto.d.ts +10 -0
  36. package/dist/v4/types/site-controller/{create-distribution.dto.js → create-snapshot.dto.js} +13 -18
  37. package/dist/v4/types/site-controller/create-snapshot.dto.js.map +1 -0
  38. package/dist/v4/types/site-controller/index.d.ts +2 -2
  39. package/dist/v4/types/site-controller/index.js +2 -2
  40. package/dist/v4/types/site-controller/index.js.map +1 -1
  41. package/dist/v4/types/site-controller/terminate-build-snapshot.dto.d.ts +6 -0
  42. package/dist/v4/types/site-controller/{terminate-build-distribution.dto.js → terminate-build-snapshot.dto.js} +9 -9
  43. package/dist/v4/types/site-controller/terminate-build-snapshot.dto.js.map +1 -0
  44. package/dist/v4/types/site-controller/types.d.ts +3 -3
  45. package/package.json +1 -1
  46. package/src/v4/contexts/site-controller-context.ts +1 -1
  47. package/src/v4/events/cloud-builds/create-build-snapshot-request.ts +40 -0
  48. package/src/v4/events/cloud-builds/index.ts +2 -2
  49. package/src/v4/events/cloud-builds/terminate-build-snapshot-request.ts +44 -0
  50. package/src/v4/events/ludeocast-agent/resource-update.ts +2 -1
  51. package/src/v4/events/site-controller/build-snapshot-creation-ended.ts +39 -0
  52. package/src/v4/events/site-controller/{build-distribution-termination-ended.ts → build-snapshot-termination-ended.ts} +7 -7
  53. package/src/v4/events/site-controller/index.ts +2 -2
  54. package/src/v4/events/site-controller/resource-status-update.ts +21 -7
  55. package/src/v4/types/build.ts +8 -12
  56. package/src/v4/types/site-controller/create-game.dto.ts +1 -1
  57. package/src/v4/types/site-controller/create-snapshot.dto.ts +25 -0
  58. package/src/v4/types/site-controller/index.ts +2 -2
  59. package/src/v4/types/site-controller/{terminate-build-distribution.dto.ts → terminate-build-snapshot.dto.ts} +5 -4
  60. package/src/v4/types/site-controller/types.ts +3 -3
  61. package/dist/v4/events/cloud-builds/create-build-distribution-request.d.ts +0 -15
  62. package/dist/v4/events/cloud-builds/create-build-distribution-request.js.map +0 -1
  63. package/dist/v4/events/cloud-builds/terminate-build-distribution-request.d.ts +0 -16
  64. package/dist/v4/events/cloud-builds/terminate-build-distribution-request.js.map +0 -1
  65. package/dist/v4/events/site-controller/build-distribution-creation-ended.d.ts +0 -16
  66. package/dist/v4/events/site-controller/build-distribution-creation-ended.js.map +0 -1
  67. package/dist/v4/events/site-controller/build-distribution-termination-ended.d.ts +0 -15
  68. package/dist/v4/events/site-controller/build-distribution-termination-ended.js.map +0 -1
  69. package/dist/v4/types/site-controller/create-distribution.dto.d.ts +0 -12
  70. package/dist/v4/types/site-controller/create-distribution.dto.js.map +0 -1
  71. package/dist/v4/types/site-controller/terminate-build-distribution.dto.d.ts +0 -6
  72. package/dist/v4/types/site-controller/terminate-build-distribution.dto.js.map +0 -1
  73. package/src/v4/events/cloud-builds/create-build-distribution-request.ts +0 -40
  74. package/src/v4/events/cloud-builds/terminate-build-distribution-request.ts +0 -44
  75. package/src/v4/events/site-controller/build-distribution-creation-ended.ts +0 -39
  76. package/src/v4/types/site-controller/create-distribution.dto.ts +0 -29
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ProgressiveRolloutStep = exports.BuildAssignmentStatus = exports.MinorBuildsRollout = exports.BuildAssignmentData = exports.BuildsAssignmentsData = exports.EnvBuilds = exports.BuildAssignmentCase = exports.RolloutConfig = exports.BuildVersionMeta = exports.StreamGroupStatus = exports.LudeoCastV2BuildAssignmentSettings = exports.AwsBuildAssignmentSettings = exports.LudeoCastBuildAssignmentSettings = exports.BuildAssignmentProvidersSettings = exports.MachineClass = exports.BuildCreationInput = exports.RuntimeEnvironmentType = exports.CloudBuild = exports.BuildProviderSettings = exports.AwsArtifacts = exports.LudeocastV2Distributions = exports.LudeocastV2Artifacts = exports.LudeocastV2DistributionData = exports.LudeocastDistributions = exports.LudeocastArtifacts = exports.LudeocastDistributionData = exports.AwsDistributions = exports.AwsDistributionData = exports.AwsArtifactData = exports.BuildMetadata = exports.ArtifactStatus = exports.DistributionStatus = exports.BuildStatus = void 0;
12
+ exports.ProgressiveRolloutStep = exports.BuildAssignmentStatus = exports.MinorBuildsRollout = exports.BuildAssignmentData = exports.BuildsAssignmentsData = exports.EnvBuilds = exports.BuildAssignmentCase = exports.RolloutConfig = exports.BuildVersionMeta = exports.StreamGroupStatus = exports.AwsBuildAssignmentSettings = exports.LudeoCastBuildAssignmentSettings = exports.BuildAssignmentProvidersSettings = exports.MachineClass = exports.BuildCreationInput = exports.RuntimeEnvironmentType = exports.CloudBuild = exports.BuildProviderSettings = exports.AwsArtifacts = exports.LudeocastV2Distributions = exports.LudeocastV2Artifacts = exports.LudeocastV2DistributionData = exports.LudeocastDistributions = exports.LudeocastArtifacts = exports.LudeocastDistributionData = exports.AwsDistributions = exports.AwsDistributionData = exports.AwsArtifactData = exports.BuildMetadata = exports.ArtifactStatus = exports.DistributionStatus = exports.BuildStatus = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
14
  const cloud_1 = require("./cloud");
15
15
  var BuildStatus;
@@ -102,10 +102,19 @@ exports.LudeocastDistributions = LudeocastDistributions;
102
102
  class LudeocastV2DistributionData {
103
103
  }
104
104
  exports.LudeocastV2DistributionData = LudeocastV2DistributionData;
105
+ __decorate([
106
+ (0, class_validator_1.IsString)(),
107
+ __metadata("design:type", String)
108
+ ], LudeocastV2DistributionData.prototype, "snapshotName", void 0);
109
+ __decorate([
110
+ (0, class_validator_1.IsArray)(),
111
+ (0, class_validator_1.IsString)({ each: true }),
112
+ __metadata("design:type", Array)
113
+ ], LudeocastV2DistributionData.prototype, "storageLocations", void 0);
105
114
  class LudeocastV2Artifacts {
106
115
  }
107
116
  exports.LudeocastV2Artifacts = LudeocastV2Artifacts;
108
- class LudeocastV2Distributions {
117
+ class LudeocastV2Distributions extends LudeocastV2DistributionData {
109
118
  }
110
119
  exports.LudeocastV2Distributions = LudeocastV2Distributions;
111
120
  class AwsArtifacts {
@@ -136,16 +145,13 @@ var MachineClass;
136
145
  class BuildAssignmentProvidersSettings {
137
146
  }
138
147
  exports.BuildAssignmentProvidersSettings = BuildAssignmentProvidersSettings;
139
- cloud_1.CloudProvider.GAMELIFT, cloud_1.CloudProvider.AWS, cloud_1.CloudProvider.LUDEOCAST, cloud_1.CloudProvider.LUDEOCAST_V2;
148
+ cloud_1.CloudProvider.GAMELIFT, cloud_1.CloudProvider.AWS, cloud_1.CloudProvider.LUDEOCAST;
140
149
  class LudeoCastBuildAssignmentSettings {
141
150
  }
142
151
  exports.LudeoCastBuildAssignmentSettings = LudeoCastBuildAssignmentSettings;
143
152
  class AwsBuildAssignmentSettings {
144
153
  }
145
154
  exports.AwsBuildAssignmentSettings = AwsBuildAssignmentSettings;
146
- class LudeoCastV2BuildAssignmentSettings {
147
- }
148
- exports.LudeoCastV2BuildAssignmentSettings = LudeoCastV2BuildAssignmentSettings;
149
155
  var StreamGroupStatus;
150
156
  (function (StreamGroupStatus) {
151
157
  StreamGroupStatus["ACTIVATING"] = "ACTIVATING";
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/v4/types/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/v4/types/build.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ export declare class CreateGameRequestDto {
5
5
  region: string;
6
6
  machineMode: MachineMode;
7
7
  machineType: string;
8
- distributionName: string;
8
+ sourceSnapshot: string;
9
9
  additionalEnvironmentVariables?: Record<string, string>;
10
10
  metadata?: Record<string, string>;
11
11
  buildId: string;
@@ -38,7 +38,7 @@ __decorate([
38
38
  __decorate([
39
39
  (0, class_validator_1.IsString)(),
40
40
  __metadata("design:type", String)
41
- ], CreateGameRequestDto.prototype, "distributionName", void 0);
41
+ ], CreateGameRequestDto.prototype, "sourceSnapshot", void 0);
42
42
  __decorate([
43
43
  (0, class_validator_1.IsOptional)(),
44
44
  __metadata("design:type", Object)
@@ -1 +1 @@
1
- {"version":3,"file":"create-game.dto.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/create-game.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA+D;AAE/D,mCAAsC;AAEtC,MAAa,oBAAoB;CA2BhC;AA3BD,oDA2BC;AAzBC;IADC,IAAA,0BAAQ,GAAE;;4DACY;AAGvB;IADC,IAAA,0BAAQ,GAAE;;+DACe;AAG1B;IADC,IAAA,0BAAQ,GAAE;;oDACI;AAGf;IADC,IAAA,wBAAM,EAAC,mBAAW,CAAC;;yDACK;AAGzB;IADC,IAAA,0BAAQ,GAAE;;yDACS;AAGpB;IADC,IAAA,0BAAQ,GAAE;;8DACc;AAGzB;IADC,IAAA,4BAAU,GAAE;;4EAC2C;AAGxD;IADC,IAAA,4BAAU,GAAE;;sDACqB;AAGlC;IADC,IAAA,0BAAQ,GAAE;;qDACK"}
1
+ {"version":3,"file":"create-game.dto.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/create-game.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA+D;AAE/D,mCAAsC;AAEtC,MAAa,oBAAoB;CA2BhC;AA3BD,oDA2BC;AAzBC;IADC,IAAA,0BAAQ,GAAE;;4DACY;AAGvB;IADC,IAAA,0BAAQ,GAAE;;+DACe;AAG1B;IADC,IAAA,0BAAQ,GAAE;;oDACI;AAGf;IADC,IAAA,wBAAM,EAAC,mBAAW,CAAC;;yDACK;AAGzB;IADC,IAAA,0BAAQ,GAAE;;yDACS;AAGpB;IADC,IAAA,0BAAQ,GAAE;;4DACY;AAGvB;IADC,IAAA,4BAAU,GAAE;;4EAC2C;AAGxD;IADC,IAAA,4BAAU,GAAE;;sDACqB;AAGlC;IADC,IAAA,0BAAQ,GAAE;;qDACK"}
@@ -0,0 +1,10 @@
1
+ export declare class CreateBuildSnapshotRequestDto {
2
+ downloadURL: string;
3
+ sizeGB: number;
4
+ buildId: string;
5
+ }
6
+ export declare class CreateBuildSnapshotResponseDto {
7
+ status: 'success' | 'error';
8
+ message?: string;
9
+ snapshotName?: string;
10
+ }
@@ -9,39 +9,34 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.CreateBuildDistributionResponseDto = exports.CreateBuildDistributionRequestDto = void 0;
12
+ exports.CreateBuildSnapshotResponseDto = exports.CreateBuildSnapshotRequestDto = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
- const build_1 = require("../build");
15
- class CreateBuildDistributionRequestDto {
14
+ class CreateBuildSnapshotRequestDto {
16
15
  }
17
- exports.CreateBuildDistributionRequestDto = CreateBuildDistributionRequestDto;
16
+ exports.CreateBuildSnapshotRequestDto = CreateBuildSnapshotRequestDto;
18
17
  __decorate([
19
18
  (0, class_validator_1.IsString)(),
20
19
  __metadata("design:type", String)
21
- ], CreateBuildDistributionRequestDto.prototype, "downloadURL", void 0);
20
+ ], CreateBuildSnapshotRequestDto.prototype, "downloadURL", void 0);
22
21
  __decorate([
23
22
  (0, class_validator_1.IsNumber)(),
24
23
  __metadata("design:type", Number)
25
- ], CreateBuildDistributionRequestDto.prototype, "sizeGB", void 0);
24
+ ], CreateBuildSnapshotRequestDto.prototype, "sizeGB", void 0);
26
25
  __decorate([
27
26
  (0, class_validator_1.IsString)(),
28
27
  __metadata("design:type", String)
29
- ], CreateBuildDistributionRequestDto.prototype, "buildId", void 0);
30
- __decorate([
31
- (0, class_validator_1.IsArray)(),
32
- (0, class_validator_1.IsString)({ each: true }),
33
- __metadata("design:type", Array)
34
- ], CreateBuildDistributionRequestDto.prototype, "regions", void 0);
35
- class CreateBuildDistributionResponseDto {
28
+ ], CreateBuildSnapshotRequestDto.prototype, "buildId", void 0);
29
+ class CreateBuildSnapshotResponseDto {
36
30
  }
37
- exports.CreateBuildDistributionResponseDto = CreateBuildDistributionResponseDto;
31
+ exports.CreateBuildSnapshotResponseDto = CreateBuildSnapshotResponseDto;
38
32
  __decorate([
39
33
  (0, class_validator_1.IsOptional)(),
40
34
  (0, class_validator_1.IsString)(),
41
35
  __metadata("design:type", String)
42
- ], CreateBuildDistributionResponseDto.prototype, "message", void 0);
36
+ ], CreateBuildSnapshotResponseDto.prototype, "message", void 0);
43
37
  __decorate([
44
38
  (0, class_validator_1.IsOptional)(),
45
- __metadata("design:type", build_1.LudeocastV2Distributions)
46
- ], CreateBuildDistributionResponseDto.prototype, "distributions", void 0);
47
- //# sourceMappingURL=create-distribution.dto.js.map
39
+ (0, class_validator_1.IsString)(),
40
+ __metadata("design:type", String)
41
+ ], CreateBuildSnapshotResponseDto.prototype, "snapshotName", void 0);
42
+ //# sourceMappingURL=create-snapshot.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-snapshot.dto.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/create-snapshot.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAiE;AAEjE,MAAa,6BAA6B;CASzC;AATD,sEASC;AAPC;IADC,IAAA,0BAAQ,GAAE;;kEACS;AAGpB;IADC,IAAA,0BAAQ,GAAE;;6DACI;AAGf;IADC,IAAA,0BAAQ,GAAE;;8DACK;AAGlB,MAAa,8BAA8B;CAU1C;AAVD,wEAUC;AALC;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;+DACM;AAIjB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,0BAAQ,GAAE;;oEACW"}
@@ -1,7 +1,7 @@
1
1
  export * from "./types";
2
2
  export * from "./create-machine.dto";
3
3
  export * from "./create-game.dto";
4
- export * from "./create-distribution.dto";
5
- export * from "./terminate-build-distribution.dto";
4
+ export * from "./create-snapshot.dto";
5
+ export * from "./terminate-build-snapshot.dto";
6
6
  export * from "./terminate-machine.dto";
7
7
  export * from "./terminate-game.dto";
@@ -17,8 +17,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./types"), exports);
18
18
  __exportStar(require("./create-machine.dto"), exports);
19
19
  __exportStar(require("./create-game.dto"), exports);
20
- __exportStar(require("./create-distribution.dto"), exports);
21
- __exportStar(require("./terminate-build-distribution.dto"), exports);
20
+ __exportStar(require("./create-snapshot.dto"), exports);
21
+ __exportStar(require("./terminate-build-snapshot.dto"), exports);
22
22
  __exportStar(require("./terminate-machine.dto"), exports);
23
23
  __exportStar(require("./terminate-game.dto"), exports);
24
24
  //# 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,wDAAsC;AACtC,iEAA+C;AAC/C,0DAAwC;AACxC,uDAAqC"}
@@ -0,0 +1,6 @@
1
+ import { LudeocastV2DistributionData } from '../build';
2
+ export declare class TerminateBuildSnapshotRequestDto {
3
+ buildId: string;
4
+ distributionData?: LudeocastV2DistributionData;
5
+ envIds?: string[];
6
+ }
@@ -9,26 +9,26 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.TerminateBuildDistributionRequestDto = void 0;
12
+ exports.TerminateBuildSnapshotRequestDto = void 0;
13
13
  const class_validator_1 = require("class-validator");
14
14
  const decorators_1 = require("../../../decorators");
15
15
  const build_1 = require("../build");
16
- class TerminateBuildDistributionRequestDto {
16
+ class TerminateBuildSnapshotRequestDto {
17
17
  }
18
- exports.TerminateBuildDistributionRequestDto = TerminateBuildDistributionRequestDto;
18
+ exports.TerminateBuildSnapshotRequestDto = TerminateBuildSnapshotRequestDto;
19
19
  __decorate([
20
20
  (0, class_validator_1.IsString)(),
21
21
  __metadata("design:type", String)
22
- ], TerminateBuildDistributionRequestDto.prototype, "buildId", void 0);
22
+ ], TerminateBuildSnapshotRequestDto.prototype, "buildId", void 0);
23
23
  __decorate([
24
24
  (0, class_validator_1.IsOptional)(),
25
- (0, decorators_1.ValidateNestedType)(() => build_1.LudeocastV2Distributions),
26
- __metadata("design:type", build_1.LudeocastV2Distributions)
27
- ], TerminateBuildDistributionRequestDto.prototype, "distributions", void 0);
25
+ (0, decorators_1.ValidateNestedType)(() => build_1.LudeocastV2DistributionData),
26
+ __metadata("design:type", build_1.LudeocastV2DistributionData)
27
+ ], TerminateBuildSnapshotRequestDto.prototype, "distributionData", void 0);
28
28
  __decorate([
29
29
  (0, class_validator_1.IsOptional)(),
30
30
  (0, class_validator_1.IsArray)(),
31
31
  (0, class_validator_1.IsString)({ each: true }),
32
32
  __metadata("design:type", Array)
33
- ], TerminateBuildDistributionRequestDto.prototype, "envIds", void 0);
34
- //# sourceMappingURL=terminate-build-distribution.dto.js.map
33
+ ], TerminateBuildSnapshotRequestDto.prototype, "envIds", void 0);
34
+ //# sourceMappingURL=terminate-build-snapshot.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"terminate-build-snapshot.dto.js","sourceRoot":"","sources":["../../../../src/v4/types/site-controller/terminate-build-snapshot.dto.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAAgE;AAChE,oDAAyD;AACzD,oCAAuD;AAEvD,MAAa,gCAAgC;CAa5C;AAbD,4EAaC;AAXC;IADC,IAAA,0BAAQ,GAAE;;iEACK;AAIhB;IAFC,IAAA,4BAAU,GAAE;IACZ,IAAA,+BAAkB,EAAC,GAAG,EAAE,CAAC,mCAA2B,CAAC;8BACnC,mCAA2B;0EAAC;AAM/C;IAHC,IAAA,4BAAU,GAAE;IACZ,IAAA,yBAAO,GAAE;IACT,IAAA,0BAAQ,EAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;;gEACP"}
@@ -1,4 +1,4 @@
1
- import { LudeocastV2Distributions } from '../build';
1
+ import { LudeocastV2DistributionData } from '../build';
2
2
  import { MachineResourceSettings } from '../pools';
3
3
  import { LudeoCastV2MachineResourceProviderSettings } from '../cloud';
4
4
  export declare enum MachineMode {
@@ -53,8 +53,8 @@ export interface MachineSiteAdapterStatusPayload extends SiteAdapterStatusPayloa
53
53
  export interface GameSiteAdapterStatusPayload extends SiteAdapterStatusPayload {
54
54
  reason?: GameStatusReason;
55
55
  }
56
- export interface BuildDistributionAdapterStatusPayload extends SiteAdapterStatusPayload {
56
+ export interface BuildSnapshotAdapterStatusPayload extends SiteAdapterStatusPayload {
57
57
  buildId?: string;
58
- distributions?: LudeocastV2Distributions;
58
+ distributionData?: LudeocastV2DistributionData;
59
59
  envIds?: string[];
60
60
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ludeo/cloud-common",
3
- "version": "1.2.192-beta-yahil-5",
3
+ "version": "1.2.192",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "author": "Yahil Didi",
@@ -27,6 +27,6 @@ export class SiteControllerContext {
27
27
 
28
28
  @IsOptional()
29
29
  @IsString()
30
- distributionId?: string;
30
+ snapshotId?: string;
31
31
  }
32
32
 
@@ -0,0 +1,40 @@
1
+ import { LudeoEvent } from '../../../infra';
2
+ import { ValidateNestedType } from '../../../decorators';
3
+ import { IsString, IsOptional, IsNumber } from 'class-validator';
4
+ import { BuildContext } from '../../contexts';
5
+
6
+ export class CreateBuildSnapshotRequestPayload {
7
+ @IsString()
8
+ buildId: string;
9
+
10
+ @IsString()
11
+ downloadURL: string;
12
+
13
+ @IsNumber()
14
+ sizeGB: number;
15
+
16
+ @IsOptional()
17
+ @IsString()
18
+ site?: string;
19
+
20
+ @IsOptional()
21
+ @IsString()
22
+ region?: string;
23
+ }
24
+
25
+ export class CreateBuildSnapshotRequest extends LudeoEvent {
26
+ static readonly EVENT_NAME = 'cloud-builds.create-build-snapshot-request';
27
+
28
+ constructor(payload: CreateBuildSnapshotRequestPayload, context: BuildContext) {
29
+ super(CreateBuildSnapshotRequest.EVENT_NAME);
30
+ this.payload = payload;
31
+ this.context = context;
32
+ }
33
+
34
+ @ValidateNestedType(() => CreateBuildSnapshotRequestPayload)
35
+ payload: CreateBuildSnapshotRequestPayload;
36
+
37
+ @ValidateNestedType(() => BuildContext)
38
+ context: BuildContext;
39
+ }
40
+
@@ -1,2 +1,2 @@
1
- export * from "./create-build-distribution-request";
2
- export * from "./terminate-build-distribution-request";
1
+ export * from "./create-build-snapshot-request";
2
+ export * from "./terminate-build-snapshot-request";
@@ -0,0 +1,44 @@
1
+ import { LudeoEvent } from '../../../infra';
2
+ import { ValidateNestedType } from '../../../decorators';
3
+ import { IsArray, IsOptional, IsString } from 'class-validator';
4
+ import { BuildContext } from '../../contexts';
5
+ import { LudeocastV2DistributionData } from '../../types/build';
6
+
7
+ export class TerminateBuildSnapshotRequestPayload {
8
+ @IsString()
9
+ buildId: string;
10
+
11
+ @IsOptional()
12
+ @IsString()
13
+ site?: string;
14
+
15
+ @IsOptional()
16
+ @IsString()
17
+ region?: string;
18
+
19
+ @IsOptional()
20
+ @ValidateNestedType(() => LudeocastV2DistributionData)
21
+ distributionData?: LudeocastV2DistributionData;
22
+
23
+ @IsOptional()
24
+ @IsArray()
25
+ @IsString({ each: true })
26
+ envIds?: string[];
27
+ }
28
+
29
+ export class TerminateBuildSnapshotRequest extends LudeoEvent {
30
+ static readonly EVENT_NAME = 'cloud-builds.terminate-build-snapshot-request';
31
+
32
+ constructor(payload: TerminateBuildSnapshotRequestPayload, context: BuildContext) {
33
+ super(TerminateBuildSnapshotRequest.EVENT_NAME);
34
+ this.payload = payload;
35
+ this.context = context;
36
+ }
37
+
38
+ @ValidateNestedType(() => TerminateBuildSnapshotRequestPayload)
39
+ payload: TerminateBuildSnapshotRequestPayload;
40
+
41
+ @ValidateNestedType(() => BuildContext)
42
+ context: BuildContext;
43
+ }
44
+
@@ -13,8 +13,9 @@ export class ResourceUpdatePayload extends BaseCommandPayload {
13
13
  @IsUUID()
14
14
  gameResourceId?: string;
15
15
 
16
+ @IsOptional()
16
17
  @IsEnum(CloudResourceStatus)
17
- status: CloudResourceStatus;
18
+ status?: CloudResourceStatus;
18
19
 
19
20
  @IsOptional()
20
21
  @IsEnum(LudeoCastStreamState)
@@ -0,0 +1,39 @@
1
+ import { LudeoEvent } from '../../../infra';
2
+ import { ValidateNestedType } from '../../../decorators';
3
+ import { IsEnum, IsOptional, IsString } from 'class-validator';
4
+ import { BuildContext } from '../../contexts';
5
+ import { SiteOperationStatus } from '../../types/site-controller';
6
+ import { LudeocastV2DistributionData } from '../../types/build';
7
+
8
+ export class BuildSnapshotCreationEndedPayload {
9
+ @IsString()
10
+ buildId: string;
11
+
12
+ @IsEnum(SiteOperationStatus)
13
+ status: SiteOperationStatus;
14
+
15
+ @IsOptional()
16
+ @IsString()
17
+ reason?: string;
18
+
19
+ @IsOptional()
20
+ @ValidateNestedType(() => LudeocastV2DistributionData)
21
+ distributionData?: LudeocastV2DistributionData;
22
+ }
23
+
24
+ export class BuildSnapshotCreationEnded extends LudeoEvent {
25
+ static readonly EVENT_NAME = 'site-controller.build-snapshot-creation-ended';
26
+
27
+ constructor(payload: BuildSnapshotCreationEndedPayload, context: BuildContext) {
28
+ super(BuildSnapshotCreationEnded.EVENT_NAME);
29
+ this.payload = payload;
30
+ this.context = context;
31
+ }
32
+
33
+ @ValidateNestedType(() => BuildSnapshotCreationEndedPayload)
34
+ payload: BuildSnapshotCreationEndedPayload;
35
+
36
+ @ValidateNestedType(() => BuildContext)
37
+ context: BuildContext;
38
+ }
39
+
@@ -4,7 +4,7 @@ import { IsEnum, IsOptional, IsString, IsArray } from 'class-validator';
4
4
  import { BuildContext } from '../../contexts';
5
5
  import { SiteOperationStatus } from '../../types/site-controller';
6
6
 
7
- export class BuildDistributionTerminationEndedPayload {
7
+ export class BuildSnapshotTerminationEndedPayload {
8
8
  @IsString()
9
9
  buildId: string;
10
10
 
@@ -21,17 +21,17 @@ export class BuildDistributionTerminationEndedPayload {
21
21
  envIds?: string[];
22
22
  }
23
23
 
24
- export class BuildDistributionTerminationEnded extends LudeoEvent {
25
- static readonly EVENT_NAME = 'site-controller.build-distribution-termination-ended';
24
+ export class BuildSnapshotTerminationEnded extends LudeoEvent {
25
+ static readonly EVENT_NAME = 'site-controller.build-snapshot-termination-ended';
26
26
 
27
- constructor(payload: BuildDistributionTerminationEndedPayload, context: BuildContext) {
28
- super(BuildDistributionTerminationEnded.EVENT_NAME);
27
+ constructor(payload: BuildSnapshotTerminationEndedPayload, context: BuildContext) {
28
+ super(BuildSnapshotTerminationEnded.EVENT_NAME);
29
29
  this.payload = payload;
30
30
  this.context = context;
31
31
  }
32
32
 
33
- @ValidateNestedType(() => BuildDistributionTerminationEndedPayload)
34
- payload: BuildDistributionTerminationEndedPayload;
33
+ @ValidateNestedType(() => BuildSnapshotTerminationEndedPayload)
34
+ payload: BuildSnapshotTerminationEndedPayload;
35
35
 
36
36
  @ValidateNestedType(() => BuildContext)
37
37
  context: BuildContext;
@@ -4,8 +4,8 @@ export * from './game-ludeocast-creation-ended';
4
4
  export * from './game-ludeocast-termination-ended';
5
5
  export * from './machine-ludeocast-termination-ended';
6
6
 
7
- export * from './build-distribution-creation-ended';
8
- export * from './build-distribution-termination-ended';
7
+ export * from './build-snapshot-creation-ended';
8
+ export * from './build-snapshot-termination-ended';
9
9
 
10
10
  export * from './resource-status-update';
11
11
 
@@ -1,31 +1,45 @@
1
1
  import { LudeoEvent } from '../../../infra';
2
2
  import { ValidateNestedType } from '../../../decorators';
3
- import { IsEnum, IsOptional, IsString, IsUUID } from 'class-validator';
4
- import { SiteControllerContext } from '../../contexts';
3
+ import { IsEnum, IsOptional, IsString, IsUUID } from 'class-validator';;
4
+ import { CloudResourceContext } from '../../contexts';
5
5
  import { CloudResourceStatus } from '../../types';
6
+ import { LudeoCastStreamState } from '../ludeocast-stream-state-updated';
6
7
 
7
8
  export class ResourceStatusUpdatePayload {
8
9
  @IsUUID()
9
10
  @IsOptional()
10
11
  machineResourceId?: string;
11
12
 
13
+ @IsUUID()
14
+ @IsOptional()
15
+ machinePoolId?: string;
16
+
12
17
  @IsUUID()
13
18
  @IsOptional()
14
19
  gameResourceId?: string;
15
20
 
21
+ @IsUUID()
22
+ @IsOptional()
23
+ gamePoolId?: string;
24
+
16
25
  @IsEnum(CloudResourceStatus)
17
- resourceStatus: CloudResourceStatus;
26
+ @IsOptional()
27
+ status?: CloudResourceStatus;
28
+
29
+ @IsOptional()
30
+ @IsEnum(LudeoCastStreamState)
31
+ streamState?: LudeoCastStreamState;
18
32
 
19
33
  @IsOptional()
20
34
  @IsString()
21
- statusReason?: string;
35
+ reason?: string;
22
36
  }
23
37
 
24
38
 
25
39
  export class ResourceStatusUpdate extends LudeoEvent {
26
40
  static readonly EVENT_NAME = 'site-controller.resource-status-update';
27
41
 
28
- constructor(payload: ResourceStatusUpdatePayload, context: SiteControllerContext) {
42
+ constructor(payload: ResourceStatusUpdatePayload, context: CloudResourceContext) {
29
43
  super(ResourceStatusUpdate.EVENT_NAME);
30
44
  this.payload = payload;
31
45
  this.context = context;
@@ -34,7 +48,7 @@ export class ResourceStatusUpdate extends LudeoEvent {
34
48
  @ValidateNestedType(() => ResourceStatusUpdatePayload)
35
49
  payload: ResourceStatusUpdatePayload;
36
50
 
37
- @ValidateNestedType(() => SiteControllerContext)
38
- context: SiteControllerContext;
51
+ @ValidateNestedType(() => CloudResourceContext)
52
+ context: CloudResourceContext;
39
53
  }
40
54
 
@@ -3,7 +3,6 @@ import {
3
3
  AWSProviderSettings,
4
4
  CloudProvider,
5
5
  LudeoCastProviderSettings,
6
- LudeoCastV2ProviderSettings,
7
6
  } from "./cloud";
8
7
  import * as GameLift from "@aws-sdk/client-gameliftstreams";
9
8
 
@@ -96,14 +95,17 @@ export class LudeocastDistributions {
96
95
  }
97
96
 
98
97
  export class LudeocastV2DistributionData {
99
- name: string;
98
+ @IsString()
99
+ snapshotName: string;
100
+
101
+ @IsArray()
102
+ @IsString({ each: true })
103
+ storageLocations: string[]; // Multi-regional storage locations (e.g., ["us", "eu", "asia"])
100
104
  }
101
105
 
102
106
  export class LudeocastV2Artifacts {}
103
107
 
104
- export class LudeocastV2Distributions {
105
- [region: string]: LudeocastV2DistributionData;
106
- }
108
+ export class LudeocastV2Distributions extends LudeocastV2DistributionData {}
107
109
 
108
110
  export type Distributions = AwsDistributions | LudeocastDistributions | LudeocastV2Distributions;
109
111
 
@@ -172,7 +174,6 @@ export class BuildAssignmentProvidersSettings {
172
174
  [CloudProvider.GAMELIFT]?: AwsBuildAssignmentSettings;
173
175
  [CloudProvider.AWS]?: AwsBuildAssignmentSettings;
174
176
  [CloudProvider.LUDEOCAST]?: LudeoCastBuildAssignmentSettings;
175
- [CloudProvider.LUDEOCAST_V2]?: LudeoCastV2BuildAssignmentSettings;
176
177
  }
177
178
 
178
179
  export class LudeoCastBuildAssignmentSettings {
@@ -183,10 +184,6 @@ export class AwsBuildAssignmentSettings {
183
184
  [region: string]: AWSProviderSettings;
184
185
  }
185
186
 
186
- export class LudeoCastV2BuildAssignmentSettings {
187
- [region: string]: LudeoCastV2ProviderSettings[];
188
- }
189
-
190
187
  export enum StreamGroupStatus {
191
188
  ACTIVATING = "ACTIVATING",
192
189
  ACTIVE = "ACTIVE",
@@ -231,8 +228,7 @@ export class BuildsAssignmentsData {
231
228
 
232
229
  export type BuildAssignmentProviderSettings =
233
230
  | AwsBuildAssignmentSettings
234
- | LudeoCastBuildAssignmentSettings
235
- | LudeoCastV2BuildAssignmentSettings;
231
+ | LudeoCastBuildAssignmentSettings;
236
232
 
237
233
  export class BuildAssignmentData {
238
234
  buildVersion: string;
@@ -19,7 +19,7 @@ export class CreateGameRequestDto {
19
19
  machineType: string;
20
20
 
21
21
  @IsString()
22
- distributionName: string;
22
+ sourceSnapshot: string;
23
23
 
24
24
  @IsOptional()
25
25
  additionalEnvironmentVariables?: Record<string, string>;
@@ -0,0 +1,25 @@
1
+ import { IsNumber, IsOptional, IsString } from 'class-validator';
2
+
3
+ export class CreateBuildSnapshotRequestDto {
4
+ @IsString()
5
+ downloadURL: string; // S3 URL (e.g., s3://bucket/path)
6
+
7
+ @IsNumber()
8
+ sizeGB: number;
9
+
10
+ @IsString()
11
+ buildId: string; // Build ID for snapshot naming (e.g., 'build-{buildId}')
12
+ }
13
+
14
+ export class CreateBuildSnapshotResponseDto {
15
+ status: 'success' | 'error';
16
+
17
+ @IsOptional()
18
+ @IsString()
19
+ message?: string;
20
+
21
+ @IsOptional()
22
+ @IsString()
23
+ snapshotName?: string; // Name of the created snapshot
24
+ }
25
+
@@ -1,7 +1,7 @@
1
1
  export * from "./types";
2
2
  export * from "./create-machine.dto";
3
3
  export * from "./create-game.dto";
4
- export * from "./create-distribution.dto";
5
- export * from "./terminate-build-distribution.dto";
4
+ export * from "./create-snapshot.dto";
5
+ export * from "./terminate-build-snapshot.dto";
6
6
  export * from "./terminate-machine.dto";
7
7
  export * from "./terminate-game.dto";