@quantcdn/pulumi-quant 0.3.0 → 5.5.0
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/Pulumi.yaml +0 -3
- package/README.md +0 -1
- package/aiAgent.ts +233 -0
- package/aiGovernance.ts +27 -74
- package/aiSkill.ts +69 -96
- package/aiVectorCollection.ts +63 -23
- package/aiVectorDocument.ts +45 -98
- package/application.ts +69 -92
- package/cronJob.ts +31 -87
- package/environment.ts +169 -49
- package/index.ts +14 -0
- package/kvItem.ts +19 -32
- package/kvStore.ts +11 -19
- package/package.json +4 -4
- package/ruleAuth.ts +43 -3
- package/ruleBotChallenge.ts +42 -0
- package/ruleHeaders.ts +42 -0
- package/ruleServeStatic.ts +42 -0
- package/slackBot.ts +205 -0
- package/tsconfig.json +2 -0
- package/types/input.ts +619 -20
- package/types/output.ts +619 -20
- package/utilities.ts +1 -1
- package/volume.ts +26 -48
package/cronJob.ts
CHANGED
|
@@ -33,44 +33,26 @@ export class CronJob extends pulumi.CustomResource {
|
|
|
33
33
|
}
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
|
-
*
|
|
36
|
+
* The application ID
|
|
37
37
|
*/
|
|
38
38
|
declare public readonly application: pulumi.Output<string>;
|
|
39
|
+
declare public readonly commands: pulumi.Output<string[]>;
|
|
39
40
|
/**
|
|
40
|
-
*
|
|
41
|
-
*/
|
|
42
|
-
declare public readonly command: pulumi.Output<string>;
|
|
43
|
-
/**
|
|
44
|
-
* Cron job description
|
|
41
|
+
* The cron job ID
|
|
45
42
|
*/
|
|
43
|
+
declare public readonly cron: pulumi.Output<string>;
|
|
46
44
|
declare public readonly description: pulumi.Output<string>;
|
|
47
45
|
/**
|
|
48
|
-
*
|
|
46
|
+
* The environment ID
|
|
49
47
|
*/
|
|
50
48
|
declare public readonly environment: pulumi.Output<string>;
|
|
51
|
-
/**
|
|
52
|
-
* Whether the cron job is enabled
|
|
53
|
-
*/
|
|
54
49
|
declare public readonly isEnabled: pulumi.Output<boolean>;
|
|
55
|
-
/**
|
|
56
|
-
* Cron job name
|
|
57
|
-
*/
|
|
58
50
|
declare public readonly name: pulumi.Output<string>;
|
|
59
51
|
/**
|
|
60
|
-
*
|
|
61
|
-
*/
|
|
62
|
-
declare public readonly organization: pulumi.Output<string>;
|
|
63
|
-
/**
|
|
64
|
-
* Resolved cron schedule
|
|
65
|
-
*/
|
|
66
|
-
declare public /*out*/ readonly schedule: pulumi.Output<string>;
|
|
67
|
-
/**
|
|
68
|
-
* Cron schedule expression
|
|
52
|
+
* The organisation ID
|
|
69
53
|
*/
|
|
54
|
+
declare public readonly organisation: pulumi.Output<string>;
|
|
70
55
|
declare public readonly scheduleExpression: pulumi.Output<string>;
|
|
71
|
-
/**
|
|
72
|
-
* Target container name
|
|
73
|
-
*/
|
|
74
56
|
declare public readonly targetContainerName: pulumi.Output<string>;
|
|
75
57
|
|
|
76
58
|
/**
|
|
@@ -87,39 +69,33 @@ export class CronJob extends pulumi.CustomResource {
|
|
|
87
69
|
if (opts.id) {
|
|
88
70
|
const state = argsOrState as CronJobState | undefined;
|
|
89
71
|
resourceInputs["application"] = state?.application;
|
|
90
|
-
resourceInputs["
|
|
72
|
+
resourceInputs["commands"] = state?.commands;
|
|
73
|
+
resourceInputs["cron"] = state?.cron;
|
|
91
74
|
resourceInputs["description"] = state?.description;
|
|
92
75
|
resourceInputs["environment"] = state?.environment;
|
|
93
76
|
resourceInputs["isEnabled"] = state?.isEnabled;
|
|
94
77
|
resourceInputs["name"] = state?.name;
|
|
95
|
-
resourceInputs["
|
|
96
|
-
resourceInputs["schedule"] = state?.schedule;
|
|
78
|
+
resourceInputs["organisation"] = state?.organisation;
|
|
97
79
|
resourceInputs["scheduleExpression"] = state?.scheduleExpression;
|
|
98
80
|
resourceInputs["targetContainerName"] = state?.targetContainerName;
|
|
99
81
|
} else {
|
|
100
82
|
const args = argsOrState as CronJobArgs | undefined;
|
|
101
|
-
if (args?.
|
|
102
|
-
throw new Error("Missing required property '
|
|
103
|
-
}
|
|
104
|
-
if (args?.command === undefined && !opts.urn) {
|
|
105
|
-
throw new Error("Missing required property 'command'");
|
|
106
|
-
}
|
|
107
|
-
if (args?.environment === undefined && !opts.urn) {
|
|
108
|
-
throw new Error("Missing required property 'environment'");
|
|
83
|
+
if (args?.commands === undefined && !opts.urn) {
|
|
84
|
+
throw new Error("Missing required property 'commands'");
|
|
109
85
|
}
|
|
110
86
|
if (args?.scheduleExpression === undefined && !opts.urn) {
|
|
111
87
|
throw new Error("Missing required property 'scheduleExpression'");
|
|
112
88
|
}
|
|
113
89
|
resourceInputs["application"] = args?.application;
|
|
114
|
-
resourceInputs["
|
|
90
|
+
resourceInputs["commands"] = args?.commands;
|
|
91
|
+
resourceInputs["cron"] = args?.cron;
|
|
115
92
|
resourceInputs["description"] = args?.description;
|
|
116
93
|
resourceInputs["environment"] = args?.environment;
|
|
117
94
|
resourceInputs["isEnabled"] = args?.isEnabled;
|
|
118
95
|
resourceInputs["name"] = args?.name;
|
|
119
|
-
resourceInputs["
|
|
96
|
+
resourceInputs["organisation"] = args?.organisation;
|
|
120
97
|
resourceInputs["scheduleExpression"] = args?.scheduleExpression;
|
|
121
98
|
resourceInputs["targetContainerName"] = args?.targetContainerName;
|
|
122
|
-
resourceInputs["schedule"] = undefined /*out*/;
|
|
123
99
|
}
|
|
124
100
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
125
101
|
super(CronJob.__pulumiType, name, resourceInputs, opts);
|
|
@@ -131,44 +107,26 @@ export class CronJob extends pulumi.CustomResource {
|
|
|
131
107
|
*/
|
|
132
108
|
export interface CronJobState {
|
|
133
109
|
/**
|
|
134
|
-
*
|
|
110
|
+
* The application ID
|
|
135
111
|
*/
|
|
136
112
|
application?: pulumi.Input<string>;
|
|
113
|
+
commands?: pulumi.Input<pulumi.Input<string>[]>;
|
|
137
114
|
/**
|
|
138
|
-
*
|
|
139
|
-
*/
|
|
140
|
-
command?: pulumi.Input<string>;
|
|
141
|
-
/**
|
|
142
|
-
* Cron job description
|
|
115
|
+
* The cron job ID
|
|
143
116
|
*/
|
|
117
|
+
cron?: pulumi.Input<string>;
|
|
144
118
|
description?: pulumi.Input<string>;
|
|
145
119
|
/**
|
|
146
|
-
*
|
|
120
|
+
* The environment ID
|
|
147
121
|
*/
|
|
148
122
|
environment?: pulumi.Input<string>;
|
|
149
|
-
/**
|
|
150
|
-
* Whether the cron job is enabled
|
|
151
|
-
*/
|
|
152
123
|
isEnabled?: pulumi.Input<boolean>;
|
|
153
|
-
/**
|
|
154
|
-
* Cron job name
|
|
155
|
-
*/
|
|
156
124
|
name?: pulumi.Input<string>;
|
|
157
125
|
/**
|
|
158
|
-
*
|
|
159
|
-
*/
|
|
160
|
-
organization?: pulumi.Input<string>;
|
|
161
|
-
/**
|
|
162
|
-
* Resolved cron schedule
|
|
163
|
-
*/
|
|
164
|
-
schedule?: pulumi.Input<string>;
|
|
165
|
-
/**
|
|
166
|
-
* Cron schedule expression
|
|
126
|
+
* The organisation ID
|
|
167
127
|
*/
|
|
128
|
+
organisation?: pulumi.Input<string>;
|
|
168
129
|
scheduleExpression?: pulumi.Input<string>;
|
|
169
|
-
/**
|
|
170
|
-
* Target container name
|
|
171
|
-
*/
|
|
172
130
|
targetContainerName?: pulumi.Input<string>;
|
|
173
131
|
}
|
|
174
132
|
|
|
@@ -177,39 +135,25 @@ export interface CronJobState {
|
|
|
177
135
|
*/
|
|
178
136
|
export interface CronJobArgs {
|
|
179
137
|
/**
|
|
180
|
-
*
|
|
138
|
+
* The application ID
|
|
181
139
|
*/
|
|
182
|
-
application
|
|
183
|
-
|
|
184
|
-
* Command to execute as a JSON array of strings
|
|
185
|
-
*/
|
|
186
|
-
command: pulumi.Input<string>;
|
|
140
|
+
application?: pulumi.Input<string>;
|
|
141
|
+
commands: pulumi.Input<pulumi.Input<string>[]>;
|
|
187
142
|
/**
|
|
188
|
-
*
|
|
143
|
+
* The cron job ID
|
|
189
144
|
*/
|
|
145
|
+
cron?: pulumi.Input<string>;
|
|
190
146
|
description?: pulumi.Input<string>;
|
|
191
147
|
/**
|
|
192
|
-
*
|
|
193
|
-
*/
|
|
194
|
-
environment: pulumi.Input<string>;
|
|
195
|
-
/**
|
|
196
|
-
* Whether the cron job is enabled
|
|
148
|
+
* The environment ID
|
|
197
149
|
*/
|
|
150
|
+
environment?: pulumi.Input<string>;
|
|
198
151
|
isEnabled?: pulumi.Input<boolean>;
|
|
199
|
-
/**
|
|
200
|
-
* Cron job name
|
|
201
|
-
*/
|
|
202
152
|
name?: pulumi.Input<string>;
|
|
203
153
|
/**
|
|
204
|
-
*
|
|
205
|
-
*/
|
|
206
|
-
organization?: pulumi.Input<string>;
|
|
207
|
-
/**
|
|
208
|
-
* Cron schedule expression
|
|
154
|
+
* The organisation ID
|
|
209
155
|
*/
|
|
156
|
+
organisation?: pulumi.Input<string>;
|
|
210
157
|
scheduleExpression: pulumi.Input<string>;
|
|
211
|
-
/**
|
|
212
|
-
* Target container name
|
|
213
|
-
*/
|
|
214
158
|
targetContainerName?: pulumi.Input<string>;
|
|
215
159
|
}
|
package/environment.ts
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
3
3
|
|
|
4
4
|
import * as pulumi from "@pulumi/pulumi";
|
|
5
|
+
import * as inputs from "./types/input";
|
|
6
|
+
import * as outputs from "./types/output";
|
|
5
7
|
import * as utilities from "./utilities";
|
|
6
8
|
|
|
7
9
|
export class Environment extends pulumi.CustomResource {
|
|
@@ -33,21 +35,38 @@ export class Environment extends pulumi.CustomResource {
|
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
/**
|
|
36
|
-
*
|
|
38
|
+
* ALB routing configuration
|
|
39
|
+
*/
|
|
40
|
+
declare public /*out*/ readonly albRouting: pulumi.Output<outputs.EnvironmentAlbRouting>;
|
|
41
|
+
/**
|
|
42
|
+
* The application ID
|
|
37
43
|
*/
|
|
38
44
|
declare public readonly application: pulumi.Output<string>;
|
|
39
45
|
/**
|
|
40
46
|
* Clone configuration from an existing environment
|
|
41
47
|
*/
|
|
42
48
|
declare public readonly cloneConfigurationFrom: pulumi.Output<string>;
|
|
49
|
+
declare public readonly composeDefinition: pulumi.Output<outputs.EnvironmentComposeDefinition>;
|
|
43
50
|
/**
|
|
44
|
-
*
|
|
51
|
+
* Container name list
|
|
45
52
|
*/
|
|
46
|
-
declare public readonly
|
|
53
|
+
declare public /*out*/ readonly containerNames: pulumi.Output<string[]>;
|
|
47
54
|
/**
|
|
48
55
|
* Creation timestamp
|
|
49
56
|
*/
|
|
50
57
|
declare public /*out*/ readonly createdAt: pulumi.Output<string>;
|
|
58
|
+
/**
|
|
59
|
+
* Scheduled cron jobs
|
|
60
|
+
*/
|
|
61
|
+
declare public /*out*/ readonly crons: pulumi.Output<outputs.EnvironmentCron[]>;
|
|
62
|
+
/**
|
|
63
|
+
* Reason for deployment failure
|
|
64
|
+
*/
|
|
65
|
+
declare public /*out*/ readonly deploymentFailureReason: pulumi.Output<string>;
|
|
66
|
+
/**
|
|
67
|
+
* Type of deployment failure
|
|
68
|
+
*/
|
|
69
|
+
declare public /*out*/ readonly deploymentFailureType: pulumi.Output<string>;
|
|
51
70
|
/**
|
|
52
71
|
* Current deployment status
|
|
53
72
|
*/
|
|
@@ -57,49 +76,81 @@ export class Environment extends pulumi.CustomResource {
|
|
|
57
76
|
*/
|
|
58
77
|
declare public /*out*/ readonly desiredCount: pulumi.Output<number>;
|
|
59
78
|
/**
|
|
60
|
-
* Environment name (e.g., staging, development)
|
|
79
|
+
* Environment name (e.g., 'staging', 'development')
|
|
61
80
|
*/
|
|
62
81
|
declare public readonly envName: pulumi.Output<string>;
|
|
63
82
|
/**
|
|
64
|
-
* Environment variables
|
|
83
|
+
* Environment variables to inject
|
|
65
84
|
*/
|
|
66
|
-
declare public readonly
|
|
85
|
+
declare public readonly environments: pulumi.Output<outputs.EnvironmentEnvironment[]>;
|
|
67
86
|
/**
|
|
68
87
|
* Optional image tag suffix for cloning
|
|
69
88
|
*/
|
|
70
89
|
declare public readonly imageSuffix: pulumi.Output<string>;
|
|
71
90
|
/**
|
|
72
|
-
*
|
|
91
|
+
* Load balancer configuration
|
|
92
|
+
*/
|
|
93
|
+
declare public /*out*/ readonly loadBalancer: pulumi.Output<outputs.EnvironmentLoadBalancer>;
|
|
94
|
+
/**
|
|
95
|
+
* Maximum number of instances
|
|
73
96
|
*/
|
|
74
97
|
declare public readonly maxCapacity: pulumi.Output<number>;
|
|
75
98
|
/**
|
|
76
|
-
* Whether to merge environment variables with cloned ones
|
|
99
|
+
* Whether to merge environment variables with cloned ones (true) or replace them (false). Default: false
|
|
77
100
|
*/
|
|
78
101
|
declare public readonly mergeEnvironment: pulumi.Output<boolean>;
|
|
79
102
|
/**
|
|
80
|
-
* Minimum number of instances
|
|
103
|
+
* Minimum number of instances
|
|
81
104
|
*/
|
|
82
105
|
declare public readonly minCapacity: pulumi.Output<number>;
|
|
83
106
|
/**
|
|
84
|
-
*
|
|
107
|
+
* The organisation ID
|
|
85
108
|
*/
|
|
86
|
-
declare public readonly
|
|
109
|
+
declare public readonly organisation: pulumi.Output<string>;
|
|
110
|
+
/**
|
|
111
|
+
* Public IP address for SSH access
|
|
112
|
+
*/
|
|
113
|
+
declare public /*out*/ readonly publicIpAddress: pulumi.Output<string>;
|
|
87
114
|
/**
|
|
88
115
|
* Number of running tasks
|
|
89
116
|
*/
|
|
90
117
|
declare public /*out*/ readonly runningCount: pulumi.Output<number>;
|
|
91
118
|
/**
|
|
92
|
-
*
|
|
119
|
+
* Security group configuration
|
|
120
|
+
*/
|
|
121
|
+
declare public /*out*/ readonly securityGroup: pulumi.Output<outputs.EnvironmentSecurityGroup>;
|
|
122
|
+
/**
|
|
123
|
+
* ECS service details
|
|
124
|
+
*/
|
|
125
|
+
declare public /*out*/ readonly service: pulumi.Output<outputs.EnvironmentService>;
|
|
126
|
+
/**
|
|
127
|
+
* Spot instance strategy configuration for controlling cost vs reliability. Spot instances provide significant cost savings (~70%) but may be interrupted by AWS. Available for non-production environments.
|
|
93
128
|
*/
|
|
94
|
-
declare public readonly spotConfiguration: pulumi.Output<
|
|
129
|
+
declare public readonly spotConfiguration: pulumi.Output<outputs.EnvironmentSpotConfiguration>;
|
|
95
130
|
/**
|
|
96
131
|
* Environment status
|
|
97
132
|
*/
|
|
98
133
|
declare public /*out*/ readonly status: pulumi.Output<string>;
|
|
134
|
+
/**
|
|
135
|
+
* Subnet configuration
|
|
136
|
+
*/
|
|
137
|
+
declare public /*out*/ readonly subnet: pulumi.Output<outputs.EnvironmentSubnet>;
|
|
138
|
+
/**
|
|
139
|
+
* ECS task definition details
|
|
140
|
+
*/
|
|
141
|
+
declare public /*out*/ readonly taskDefinition: pulumi.Output<outputs.EnvironmentTaskDefinition>;
|
|
99
142
|
/**
|
|
100
143
|
* Last update timestamp
|
|
101
144
|
*/
|
|
102
145
|
declare public /*out*/ readonly updatedAt: pulumi.Output<string>;
|
|
146
|
+
/**
|
|
147
|
+
* Persistent storage volumes
|
|
148
|
+
*/
|
|
149
|
+
declare public /*out*/ readonly volumes: pulumi.Output<outputs.EnvironmentVolume[]>;
|
|
150
|
+
/**
|
|
151
|
+
* VPC configuration
|
|
152
|
+
*/
|
|
153
|
+
declare public /*out*/ readonly vpc: pulumi.Output<outputs.EnvironmentVpc>;
|
|
103
154
|
|
|
104
155
|
/**
|
|
105
156
|
* Create a Environment resource with the given unique name, arguments, and options.
|
|
@@ -114,28 +165,38 @@ export class Environment extends pulumi.CustomResource {
|
|
|
114
165
|
opts = opts || {};
|
|
115
166
|
if (opts.id) {
|
|
116
167
|
const state = argsOrState as EnvironmentState | undefined;
|
|
168
|
+
resourceInputs["albRouting"] = state?.albRouting;
|
|
117
169
|
resourceInputs["application"] = state?.application;
|
|
118
170
|
resourceInputs["cloneConfigurationFrom"] = state?.cloneConfigurationFrom;
|
|
119
171
|
resourceInputs["composeDefinition"] = state?.composeDefinition;
|
|
172
|
+
resourceInputs["containerNames"] = state?.containerNames;
|
|
120
173
|
resourceInputs["createdAt"] = state?.createdAt;
|
|
174
|
+
resourceInputs["crons"] = state?.crons;
|
|
175
|
+
resourceInputs["deploymentFailureReason"] = state?.deploymentFailureReason;
|
|
176
|
+
resourceInputs["deploymentFailureType"] = state?.deploymentFailureType;
|
|
121
177
|
resourceInputs["deploymentStatus"] = state?.deploymentStatus;
|
|
122
178
|
resourceInputs["desiredCount"] = state?.desiredCount;
|
|
123
179
|
resourceInputs["envName"] = state?.envName;
|
|
124
|
-
resourceInputs["
|
|
180
|
+
resourceInputs["environments"] = state?.environments;
|
|
125
181
|
resourceInputs["imageSuffix"] = state?.imageSuffix;
|
|
182
|
+
resourceInputs["loadBalancer"] = state?.loadBalancer;
|
|
126
183
|
resourceInputs["maxCapacity"] = state?.maxCapacity;
|
|
127
184
|
resourceInputs["mergeEnvironment"] = state?.mergeEnvironment;
|
|
128
185
|
resourceInputs["minCapacity"] = state?.minCapacity;
|
|
129
|
-
resourceInputs["
|
|
186
|
+
resourceInputs["organisation"] = state?.organisation;
|
|
187
|
+
resourceInputs["publicIpAddress"] = state?.publicIpAddress;
|
|
130
188
|
resourceInputs["runningCount"] = state?.runningCount;
|
|
189
|
+
resourceInputs["securityGroup"] = state?.securityGroup;
|
|
190
|
+
resourceInputs["service"] = state?.service;
|
|
131
191
|
resourceInputs["spotConfiguration"] = state?.spotConfiguration;
|
|
132
192
|
resourceInputs["status"] = state?.status;
|
|
193
|
+
resourceInputs["subnet"] = state?.subnet;
|
|
194
|
+
resourceInputs["taskDefinition"] = state?.taskDefinition;
|
|
133
195
|
resourceInputs["updatedAt"] = state?.updatedAt;
|
|
196
|
+
resourceInputs["volumes"] = state?.volumes;
|
|
197
|
+
resourceInputs["vpc"] = state?.vpc;
|
|
134
198
|
} else {
|
|
135
199
|
const args = argsOrState as EnvironmentArgs | undefined;
|
|
136
|
-
if (args?.application === undefined && !opts.urn) {
|
|
137
|
-
throw new Error("Missing required property 'application'");
|
|
138
|
-
}
|
|
139
200
|
if (args?.envName === undefined && !opts.urn) {
|
|
140
201
|
throw new Error("Missing required property 'envName'");
|
|
141
202
|
}
|
|
@@ -143,19 +204,32 @@ export class Environment extends pulumi.CustomResource {
|
|
|
143
204
|
resourceInputs["cloneConfigurationFrom"] = args?.cloneConfigurationFrom;
|
|
144
205
|
resourceInputs["composeDefinition"] = args?.composeDefinition;
|
|
145
206
|
resourceInputs["envName"] = args?.envName;
|
|
146
|
-
resourceInputs["
|
|
207
|
+
resourceInputs["environments"] = args?.environments;
|
|
147
208
|
resourceInputs["imageSuffix"] = args?.imageSuffix;
|
|
148
209
|
resourceInputs["maxCapacity"] = args?.maxCapacity;
|
|
149
210
|
resourceInputs["mergeEnvironment"] = args?.mergeEnvironment;
|
|
150
211
|
resourceInputs["minCapacity"] = args?.minCapacity;
|
|
151
|
-
resourceInputs["
|
|
212
|
+
resourceInputs["organisation"] = args?.organisation;
|
|
152
213
|
resourceInputs["spotConfiguration"] = args?.spotConfiguration;
|
|
214
|
+
resourceInputs["albRouting"] = undefined /*out*/;
|
|
215
|
+
resourceInputs["containerNames"] = undefined /*out*/;
|
|
153
216
|
resourceInputs["createdAt"] = undefined /*out*/;
|
|
217
|
+
resourceInputs["crons"] = undefined /*out*/;
|
|
218
|
+
resourceInputs["deploymentFailureReason"] = undefined /*out*/;
|
|
219
|
+
resourceInputs["deploymentFailureType"] = undefined /*out*/;
|
|
154
220
|
resourceInputs["deploymentStatus"] = undefined /*out*/;
|
|
155
221
|
resourceInputs["desiredCount"] = undefined /*out*/;
|
|
222
|
+
resourceInputs["loadBalancer"] = undefined /*out*/;
|
|
223
|
+
resourceInputs["publicIpAddress"] = undefined /*out*/;
|
|
156
224
|
resourceInputs["runningCount"] = undefined /*out*/;
|
|
225
|
+
resourceInputs["securityGroup"] = undefined /*out*/;
|
|
226
|
+
resourceInputs["service"] = undefined /*out*/;
|
|
157
227
|
resourceInputs["status"] = undefined /*out*/;
|
|
228
|
+
resourceInputs["subnet"] = undefined /*out*/;
|
|
229
|
+
resourceInputs["taskDefinition"] = undefined /*out*/;
|
|
158
230
|
resourceInputs["updatedAt"] = undefined /*out*/;
|
|
231
|
+
resourceInputs["volumes"] = undefined /*out*/;
|
|
232
|
+
resourceInputs["vpc"] = undefined /*out*/;
|
|
159
233
|
}
|
|
160
234
|
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
161
235
|
super(Environment.__pulumiType, name, resourceInputs, opts);
|
|
@@ -167,21 +241,38 @@ export class Environment extends pulumi.CustomResource {
|
|
|
167
241
|
*/
|
|
168
242
|
export interface EnvironmentState {
|
|
169
243
|
/**
|
|
170
|
-
*
|
|
244
|
+
* ALB routing configuration
|
|
245
|
+
*/
|
|
246
|
+
albRouting?: pulumi.Input<inputs.EnvironmentAlbRouting>;
|
|
247
|
+
/**
|
|
248
|
+
* The application ID
|
|
171
249
|
*/
|
|
172
250
|
application?: pulumi.Input<string>;
|
|
173
251
|
/**
|
|
174
252
|
* Clone configuration from an existing environment
|
|
175
253
|
*/
|
|
176
254
|
cloneConfigurationFrom?: pulumi.Input<string>;
|
|
255
|
+
composeDefinition?: pulumi.Input<inputs.EnvironmentComposeDefinition>;
|
|
177
256
|
/**
|
|
178
|
-
*
|
|
257
|
+
* Container name list
|
|
179
258
|
*/
|
|
180
|
-
|
|
259
|
+
containerNames?: pulumi.Input<pulumi.Input<string>[]>;
|
|
181
260
|
/**
|
|
182
261
|
* Creation timestamp
|
|
183
262
|
*/
|
|
184
263
|
createdAt?: pulumi.Input<string>;
|
|
264
|
+
/**
|
|
265
|
+
* Scheduled cron jobs
|
|
266
|
+
*/
|
|
267
|
+
crons?: pulumi.Input<pulumi.Input<inputs.EnvironmentCron>[]>;
|
|
268
|
+
/**
|
|
269
|
+
* Reason for deployment failure
|
|
270
|
+
*/
|
|
271
|
+
deploymentFailureReason?: pulumi.Input<string>;
|
|
272
|
+
/**
|
|
273
|
+
* Type of deployment failure
|
|
274
|
+
*/
|
|
275
|
+
deploymentFailureType?: pulumi.Input<string>;
|
|
185
276
|
/**
|
|
186
277
|
* Current deployment status
|
|
187
278
|
*/
|
|
@@ -191,49 +282,81 @@ export interface EnvironmentState {
|
|
|
191
282
|
*/
|
|
192
283
|
desiredCount?: pulumi.Input<number>;
|
|
193
284
|
/**
|
|
194
|
-
* Environment name (e.g., staging, development)
|
|
285
|
+
* Environment name (e.g., 'staging', 'development')
|
|
195
286
|
*/
|
|
196
287
|
envName?: pulumi.Input<string>;
|
|
197
288
|
/**
|
|
198
|
-
* Environment variables
|
|
289
|
+
* Environment variables to inject
|
|
199
290
|
*/
|
|
200
|
-
|
|
291
|
+
environments?: pulumi.Input<pulumi.Input<inputs.EnvironmentEnvironment>[]>;
|
|
201
292
|
/**
|
|
202
293
|
* Optional image tag suffix for cloning
|
|
203
294
|
*/
|
|
204
295
|
imageSuffix?: pulumi.Input<string>;
|
|
205
296
|
/**
|
|
206
|
-
*
|
|
297
|
+
* Load balancer configuration
|
|
298
|
+
*/
|
|
299
|
+
loadBalancer?: pulumi.Input<inputs.EnvironmentLoadBalancer>;
|
|
300
|
+
/**
|
|
301
|
+
* Maximum number of instances
|
|
207
302
|
*/
|
|
208
303
|
maxCapacity?: pulumi.Input<number>;
|
|
209
304
|
/**
|
|
210
|
-
* Whether to merge environment variables with cloned ones
|
|
305
|
+
* Whether to merge environment variables with cloned ones (true) or replace them (false). Default: false
|
|
211
306
|
*/
|
|
212
307
|
mergeEnvironment?: pulumi.Input<boolean>;
|
|
213
308
|
/**
|
|
214
|
-
* Minimum number of instances
|
|
309
|
+
* Minimum number of instances
|
|
215
310
|
*/
|
|
216
311
|
minCapacity?: pulumi.Input<number>;
|
|
217
312
|
/**
|
|
218
|
-
*
|
|
313
|
+
* The organisation ID
|
|
314
|
+
*/
|
|
315
|
+
organisation?: pulumi.Input<string>;
|
|
316
|
+
/**
|
|
317
|
+
* Public IP address for SSH access
|
|
219
318
|
*/
|
|
220
|
-
|
|
319
|
+
publicIpAddress?: pulumi.Input<string>;
|
|
221
320
|
/**
|
|
222
321
|
* Number of running tasks
|
|
223
322
|
*/
|
|
224
323
|
runningCount?: pulumi.Input<number>;
|
|
225
324
|
/**
|
|
226
|
-
*
|
|
325
|
+
* Security group configuration
|
|
326
|
+
*/
|
|
327
|
+
securityGroup?: pulumi.Input<inputs.EnvironmentSecurityGroup>;
|
|
328
|
+
/**
|
|
329
|
+
* ECS service details
|
|
227
330
|
*/
|
|
228
|
-
|
|
331
|
+
service?: pulumi.Input<inputs.EnvironmentService>;
|
|
332
|
+
/**
|
|
333
|
+
* Spot instance strategy configuration for controlling cost vs reliability. Spot instances provide significant cost savings (~70%) but may be interrupted by AWS. Available for non-production environments.
|
|
334
|
+
*/
|
|
335
|
+
spotConfiguration?: pulumi.Input<inputs.EnvironmentSpotConfiguration>;
|
|
229
336
|
/**
|
|
230
337
|
* Environment status
|
|
231
338
|
*/
|
|
232
339
|
status?: pulumi.Input<string>;
|
|
340
|
+
/**
|
|
341
|
+
* Subnet configuration
|
|
342
|
+
*/
|
|
343
|
+
subnet?: pulumi.Input<inputs.EnvironmentSubnet>;
|
|
344
|
+
/**
|
|
345
|
+
* ECS task definition details
|
|
346
|
+
*/
|
|
347
|
+
taskDefinition?: pulumi.Input<inputs.EnvironmentTaskDefinition>;
|
|
233
348
|
/**
|
|
234
349
|
* Last update timestamp
|
|
235
350
|
*/
|
|
236
351
|
updatedAt?: pulumi.Input<string>;
|
|
352
|
+
/**
|
|
353
|
+
* Persistent storage volumes
|
|
354
|
+
*/
|
|
355
|
+
volumes?: pulumi.Input<pulumi.Input<inputs.EnvironmentVolume>[]>;
|
|
356
|
+
/**
|
|
357
|
+
* VPC configuration
|
|
358
|
+
*/
|
|
359
|
+
vpc?: pulumi.Input<inputs.EnvironmentVpc>;
|
|
237
360
|
}
|
|
238
361
|
|
|
239
362
|
/**
|
|
@@ -241,47 +364,44 @@ export interface EnvironmentState {
|
|
|
241
364
|
*/
|
|
242
365
|
export interface EnvironmentArgs {
|
|
243
366
|
/**
|
|
244
|
-
*
|
|
367
|
+
* The application ID
|
|
245
368
|
*/
|
|
246
|
-
application
|
|
369
|
+
application?: pulumi.Input<string>;
|
|
247
370
|
/**
|
|
248
371
|
* Clone configuration from an existing environment
|
|
249
372
|
*/
|
|
250
373
|
cloneConfigurationFrom?: pulumi.Input<string>;
|
|
374
|
+
composeDefinition?: pulumi.Input<inputs.EnvironmentComposeDefinition>;
|
|
251
375
|
/**
|
|
252
|
-
*
|
|
253
|
-
*/
|
|
254
|
-
composeDefinition?: pulumi.Input<string>;
|
|
255
|
-
/**
|
|
256
|
-
* Environment name (e.g., staging, development)
|
|
376
|
+
* Environment name (e.g., 'staging', 'development')
|
|
257
377
|
*/
|
|
258
378
|
envName: pulumi.Input<string>;
|
|
259
379
|
/**
|
|
260
|
-
* Environment variables
|
|
380
|
+
* Environment variables to inject
|
|
261
381
|
*/
|
|
262
|
-
|
|
382
|
+
environments?: pulumi.Input<pulumi.Input<inputs.EnvironmentEnvironment>[]>;
|
|
263
383
|
/**
|
|
264
384
|
* Optional image tag suffix for cloning
|
|
265
385
|
*/
|
|
266
386
|
imageSuffix?: pulumi.Input<string>;
|
|
267
387
|
/**
|
|
268
|
-
* Maximum number of instances
|
|
388
|
+
* Maximum number of instances
|
|
269
389
|
*/
|
|
270
390
|
maxCapacity?: pulumi.Input<number>;
|
|
271
391
|
/**
|
|
272
|
-
* Whether to merge environment variables with cloned ones
|
|
392
|
+
* Whether to merge environment variables with cloned ones (true) or replace them (false). Default: false
|
|
273
393
|
*/
|
|
274
394
|
mergeEnvironment?: pulumi.Input<boolean>;
|
|
275
395
|
/**
|
|
276
|
-
* Minimum number of instances
|
|
396
|
+
* Minimum number of instances
|
|
277
397
|
*/
|
|
278
398
|
minCapacity?: pulumi.Input<number>;
|
|
279
399
|
/**
|
|
280
|
-
*
|
|
400
|
+
* The organisation ID
|
|
281
401
|
*/
|
|
282
|
-
|
|
402
|
+
organisation?: pulumi.Input<string>;
|
|
283
403
|
/**
|
|
284
|
-
* Spot configuration
|
|
404
|
+
* Spot instance strategy configuration for controlling cost vs reliability. Spot instances provide significant cost savings (~70%) but may be interrupted by AWS. Available for non-production environments.
|
|
285
405
|
*/
|
|
286
|
-
spotConfiguration?: pulumi.Input<
|
|
406
|
+
spotConfiguration?: pulumi.Input<inputs.EnvironmentSpotConfiguration>;
|
|
287
407
|
}
|
package/index.ts
CHANGED
|
@@ -5,6 +5,11 @@ import * as pulumi from "@pulumi/pulumi";
|
|
|
5
5
|
import * as utilities from "./utilities";
|
|
6
6
|
|
|
7
7
|
// Export members:
|
|
8
|
+
export { AiAgentArgs, AiAgentState } from "./aiAgent";
|
|
9
|
+
export type AiAgent = import("./aiAgent").AiAgent;
|
|
10
|
+
export const AiAgent: typeof import("./aiAgent").AiAgent = null as any;
|
|
11
|
+
utilities.lazyLoad(exports, ["AiAgent"], () => require("./aiAgent"));
|
|
12
|
+
|
|
8
13
|
export { AiGovernanceArgs, AiGovernanceState } from "./aiGovernance";
|
|
9
14
|
export type AiGovernance = import("./aiGovernance").AiGovernance;
|
|
10
15
|
export const AiGovernance: typeof import("./aiGovernance").AiGovernance = null as any;
|
|
@@ -133,6 +138,11 @@ export type RuleServeStatic = import("./ruleServeStatic").RuleServeStatic;
|
|
|
133
138
|
export const RuleServeStatic: typeof import("./ruleServeStatic").RuleServeStatic = null as any;
|
|
134
139
|
utilities.lazyLoad(exports, ["RuleServeStatic"], () => require("./ruleServeStatic"));
|
|
135
140
|
|
|
141
|
+
export { SlackBotArgs, SlackBotState } from "./slackBot";
|
|
142
|
+
export type SlackBot = import("./slackBot").SlackBot;
|
|
143
|
+
export const SlackBot: typeof import("./slackBot").SlackBot = null as any;
|
|
144
|
+
utilities.lazyLoad(exports, ["SlackBot"], () => require("./slackBot"));
|
|
145
|
+
|
|
136
146
|
export { VolumeArgs, VolumeState } from "./volume";
|
|
137
147
|
export type Volume = import("./volume").Volume;
|
|
138
148
|
export const Volume: typeof import("./volume").Volume = null as any;
|
|
@@ -152,6 +162,8 @@ const _module = {
|
|
|
152
162
|
version: utilities.getVersion(),
|
|
153
163
|
construct: (name: string, type: string, urn: string): pulumi.Resource => {
|
|
154
164
|
switch (type) {
|
|
165
|
+
case "quant:index:AiAgent":
|
|
166
|
+
return new AiAgent(name, <any>undefined, { urn })
|
|
155
167
|
case "quant:index:AiGovernance":
|
|
156
168
|
return new AiGovernance(name, <any>undefined, { urn })
|
|
157
169
|
case "quant:index:AiSkill":
|
|
@@ -198,6 +210,8 @@ const _module = {
|
|
|
198
210
|
return new RuleRedirect(name, <any>undefined, { urn })
|
|
199
211
|
case "quant:index:RuleServeStatic":
|
|
200
212
|
return new RuleServeStatic(name, <any>undefined, { urn })
|
|
213
|
+
case "quant:index:SlackBot":
|
|
214
|
+
return new SlackBot(name, <any>undefined, { urn })
|
|
201
215
|
case "quant:index:Volume":
|
|
202
216
|
return new Volume(name, <any>undefined, { urn })
|
|
203
217
|
default:
|