@ludeo/cloud-common 1.2.83-ygarbage6 → 1.2.83-ygarbage8
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/events/allocate-game-resource-request.js +2 -2
- package/dist/v4/events/allocate-game-resource-request.js.map +1 -1
- package/dist/v4/events/allocate-ludeo-resource-request.js +1 -1
- package/dist/v4/events/allocate-ludeo-resource-request.js.map +1 -1
- package/dist/v4/events/aws-reactivate-stream-session-task.d.ts +2 -2
- package/dist/v4/events/aws-reactivate-stream-session-task.js +2 -2
- package/dist/v4/events/aws-reactivate-stream-session-task.js.map +1 -1
- package/dist/v4/events/aws-stream-session-active.d.ts +2 -2
- package/dist/v4/events/aws-stream-session-active.js +2 -2
- package/dist/v4/events/aws-stream-session-active.js.map +1 -1
- package/dist/v4/events/aws-stream-session-reactivation-started.d.ts +2 -2
- package/dist/v4/events/aws-stream-session-reactivation-started.js +2 -2
- package/dist/v4/events/aws-stream-session-reactivation-started.js.map +1 -1
- package/dist/v4/events/create-machine-resource-batch-request.js +1 -1
- package/dist/v4/events/create-machine-resource-batch-request.js.map +1 -1
- package/dist/v4/events/create-machine-resource-request.js +1 -1
- package/dist/v4/events/create-machine-resource-request.js.map +1 -1
- package/dist/v4/events/game-allocated-response.js +1 -1
- package/dist/v4/events/game-allocated-response.js.map +1 -1
- package/dist/v4/events/game-resource-status-changed.d.ts +2 -2
- package/dist/v4/events/game-resource-status-changed.js +2 -2
- package/dist/v4/events/game-resource-status-changed.js.map +1 -1
- package/dist/v4/events/load-ludeo-resource.js +1 -1
- package/dist/v4/events/load-ludeo-resource.js.map +1 -1
- package/dist/v4/events/machine-allocated-response.js +1 -1
- package/dist/v4/events/machine-allocated-response.js.map +1 -1
- package/dist/v4/events/machine-pool-resizing-task.js +1 -1
- package/dist/v4/events/machine-pool-resizing-task.js.map +1 -1
- package/dist/v4/events/machine-resource-batch-creation-failed-response.js +1 -1
- package/dist/v4/events/machine-resource-batch-creation-failed-response.js.map +1 -1
- package/dist/v4/events/machine-resource-batch-termination-failed-response.js +1 -1
- package/dist/v4/events/machine-resource-batch-termination-failed-response.js.map +1 -1
- package/dist/v4/events/monitor-game-resource-task.js +1 -1
- package/dist/v4/events/monitor-game-resource-task.js.map +1 -1
- package/dist/v4/events/pool-status.js +1 -1
- package/dist/v4/events/pool-status.js.map +1 -1
- package/dist/v4/events/terminate-game-resource-request.d.ts +2 -2
- package/dist/v4/events/terminate-game-resource-request.js +1 -1
- package/dist/v4/events/terminate-game-resource-request.js.map +1 -1
- package/dist/v4/events/terminate-machine-resource-batch-request.js +1 -1
- package/dist/v4/events/terminate-machine-resource-batch-request.js.map +1 -1
- package/dist/v4/events/terminate-machine-resource-request.js +1 -1
- package/dist/v4/events/terminate-machine-resource-request.js.map +1 -1
- package/dist/v4/events/update-ludeo-resource-status-request.js +1 -1
- package/dist/v4/events/update-ludeo-resource-status-request.js.map +1 -1
- package/dist/v4/types/cloud/provider-settings.d.ts +1 -1
- package/dist/v4/types/cloud/provider-settings.js +2 -4
- package/dist/v4/types/cloud/provider-settings.js.map +1 -1
- package/dist/v4/types/cloud/resource-provider-settings.d.ts +1 -1
- package/dist/v4/types/cloud/resource-provider-settings.js +2 -4
- package/dist/v4/types/cloud/resource-provider-settings.js.map +1 -1
- package/dist/v4/types/pools/configuration/base.js +1 -1
- package/dist/v4/types/pools/configuration/base.js.map +1 -1
- package/package.json +1 -1
- package/src/v4/events/allocate-game-resource-request.ts +4 -4
- package/src/v4/events/allocate-ludeo-resource-request.ts +2 -2
- package/src/v4/events/aws-reactivate-stream-session-task.ts +6 -3
- package/src/v4/events/aws-stream-session-active.ts +7 -4
- package/src/v4/events/aws-stream-session-reactivation-started.ts +6 -3
- package/src/v4/events/create-machine-resource-batch-request.ts +2 -2
- package/src/v4/events/create-machine-resource-request.ts +2 -2
- package/src/v4/events/game-allocated-response.ts +2 -2
- package/src/v4/events/game-resource-status-changed.ts +8 -4
- package/src/v4/events/load-ludeo-resource.ts +2 -2
- package/src/v4/events/machine-allocated-response.ts +2 -2
- package/src/v4/events/machine-pool-resizing-task.ts +2 -2
- package/src/v4/events/machine-resource-batch-creation-failed-response.ts +2 -2
- package/src/v4/events/machine-resource-batch-termination-failed-response.ts +2 -2
- package/src/v4/events/monitor-game-resource-task.ts +2 -2
- package/src/v4/events/pool-status.ts +2 -2
- package/src/v4/events/terminate-game-resource-request.ts +5 -3
- package/src/v4/events/terminate-machine-resource-batch-request.ts +2 -1
- package/src/v4/events/terminate-machine-resource-request.ts +2 -1
- package/src/v4/events/update-ludeo-resource-status-request.ts +2 -2
- package/src/v4/types/cloud/provider-settings.ts +5 -7
- package/src/v4/types/cloud/resource-provider-settings.ts +2 -5
- package/src/v4/types/pools/configuration/base.ts +2 -2
|
@@ -4,10 +4,10 @@ import { ValidateNestedType } from "../../decorators/validate-nested-type.decora
|
|
|
4
4
|
import { CloudSessionContext } from "../contexts";
|
|
5
5
|
import {
|
|
6
6
|
AllocationRequestData,
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProvider,
|
|
9
8
|
CloudProviderSettings,
|
|
10
9
|
GameResourceSettings,
|
|
10
|
+
getProviderSettingsType,
|
|
11
11
|
LudeoResourceSettings,
|
|
12
12
|
} from "../types";
|
|
13
13
|
import { IsUUIDOrEmpty } from "../../decorators/is-uuid-or-empty.decorator";
|
|
@@ -19,7 +19,7 @@ export class AllocateLudeoResourceRequestPayload {
|
|
|
19
19
|
@IsUUID()
|
|
20
20
|
ludeoPoolId: string;
|
|
21
21
|
|
|
22
|
-
@ValidateNestedType(
|
|
22
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
23
|
providerSettings: CloudProviderSettings;
|
|
24
24
|
|
|
25
25
|
@IsEnum(CloudProvider)
|
|
@@ -2,7 +2,10 @@ import { IsUUID } from "class-validator";
|
|
|
2
2
|
|
|
3
3
|
import { LudeoEvent } from "../../infra";
|
|
4
4
|
import { ValidateNestedType } from "../../decorators";
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
CloudResourceProviderSettings,
|
|
7
|
+
getResourceProviderSettingsType,
|
|
8
|
+
} from "../types";
|
|
6
9
|
|
|
7
10
|
export class AwsReactivateStreamSessionTaskPayload {
|
|
8
11
|
@IsUUID()
|
|
@@ -11,8 +14,8 @@ export class AwsReactivateStreamSessionTaskPayload {
|
|
|
11
14
|
@IsUUID()
|
|
12
15
|
gamePoolId: string;
|
|
13
16
|
|
|
14
|
-
@ValidateNestedType(
|
|
15
|
-
providerSettings:
|
|
17
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
18
|
+
providerSettings: CloudResourceProviderSettings;
|
|
16
19
|
}
|
|
17
20
|
|
|
18
21
|
export class AwsReactivateStreamSessionTask extends LudeoEvent {
|
|
@@ -3,14 +3,17 @@ import { ValidateNestedType } from "../../decorators";
|
|
|
3
3
|
import { CreateGameResourceRequestPayload } from "./create-game-resource-request";
|
|
4
4
|
import { IsString } from "class-validator";
|
|
5
5
|
import { CloudResourceContext } from "../contexts";
|
|
6
|
-
import {
|
|
6
|
+
import {
|
|
7
|
+
CloudResourceProviderSettings,
|
|
8
|
+
getResourceProviderSettingsType,
|
|
9
|
+
} from "../types";
|
|
7
10
|
|
|
8
11
|
export class AwsStreamSessionActivePayload {
|
|
9
12
|
@ValidateNestedType(() => CreateGameResourceRequestPayload)
|
|
10
13
|
creationPayload: CreateGameResourceRequestPayload;
|
|
11
14
|
|
|
12
|
-
@ValidateNestedType(
|
|
13
|
-
providerSettings:
|
|
15
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
16
|
+
providerSettings: CloudResourceProviderSettings;
|
|
14
17
|
|
|
15
18
|
@IsString()
|
|
16
19
|
streamSessionId: string;
|
|
@@ -21,7 +24,7 @@ export class AwsStreamSessionActive extends LudeoEvent {
|
|
|
21
24
|
|
|
22
25
|
constructor(
|
|
23
26
|
payload: AwsStreamSessionActivePayload,
|
|
24
|
-
context: CloudResourceContext
|
|
27
|
+
context: CloudResourceContext
|
|
25
28
|
) {
|
|
26
29
|
super(AwsStreamSessionActive.EVENT_NAME);
|
|
27
30
|
this.payload = payload;
|
|
@@ -2,7 +2,10 @@ import { IsUUID } from "class-validator";
|
|
|
2
2
|
|
|
3
3
|
import { LudeoEvent } from "../../infra";
|
|
4
4
|
import { ValidateNestedType } from "../../decorators";
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
CloudResourceProviderSettings,
|
|
7
|
+
getResourceProviderSettingsType,
|
|
8
|
+
} from "../types";
|
|
6
9
|
|
|
7
10
|
export class AwsStreamSessionReactivationStartedPayload {
|
|
8
11
|
@IsUUID()
|
|
@@ -11,8 +14,8 @@ export class AwsStreamSessionReactivationStartedPayload {
|
|
|
11
14
|
@IsUUID()
|
|
12
15
|
gamePoolId: string;
|
|
13
16
|
|
|
14
|
-
@ValidateNestedType(
|
|
15
|
-
providerSettings:
|
|
17
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
18
|
+
providerSettings: CloudResourceProviderSettings;
|
|
16
19
|
}
|
|
17
20
|
|
|
18
21
|
export class AwsStreamSessionReactivationStarted extends LudeoEvent {
|
|
@@ -4,9 +4,9 @@ import { CloudResourceContext } from "../contexts";
|
|
|
4
4
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
5
5
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
6
|
import {
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProvider,
|
|
9
8
|
CloudProviderSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
|
|
12
12
|
export class CreateMachineResourceBatchRequestPayload {
|
|
@@ -19,7 +19,7 @@ export class CreateMachineResourceBatchRequestPayload {
|
|
|
19
19
|
@IsEnum(CloudProvider)
|
|
20
20
|
cloudProvider: CloudProvider;
|
|
21
21
|
|
|
22
|
-
@ValidateNestedType(
|
|
22
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
23
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
24
|
}
|
|
25
25
|
|
|
@@ -4,9 +4,9 @@ import { CloudResourceContext } from "../contexts";
|
|
|
4
4
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
5
5
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
6
|
import {
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProvider,
|
|
9
8
|
CloudProviderSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
|
|
12
12
|
export class CreateMachineResourceRequestPayload {
|
|
@@ -19,7 +19,7 @@ export class CreateMachineResourceRequestPayload {
|
|
|
19
19
|
@IsEnum(CloudProvider)
|
|
20
20
|
cloudProvider: CloudProvider;
|
|
21
21
|
|
|
22
|
-
@ValidateNestedType(
|
|
22
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
23
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
24
|
}
|
|
25
25
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { CloudResourceContext } from "../contexts";
|
|
2
2
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
3
3
|
import {
|
|
4
|
-
AWSProviderSettings,
|
|
5
4
|
CloudProvider,
|
|
6
5
|
CloudProviderSettings,
|
|
7
6
|
GameResourceSettings,
|
|
7
|
+
getProviderSettingsType,
|
|
8
8
|
} from "../types";
|
|
9
9
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
10
10
|
import { IsEnum, IsUUID, IsOptional } from "class-validator";
|
|
@@ -27,7 +27,7 @@ export class GameAllocatedResponsePayload {
|
|
|
27
27
|
@IsUUIDOrEmpty()
|
|
28
28
|
ludeoId?: string;
|
|
29
29
|
|
|
30
|
-
@ValidateNestedType(
|
|
30
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
31
31
|
providerSettings: CloudProviderSettings;
|
|
32
32
|
|
|
33
33
|
@IsUUID()
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { IsOptional, IsString, IsUUID } from "class-validator";
|
|
2
2
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
3
3
|
import { CloudResourceContext } from "../contexts/cloud-resource-context";
|
|
4
|
-
import {
|
|
4
|
+
import {
|
|
5
|
+
CloudResourceProviderSettings,
|
|
6
|
+
CloudResourceStatus,
|
|
7
|
+
getResourceProviderSettingsType,
|
|
8
|
+
} from "../types";
|
|
5
9
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
10
|
|
|
7
11
|
export class GameResourceStatusChangedEventPayload {
|
|
@@ -11,8 +15,8 @@ export class GameResourceStatusChangedEventPayload {
|
|
|
11
15
|
@IsUUID()
|
|
12
16
|
gamePoolId: string;
|
|
13
17
|
|
|
14
|
-
@ValidateNestedType(
|
|
15
|
-
providerSettings:
|
|
18
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
19
|
+
providerSettings: CloudResourceProviderSettings;
|
|
16
20
|
|
|
17
21
|
@IsString()
|
|
18
22
|
status: CloudResourceStatus;
|
|
@@ -32,7 +36,7 @@ export class GameResourceStatusChangedEvent extends LudeoEvent {
|
|
|
32
36
|
|
|
33
37
|
constructor(
|
|
34
38
|
payload: GameResourceStatusChangedEventPayload,
|
|
35
|
-
context: CloudResourceContext
|
|
39
|
+
context: CloudResourceContext
|
|
36
40
|
) {
|
|
37
41
|
super(GameResourceStatusChangedEvent.EVENT_NAME);
|
|
38
42
|
this.payload = payload;
|
|
@@ -3,10 +3,10 @@ import { LudeoEvent } from "../../infra/ludeo-event";
|
|
|
3
3
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
4
4
|
import { CloudResourceContext } from "../contexts";
|
|
5
5
|
import {
|
|
6
|
-
AWSProviderSettings,
|
|
7
6
|
CloudProvider,
|
|
8
7
|
CloudProviderSettings,
|
|
9
8
|
GameResourceSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
import { IsUUIDOrEmpty } from "../../decorators/is-uuid-or-empty.decorator";
|
|
12
12
|
|
|
@@ -36,7 +36,7 @@ export class LoadLudeoResourcePayload {
|
|
|
36
36
|
@ValidateNestedType(() => GameResourceSettings)
|
|
37
37
|
gameResourceSettings: GameResourceSettings;
|
|
38
38
|
|
|
39
|
-
@ValidateNestedType(
|
|
39
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
40
40
|
providerSettings: CloudProviderSettings;
|
|
41
41
|
|
|
42
42
|
@IsEnum(CloudProvider)
|
|
@@ -4,9 +4,9 @@ import { CloudResourceContext } from "../contexts";
|
|
|
4
4
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
5
5
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
6
|
import {
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProviderSettings,
|
|
9
8
|
CloudProvider,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
|
|
12
12
|
export class MachineAllocatedResponsePayload {
|
|
@@ -22,7 +22,7 @@ export class MachineAllocatedResponsePayload {
|
|
|
22
22
|
@IsUUID()
|
|
23
23
|
gamePoolId: string;
|
|
24
24
|
|
|
25
|
-
@ValidateNestedType(
|
|
25
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
26
26
|
providerSettings: CloudProviderSettings;
|
|
27
27
|
|
|
28
28
|
@IsEnum(CloudProvider)
|
|
@@ -2,13 +2,13 @@ import { IsEnum, IsUUID } from "class-validator";
|
|
|
2
2
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
3
3
|
import { ValidateNestedType } from "../../decorators";
|
|
4
4
|
import {
|
|
5
|
-
AWSProviderSettings,
|
|
6
5
|
CloudProvider,
|
|
7
6
|
CloudProviderSettings,
|
|
7
|
+
getProviderSettingsType,
|
|
8
8
|
} from "../types";
|
|
9
9
|
|
|
10
10
|
export class MachinePoolResizingTaskEventPayload {
|
|
11
|
-
@ValidateNestedType(
|
|
11
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
12
12
|
providerSettings: CloudProviderSettings;
|
|
13
13
|
|
|
14
14
|
@IsEnum(CloudProvider)
|
|
@@ -4,9 +4,9 @@ import { CloudResourceContext } from "../contexts";
|
|
|
4
4
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
5
5
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
6
|
import {
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProvider,
|
|
9
8
|
CloudProviderSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
|
|
12
12
|
export class MachineResourceBatchCreationFailedResponsePayload {
|
|
@@ -19,7 +19,7 @@ export class MachineResourceBatchCreationFailedResponsePayload {
|
|
|
19
19
|
@IsEnum(CloudProvider)
|
|
20
20
|
cloudProvider: CloudProvider;
|
|
21
21
|
|
|
22
|
-
@ValidateNestedType(
|
|
22
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
23
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
24
|
|
|
25
25
|
@IsString()
|
|
@@ -4,9 +4,9 @@ import { CloudResourceContext } from "../contexts";
|
|
|
4
4
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
5
5
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
6
6
|
import {
|
|
7
|
-
AWSProviderSettings,
|
|
8
7
|
CloudProvider,
|
|
9
8
|
CloudProviderSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
|
|
12
12
|
export class MachineResourceBatchTerminationFailedResponsePayload {
|
|
@@ -19,7 +19,7 @@ export class MachineResourceBatchTerminationFailedResponsePayload {
|
|
|
19
19
|
@IsEnum(CloudProvider)
|
|
20
20
|
cloudProvider: CloudProvider;
|
|
21
21
|
|
|
22
|
-
@ValidateNestedType(
|
|
22
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
23
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
24
|
|
|
25
25
|
@IsString()
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { IsEnum, IsUUID } from "class-validator";
|
|
2
2
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
3
3
|
import {
|
|
4
|
-
AWSResourceProviderSettings,
|
|
5
4
|
CloudProvider,
|
|
6
5
|
CloudResourceProviderSettings,
|
|
6
|
+
getResourceProviderSettingsType,
|
|
7
7
|
} from "../types";
|
|
8
8
|
import { ValidateNestedType } from "../../decorators";
|
|
9
9
|
|
|
@@ -14,7 +14,7 @@ export class MonitorGameResourceTaskEventPayload {
|
|
|
14
14
|
@IsUUID()
|
|
15
15
|
gamePoolId: string;
|
|
16
16
|
|
|
17
|
-
@ValidateNestedType(
|
|
17
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
18
18
|
providerSettings: CloudResourceProviderSettings;
|
|
19
19
|
|
|
20
20
|
@IsEnum(CloudProvider)
|
|
@@ -6,9 +6,9 @@ import {
|
|
|
6
6
|
BasePoolAttributes,
|
|
7
7
|
LudeoPoolAttributes,
|
|
8
8
|
MachinePoolAttributes,
|
|
9
|
-
AWSProviderSettings,
|
|
10
9
|
CloudProviderSettings,
|
|
11
10
|
GamePoolAttributes,
|
|
11
|
+
getProviderSettingsType,
|
|
12
12
|
} from "../types";
|
|
13
13
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
14
14
|
import { IsUUIDOrEmpty } from "../../decorators/is-uuid-or-empty.decorator";
|
|
@@ -44,7 +44,7 @@ export class PoolStatusEventGamePool extends PoolStatusEventBasePool<GamePoolAtt
|
|
|
44
44
|
export class PoolStatusEventMachinePool extends PoolStatusEventBasePool<MachinePoolAttributes> {
|
|
45
45
|
games: PoolStatusEventGamePool[];
|
|
46
46
|
|
|
47
|
-
@ValidateNestedType(
|
|
47
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
48
48
|
providerSettings: Partial<CloudProviderSettings>;
|
|
49
49
|
}
|
|
50
50
|
|
|
@@ -19,10 +19,12 @@ import {
|
|
|
19
19
|
CloudResourceProviderSettings,
|
|
20
20
|
CloudProvider,
|
|
21
21
|
getProviderSettingsType,
|
|
22
|
+
getResourceProviderSettingsType,
|
|
22
23
|
} from "../types";
|
|
23
24
|
|
|
24
25
|
export class TerminateGameResourceRequestPayload<
|
|
25
|
-
T extends CloudProviderSettings = CloudProviderSettings
|
|
26
|
+
T extends CloudProviderSettings = CloudProviderSettings,
|
|
27
|
+
K extends CloudResourceProviderSettings = CloudResourceProviderSettings
|
|
26
28
|
> {
|
|
27
29
|
@IsUUID()
|
|
28
30
|
gameResourceId: string;
|
|
@@ -40,8 +42,8 @@ export class TerminateGameResourceRequestPayload<
|
|
|
40
42
|
@ValidateNestedType(getProviderSettingsType)
|
|
41
43
|
providerSettings: T;
|
|
42
44
|
|
|
43
|
-
@ValidateNestedType(
|
|
44
|
-
resourceProviderSettings:
|
|
45
|
+
@ValidateNestedType(getResourceProviderSettingsType)
|
|
46
|
+
resourceProviderSettings: K;
|
|
45
47
|
|
|
46
48
|
@IsBoolean()
|
|
47
49
|
shouldDeallocateMachineResource: boolean;
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
AWSProviderSettings,
|
|
8
8
|
CloudProvider,
|
|
9
9
|
CloudProviderSettings,
|
|
10
|
+
getProviderSettingsType,
|
|
10
11
|
} from "../types";
|
|
11
12
|
|
|
12
13
|
export class TerminateMachineResourceBatchRequestPayload {
|
|
@@ -19,7 +20,7 @@ export class TerminateMachineResourceBatchRequestPayload {
|
|
|
19
20
|
@IsEnum(CloudProvider)
|
|
20
21
|
cloudProvider: CloudProvider;
|
|
21
22
|
|
|
22
|
-
@ValidateNestedType(
|
|
23
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
24
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
25
|
}
|
|
25
26
|
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
AWSProviderSettings,
|
|
8
8
|
CloudProvider,
|
|
9
9
|
CloudProviderSettings,
|
|
10
|
+
getProviderSettingsType,
|
|
10
11
|
} from "../types";
|
|
11
12
|
|
|
12
13
|
export class TerminateMachineResourceRequestPayload {
|
|
@@ -19,7 +20,7 @@ export class TerminateMachineResourceRequestPayload {
|
|
|
19
20
|
@IsEnum(CloudProvider)
|
|
20
21
|
cloudProvider: CloudProvider;
|
|
21
22
|
|
|
22
|
-
@ValidateNestedType(
|
|
23
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
23
24
|
cloudProviderSettings: CloudProviderSettings;
|
|
24
25
|
}
|
|
25
26
|
|
|
@@ -2,11 +2,11 @@ import { IsEnum, IsOptional, IsString, IsUUID } from "class-validator";
|
|
|
2
2
|
import { LudeoEvent } from "../../infra/ludeo-event";
|
|
3
3
|
import { CloudResourceContext } from "../contexts/cloud-resource-context";
|
|
4
4
|
import {
|
|
5
|
-
AWSProviderSettings,
|
|
6
5
|
CloudProvider,
|
|
7
6
|
CloudProviderSettings,
|
|
8
7
|
CloudResourceStatus,
|
|
9
8
|
GameResourceSettings,
|
|
9
|
+
getProviderSettingsType,
|
|
10
10
|
} from "../types";
|
|
11
11
|
import { ValidateNestedType } from "../../decorators/validate-nested-type.decorator";
|
|
12
12
|
|
|
@@ -36,7 +36,7 @@ export class UpdateLudeoResourceStatusRequestPayload {
|
|
|
36
36
|
@IsEnum(CloudProvider)
|
|
37
37
|
cloudProvider: CloudProvider;
|
|
38
38
|
|
|
39
|
-
@ValidateNestedType(
|
|
39
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
40
40
|
providerSettings: CloudProviderSettings;
|
|
41
41
|
|
|
42
42
|
@ValidateNestedType(() => GameResourceSettings)
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
import { TypeHelpOptions } from "class-transformer";
|
|
2
2
|
import { AWSProviderSettings } from "./aws";
|
|
3
3
|
import { MockProviderSettings } from "./mock";
|
|
4
|
-
import { CloudProvider } from "./provider";
|
|
5
4
|
|
|
6
5
|
export type CloudProviderSettings = AWSProviderSettings | MockProviderSettings;
|
|
7
6
|
|
|
8
|
-
export const getProviderSettingsType = ({
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
const
|
|
13
|
-
|
|
7
|
+
export const getProviderSettingsType = ({
|
|
8
|
+
object,
|
|
9
|
+
property,
|
|
10
|
+
}: TypeHelpOptions) => {
|
|
11
|
+
const providerSettings = object[property];
|
|
14
12
|
if ("streamGroupId" in providerSettings) {
|
|
15
13
|
return AWSProviderSettings;
|
|
16
14
|
}
|
|
@@ -8,12 +8,9 @@ export type CloudResourceProviderSettings =
|
|
|
8
8
|
|
|
9
9
|
export const getResourceProviderSettingsType = ({
|
|
10
10
|
object,
|
|
11
|
+
property,
|
|
11
12
|
}: TypeHelpOptions) => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const { payload } = object;
|
|
15
|
-
const { providerSettings } = payload;
|
|
16
|
-
|
|
13
|
+
const providerSettings = object[property];
|
|
17
14
|
if ("streamSessionId" in providerSettings) {
|
|
18
15
|
return AWSResourceProviderSettings;
|
|
19
16
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { IsNumber, IsEnum, IsUUID, IsOptional } from "class-validator";
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
AWSProviderSettings,
|
|
5
4
|
CloudProvider,
|
|
6
5
|
CloudProviderSettings,
|
|
6
|
+
getProviderSettingsType,
|
|
7
7
|
} from "../../cloud";
|
|
8
8
|
import { CloudPoolType } from "../type";
|
|
9
9
|
import { BasePoolAttributes } from "./attributes";
|
|
@@ -20,7 +20,7 @@ export class PoolScaleConfiguration {
|
|
|
20
20
|
|
|
21
21
|
export class BaseCloudPoolConfiguration {
|
|
22
22
|
@IsOptional()
|
|
23
|
-
@ValidateNestedType(
|
|
23
|
+
@ValidateNestedType(getProviderSettingsType)
|
|
24
24
|
providerSettings?: CloudProviderSettings;
|
|
25
25
|
|
|
26
26
|
@IsEnum(CloudProvider)
|