@studion/infra-code-blocks 0.6.12 → 0.8.0-next.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.
Files changed (105) hide show
  1. package/README.md +81 -2
  2. package/dist/components/acm-certificate.d.ts +1 -0
  3. package/dist/components/acm-certificate.d.ts.map +1 -0
  4. package/dist/components/database-replica.d.ts +2 -1
  5. package/dist/components/database-replica.d.ts.map +1 -0
  6. package/dist/components/database-replica.js +1 -1
  7. package/dist/components/database.d.ts +2 -1
  8. package/dist/components/database.d.ts.map +1 -0
  9. package/dist/components/database.js +1 -1
  10. package/dist/components/ec2-ssm-connect.d.ts +1 -0
  11. package/dist/components/ec2-ssm-connect.d.ts.map +1 -0
  12. package/dist/components/ecs-service.d.ts +16 -2
  13. package/dist/components/ecs-service.d.ts.map +1 -0
  14. package/dist/components/ecs-service.js +54 -19
  15. package/dist/components/mongo.d.ts +5 -2
  16. package/dist/components/mongo.d.ts.map +1 -0
  17. package/dist/components/mongo.js +8 -2
  18. package/dist/components/nuxt-ssr.d.ts +1 -0
  19. package/dist/components/nuxt-ssr.d.ts.map +1 -0
  20. package/dist/components/password.d.ts +1 -0
  21. package/dist/components/password.d.ts.map +1 -0
  22. package/dist/components/project.d.ts +1 -0
  23. package/dist/components/project.d.ts.map +1 -0
  24. package/dist/components/redis.d.ts +1 -0
  25. package/dist/components/redis.d.ts.map +1 -0
  26. package/dist/components/static-site.d.ts +1 -0
  27. package/dist/components/static-site.d.ts.map +1 -0
  28. package/dist/components/web-server.d.ts +2 -1
  29. package/dist/components/web-server.d.ts.map +1 -0
  30. package/dist/components/web-server.js +2 -1
  31. package/dist/constants.d.ts +1 -0
  32. package/dist/constants.d.ts.map +1 -0
  33. package/dist/constants.js +4 -4
  34. package/dist/index.d.ts +2 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +2 -0
  37. package/dist/types/pulumi.d.ts +5 -0
  38. package/dist/types/pulumi.d.ts.map +1 -0
  39. package/dist/types/pulumi.js +2 -0
  40. package/dist/types/size.d.ts +1 -0
  41. package/dist/types/size.d.ts.map +1 -0
  42. package/dist/v2/components/ecs-service/index.d.ts +156 -0
  43. package/dist/v2/components/ecs-service/index.d.ts.map +1 -0
  44. package/dist/v2/components/ecs-service/index.js +362 -0
  45. package/dist/v2/components/ecs-service/policies.d.ts +3 -0
  46. package/dist/v2/components/ecs-service/policies.d.ts.map +1 -0
  47. package/dist/v2/components/ecs-service/policies.js +16 -0
  48. package/dist/v2/components/grafana/dashboards/index.d.ts +3 -0
  49. package/dist/v2/components/grafana/dashboards/index.d.ts.map +1 -0
  50. package/dist/v2/components/grafana/dashboards/index.js +6 -0
  51. package/dist/v2/components/grafana/dashboards/panels.d.ts +6 -0
  52. package/dist/v2/components/grafana/dashboards/panels.d.ts.map +1 -0
  53. package/dist/v2/components/grafana/dashboards/panels.js +91 -0
  54. package/dist/v2/components/grafana/dashboards/types.d.ts +66 -0
  55. package/dist/v2/components/grafana/dashboards/types.d.ts.map +1 -0
  56. package/dist/v2/components/grafana/dashboards/types.js +2 -0
  57. package/dist/v2/components/grafana/dashboards/web-server-slo.d.ts +17 -0
  58. package/dist/v2/components/grafana/dashboards/web-server-slo.d.ts.map +1 -0
  59. package/dist/v2/components/grafana/dashboards/web-server-slo.js +98 -0
  60. package/dist/v2/components/grafana/index.d.ts +2 -0
  61. package/dist/v2/components/grafana/index.d.ts.map +1 -0
  62. package/dist/v2/components/grafana/index.js +4 -0
  63. package/dist/v2/components/prometheus/index.d.ts +2 -0
  64. package/dist/v2/components/prometheus/index.d.ts.map +1 -0
  65. package/dist/v2/components/prometheus/index.js +4 -0
  66. package/dist/v2/components/prometheus/queries.d.ts +10 -0
  67. package/dist/v2/components/prometheus/queries.d.ts.map +1 -0
  68. package/dist/v2/components/prometheus/queries.js +61 -0
  69. package/dist/v2/components/prometheus/queries.test.d.ts +2 -0
  70. package/dist/v2/components/prometheus/queries.test.d.ts.map +1 -0
  71. package/dist/v2/components/prometheus/queries.test.js +52 -0
  72. package/dist/v2/components/web-server/builder.d.ts +34 -0
  73. package/dist/v2/components/web-server/builder.d.ts.map +1 -0
  74. package/dist/v2/components/web-server/builder.js +72 -0
  75. package/dist/v2/components/web-server/index.d.ts +58 -0
  76. package/dist/v2/components/web-server/index.d.ts.map +1 -0
  77. package/dist/v2/components/web-server/index.js +169 -0
  78. package/dist/v2/components/web-server/load-balancer.d.ts +25 -0
  79. package/dist/v2/components/web-server/load-balancer.d.ts.map +1 -0
  80. package/dist/v2/components/web-server/load-balancer.js +106 -0
  81. package/dist/v2/index.d.ts +13 -0
  82. package/dist/v2/index.d.ts.map +1 -0
  83. package/dist/v2/index.js +16 -0
  84. package/dist/v2/otel/batch-processor.d.ts +14 -0
  85. package/dist/v2/otel/batch-processor.d.ts.map +1 -0
  86. package/dist/v2/otel/batch-processor.js +9 -0
  87. package/dist/v2/otel/builder.d.ts +27 -0
  88. package/dist/v2/otel/builder.d.ts.map +1 -0
  89. package/dist/v2/otel/builder.js +110 -0
  90. package/dist/v2/otel/config.d.ts +26 -0
  91. package/dist/v2/otel/config.d.ts.map +1 -0
  92. package/dist/v2/otel/config.js +159 -0
  93. package/dist/v2/otel/index.d.ts +94 -0
  94. package/dist/v2/otel/index.d.ts.map +1 -0
  95. package/dist/v2/otel/index.js +82 -0
  96. package/dist/v2/otel/memory-limiter-processor.d.ts +13 -0
  97. package/dist/v2/otel/memory-limiter-processor.d.ts.map +1 -0
  98. package/dist/v2/otel/memory-limiter-processor.js +8 -0
  99. package/dist/v2/otel/otlp-receiver.d.ts +19 -0
  100. package/dist/v2/otel/otlp-receiver.d.ts.map +1 -0
  101. package/dist/v2/otel/otlp-receiver.js +11 -0
  102. package/dist/v2/otel/prometheus-remote-write-exporter.d.ts +11 -0
  103. package/dist/v2/otel/prometheus-remote-write-exporter.d.ts.map +1 -0
  104. package/dist/v2/otel/prometheus-remote-write-exporter.js +2 -0
  105. package/package.json +37 -13
package/README.md CHANGED
@@ -171,6 +171,14 @@ export type WebServerServiceOptions = {
171
171
  }>;
172
172
  size?: pulumi.Input<Size>;
173
173
  healthCheckPath?: pulumi.Input<string>;
174
+ persistentStorageConfig?: pulumi.Input<{
175
+ volumes: { name: string }[];
176
+ mountPoints: {
177
+ sourceVolume: string;
178
+ containerPath: string;
179
+ readOnly?: boolean;
180
+ }[];
181
+ }>;
174
182
  taskExecutionRoleInlinePolicies?: pulumi.Input<
175
183
  pulumi.Input<RoleInlinePolicy>[]
176
184
  >;
@@ -219,6 +227,14 @@ type MongoServiceOptions = {
219
227
  password?: pulumi.Input<string>;
220
228
  port?: pulumi.Input<number>;
221
229
  size?: pulumi.Input<Size>;
230
+ persistentStorageConfig?: pulumi.Input<{
231
+ volumes: { name: string }[];
232
+ mountPoints: {
233
+ sourceVolume: string;
234
+ containerPath: string;
235
+ readOnly?: boolean;
236
+ }[];
237
+ }>;
222
238
  tags?: pulumi.Input<{
223
239
  [key: string]: pulumi.Input<string>;
224
240
  }>;
@@ -233,7 +249,14 @@ type EcsServiceOptions = {
233
249
  port: pulumi.Input<number>;
234
250
  enableServiceAutoDiscovery: pulumi.Input<boolean>;
235
251
  lbTargetGroupArn?: aws.lb.TargetGroup['arn'];
236
- persistentStorageVolumePath?: pulumi.Input<string>;
252
+ persistentStorageConfig?: pulumi.Input<{
253
+ volumes: { name: string }[];
254
+ mountPoints: {
255
+ sourceVolume: string;
256
+ containerPath: string;
257
+ readOnly?: boolean;
258
+ }[];
259
+ }>;
237
260
  securityGroup?: aws.ec2.SecurityGroup;
238
261
  assignPublicIp?: pulumi.Input<boolean>;
239
262
  dockerCommand?: pulumi.Input<string[]>;
@@ -339,6 +362,37 @@ const project = new studion.Project('demo-project', {
339
362
  });
340
363
  ```
341
364
 
365
+ ### Persistent Storage Configuration
366
+
367
+ Services that require persistent storage (e.g. `ECS`, `Mongo`) can be configured with multiple EFS volumes and mount points.
368
+ Currently, only one access point is configured, with root directory set to `/data`.
369
+ The configuration consists of two main parts:
370
+
371
+ 1. `volumes`: Define the EFS volumes to be created
372
+ 2. `mountPoints`: Specify where these volumes should be mounted in the container
373
+
374
+ Example configuration:
375
+
376
+ ```ts
377
+ persistentStorageConfig: {
378
+ volumes: [
379
+ { name: 'data-volume' },
380
+ { name: 'config-volume' }
381
+ ],
382
+ mountPoints: [
383
+ {
384
+ sourceVolume: 'data-volume',
385
+ containerPath: '/data',
386
+ },
387
+ {
388
+ sourceVolume: 'config-volume',
389
+ containerPath: '/config',
390
+ readOnly: true
391
+ }
392
+ ]
393
+ }
394
+ ```
395
+
342
396
  ### Database
343
397
 
344
398
  AWS RDS Postgres instance.
@@ -559,6 +613,14 @@ export type WebServerArgs = {
559
613
  environment?: aws.ecs.KeyValuePair[];
560
614
  secrets?: aws.ecs.Secret[];
561
615
  healthCheckPath?: pulumi.Input<string>;
616
+ persistentStorageConfig?: pulumi.Input<{
617
+ volumes: { name: string }[];
618
+ mountPoints: {
619
+ sourceVolume: string;
620
+ containerPath: string;
621
+ readOnly?: boolean;
622
+ }[];
623
+ }>;
562
624
  taskExecutionRoleInlinePolicies?: pulumi.Input<
563
625
  pulumi.Input<RoleInlinePolicy>[]
564
626
  >;
@@ -655,6 +717,14 @@ export type MongoArgs = {
655
717
  password?: pulumi.Input<string>;
656
718
  port?: pulumi.Input<number>;
657
719
  size?: pulumi.Input<Size>;
720
+ persistentStorageConfig?: pulumi.Input<{
721
+ volumes: { name: string }[];
722
+ mountPoints: {
723
+ sourceVolume: string;
724
+ containerPath: string;
725
+ readOnly?: boolean;
726
+ }[];
727
+ }>;
658
728
  tags?: pulumi.Input<{
659
729
  [key: string]: pulumi.Input<string>;
660
730
  }>;
@@ -665,6 +735,8 @@ If the password is not specified it will be autogenerated.
665
735
  The Mongo password is stored as a secret inside AWS Secret Manager.
666
736
  The secret will be available on the `Mongo` resource as `password.secret`.
667
737
 
738
+ The Mongo component comes with a default persistent storage configuration that mounts an EFS volume `mongo` to `/data/db`. You can override this by providing your own `persistentStorageConfig`.
739
+
668
740
  ### Ecs Service
669
741
 
670
742
  AWS ECS Fargate.
@@ -708,7 +780,14 @@ export type EcsServiceArgs = {
708
780
  environment?: aws.ecs.KeyValuePair[];
709
781
  secrets?: aws.ecs.Secret[];
710
782
  enableServiceAutoDiscovery: pulumi.Input<boolean>;
711
- persistentStorageVolumePath?: pulumi.Input<string>;
783
+ persistentStorageConfig?: pulumi.Input<{
784
+ volumes: { name: string }[];
785
+ mountPoints: {
786
+ sourceVolume: string;
787
+ containerPath: string;
788
+ readOnly?: boolean;
789
+ }[];
790
+ }>;
712
791
  dockerCommand?: pulumi.Input<string[]>;
713
792
  lbTargetGroupArn?: aws.lb.TargetGroup['arn'];
714
793
  securityGroup?: aws.ec2.SecurityGroup;
@@ -8,3 +8,4 @@ export declare class AcmCertificate extends pulumi.ComponentResource {
8
8
  certificate: aws.acm.Certificate;
9
9
  constructor(name: string, args: AcmCertificateArgs, opts?: pulumi.ComponentResourceOptions);
10
10
  }
11
+ //# sourceMappingURL=acm-certificate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acm-certificate.d.ts","sourceRoot":"","sources":["../../src/components/acm-certificate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAGnC,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACpC,CAAC;AAEF,qBAAa,cAAe,SAAQ,MAAM,CAAC,iBAAiB;IAC1D,WAAW,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC;gBAG/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,kBAAkB,EACxB,IAAI,GAAE,MAAM,CAAC,wBAA6B;CAsC7C"}
@@ -49,7 +49,7 @@ export type DatabaseReplicaArgs = {
49
49
  */
50
50
  parameterGroupName?: pulumi.Input<string>;
51
51
  /**
52
- * The DB engine version. Defaults to '15.5'.
52
+ * The DB engine version. Defaults to '17.2'.
53
53
  */
54
54
  engineVersion?: pulumi.Input<string>;
55
55
  /**
@@ -66,3 +66,4 @@ export declare class DatabaseReplica extends pulumi.ComponentResource {
66
66
  constructor(name: string, args: DatabaseReplicaArgs, opts?: pulumi.ComponentResourceOptions);
67
67
  private createDatabaseInstance;
68
68
  }
69
+ //# sourceMappingURL=database-replica.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database-replica.d.ts","sourceRoot":"","sources":["../../src/components/database-replica.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAGzC,MAAM,MAAM,mBAAmB,GAAG;IAChC;;OAEG;IACH,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACzC;;;;OAIG;IACH,iBAAiB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC;;OAEG;IACH,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;IAC9B;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzC;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACxC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC3C;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrC;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1C;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KACrC,CAAC,CAAC;CACJ,CAAC;AAYF,qBAAa,eAAgB,SAAQ,MAAM,CAAC,iBAAiB;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;IAC3B,cAAc,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;gBAG5B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,mBAAmB,EACzB,IAAI,GAAE,MAAM,CAAC,wBAA6B;IAa5C,OAAO,CAAC,sBAAsB;CAyC/B"}
@@ -11,7 +11,7 @@ const defaults = {
11
11
  maxAllocatedStorage: 100,
12
12
  instanceClass: 'db.t4g.micro',
13
13
  enableMonitoring: false,
14
- engineVersion: '15.5',
14
+ engineVersion: '17.2',
15
15
  };
16
16
  class DatabaseReplica extends pulumi.ComponentResource {
17
17
  constructor(name, args, opts = {}) {
@@ -69,7 +69,7 @@ export type DatabaseArgs = {
69
69
  */
70
70
  snapshotIdentifier?: pulumi.Input<string>;
71
71
  /**
72
- * The DB engine version. Defaults to '15.5'.
72
+ * The DB engine version. Defaults to '17.2'.
73
73
  */
74
74
  engineVersion?: pulumi.Input<string>;
75
75
  /**
@@ -96,3 +96,4 @@ export declare class Database extends pulumi.ComponentResource {
96
96
  private createEncryptedSnapshotCopy;
97
97
  private createDatabaseInstance;
98
98
  }
99
+ //# sourceMappingURL=database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/components/database.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ const defaults = {
14
14
  instanceClass: 'db.t4g.micro',
15
15
  enableMonitoring: false,
16
16
  allowMajorVersionUpgrade: false,
17
- engineVersion: '15.5',
17
+ engineVersion: '17.2',
18
18
  };
19
19
  class Database extends pulumi.ComponentResource {
20
20
  constructor(name, args, opts = {}) {
@@ -19,3 +19,4 @@ export declare class Ec2SSMConnect extends pulumi.ComponentResource {
19
19
  ec2: aws.ec2.Instance;
20
20
  constructor(name: string, args: Ec2SSMConnectArgs, opts?: pulumi.ComponentResourceOptions);
21
21
  }
22
+ //# sourceMappingURL=ec2-ssm-connect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ec2-ssm-connect.d.ts","sourceRoot":"","sources":["../../src/components/ec2-ssm-connect.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAMnC,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtC;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KACrC,CAAC,CAAC;CACJ,CAAC;AAEF,qBAAa,aAAc,SAAQ,MAAM,CAAC,iBAAiB;IACzD,gBAAgB,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;IACxC,cAAc,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC;IACpC,sBAAsB,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC;IAC5C,sBAAsB,EAAE,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC;IAC5C,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;gBAGpB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,iBAAiB,EACvB,IAAI,GAAE,MAAM,CAAC,wBAA6B;CAqJ7C"}
@@ -13,6 +13,18 @@ export type RoleInlinePolicy = {
13
13
  */
14
14
  policy?: pulumi.Input<string>;
15
15
  };
16
+ export type PersistentStorageMountPoint = {
17
+ sourceVolume: string;
18
+ containerPath: string;
19
+ readOnly?: boolean;
20
+ };
21
+ export type PersistentStorageVolume = {
22
+ name: string;
23
+ };
24
+ export type PersistentStorageConfig = {
25
+ volumes: PersistentStorageVolume[];
26
+ mountPoints: PersistentStorageMountPoint[];
27
+ };
16
28
  export type EcsServiceArgs = {
17
29
  /**
18
30
  * The ECR image used to start a container.
@@ -70,9 +82,10 @@ export type EcsServiceArgs = {
70
82
  */
71
83
  enableServiceAutoDiscovery: pulumi.Input<boolean>;
72
84
  /**
73
- * Location of persistent storage volume.
85
+ * Configuration for multiple EFS volumes and their mount points.
86
+ * Each mount point specifies a container path where the EFS volume will be mounted.
74
87
  */
75
- persistentStorageVolumePath?: pulumi.Input<string>;
88
+ persistentStorageConfig?: pulumi.Input<PersistentStorageConfig>;
76
89
  /**
77
90
  * Alternate docker CMD instruction.
78
91
  */
@@ -127,3 +140,4 @@ export declare class EcsService extends pulumi.ComponentResource {
127
140
  private createEcsService;
128
141
  private enableAutoscaling;
129
142
  }
143
+ //# sourceMappingURL=ecs-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ecs-service.d.ts","sourceRoot":"","sources":["../../src/components/ecs-service.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,18 @@ exports.assumeRolePolicy = {
19
19
  },
20
20
  ],
21
21
  };
22
+ /**
23
+ * Standard directory permissions:
24
+ * - Owner: read, write, execute (7)
25
+ * - Group: read, execute (5)
26
+ * - Others: read, execute (5)
27
+ */
28
+ const STANDARD_DIRECTORY_PERMISSIONS = '0755';
29
+ const FIRST_POSIX_NON_ROOT_USER = {
30
+ userId: 1000,
31
+ groupId: 1000,
32
+ permissions: STANDARD_DIRECTORY_PERMISSIONS
33
+ };
22
34
  const defaults = {
23
35
  desiredCount: 1,
24
36
  size: 'small',
@@ -36,7 +48,8 @@ const defaults = {
36
48
  };
37
49
  class EcsService extends pulumi.ComponentResource {
38
50
  constructor(name, args, opts = {}) {
39
- super('studion:ecs:Service', name, {}, opts);
51
+ const aliases = opts.aliases || [];
52
+ super('studion:ecs:LegacyService', name, {}, Object.assign(Object.assign({}, opts), { aliases: [...aliases, { type: 'studion:ecs:Service' }] }));
40
53
  const argsWithDefaults = Object.assign({}, defaults, args);
41
54
  this.name = name;
42
55
  this.logGroup = this.createLogGroup();
@@ -167,6 +180,22 @@ class EcsService extends pulumi.ComponentResource {
167
180
  }
168
181
  throw Error('Incorrect EcsService size argument');
169
182
  });
183
+ const fileSystemId = this.createPersistentStorage(argsWithDefaults).id;
184
+ const accessPoint = new aws.efs.AccessPoint(`${this.name}-efs-ap`, {
185
+ fileSystemId,
186
+ posixUser: {
187
+ uid: FIRST_POSIX_NON_ROOT_USER.userId,
188
+ gid: FIRST_POSIX_NON_ROOT_USER.groupId,
189
+ },
190
+ rootDirectory: {
191
+ path: '/data',
192
+ creationInfo: {
193
+ ownerUid: FIRST_POSIX_NON_ROOT_USER.userId,
194
+ ownerGid: FIRST_POSIX_NON_ROOT_USER.groupId,
195
+ permissions: FIRST_POSIX_NON_ROOT_USER.permissions,
196
+ },
197
+ },
198
+ });
170
199
  const taskDefinition = new aws.ecs.TaskDefinition(`${this.name}-task-definition`, Object.assign(Object.assign({ family: `${this.name}-task-definition-${stack}`, networkMode: 'awsvpc', executionRoleArn: taskExecutionRole.arn, taskRoleArn: taskRole.arn, cpu: parsedSize.cpu, memory: parsedSize.memory, requiresCompatibilities: ['FARGATE'], containerDefinitions: pulumi
171
200
  .all([
172
201
  this.name,
@@ -174,25 +203,27 @@ class EcsService extends pulumi.ComponentResource {
174
203
  argsWithDefaults.port,
175
204
  argsWithDefaults.environment,
176
205
  argsWithDefaults.secrets,
177
- argsWithDefaults.persistentStorageVolumePath,
206
+ argsWithDefaults.persistentStorageConfig,
178
207
  argsWithDefaults.dockerCommand,
179
208
  this.logGroup.name,
180
209
  exports.awsRegion,
181
210
  ])
182
- .apply(([containerName, image, port, environment, secrets, persistentStorageVolumePath, command, logGroup, region,]) => {
211
+ .apply(([containerName, image, port, environment, secrets, persistentStorageConfig, command, logGroup, region,]) => {
183
212
  return JSON.stringify([
184
213
  Object.assign(Object.assign({ readonlyRootFilesystem: false, name: containerName, image, essential: true, portMappings: [
185
214
  {
186
215
  containerPort: port,
187
216
  protocol: 'tcp',
188
217
  },
189
- ] }, (persistentStorageVolumePath && {
190
- mountPoints: [
191
- {
192
- containerPath: persistentStorageVolumePath,
193
- sourceVolume: `${this.name}-volume`,
194
- },
195
- ],
218
+ ] }, (persistentStorageConfig && {
219
+ mountPoints: persistentStorageConfig.mountPoints.map(mountPoint => {
220
+ var _a;
221
+ return ({
222
+ containerPath: mountPoint.containerPath,
223
+ sourceVolume: mountPoint.sourceVolume,
224
+ readOnly: (_a = mountPoint.readOnly) !== null && _a !== void 0 ? _a : false,
225
+ });
226
+ }),
196
227
  })), { logConfiguration: {
197
228
  logDriver: 'awslogs',
198
229
  options: {
@@ -204,16 +235,20 @@ class EcsService extends pulumi.ComponentResource {
204
235
  environment,
205
236
  secrets }),
206
237
  ]);
207
- }) }, (argsWithDefaults.persistentStorageVolumePath && {
208
- volumes: [
209
- {
210
- name: `${this.name}-volume`,
211
- efsVolumeConfiguration: {
212
- fileSystemId: this.createPersistentStorage(argsWithDefaults).id,
213
- transitEncryption: 'ENABLED',
238
+ }) }, (argsWithDefaults.persistentStorageConfig && {
239
+ volumes: argsWithDefaults.persistentStorageConfig
240
+ .volumes
241
+ .map(volume => ({
242
+ name: volume.name,
243
+ efsVolumeConfiguration: {
244
+ fileSystemId,
245
+ transitEncryption: 'ENABLED',
246
+ authorizationConfig: {
247
+ accessPointId: accessPoint.id,
248
+ iam: 'ENABLED',
214
249
  },
215
- },
216
- ],
250
+ }
251
+ })),
217
252
  })), { tags: Object.assign(Object.assign({}, constants_1.commonTags), argsWithDefaults.tags) }), { parent: this });
218
253
  return taskDefinition;
219
254
  }
@@ -21,9 +21,11 @@ export type MongoArgs = Pick<EcsServiceArgs, 'size' | 'clusterId' | 'clusterName
21
21
  */
22
22
  port?: pulumi.Input<number>;
23
23
  /**
24
- * Persistent storage volume path. Defaults to '/data/db'.
24
+ * Configuration for persistent storage using EFS volumes.
25
+ * By default, creates a volume named 'mongo' mounted at '/data/db'.
26
+ * You can override this by providing your own volume and mount point configuration.
25
27
  */
26
- persistentStorageVolumePath?: pulumi.Input<string>;
28
+ persistentStorageConfig?: EcsServiceArgs['persistentStorageConfig'];
27
29
  };
28
30
  export declare class Mongo extends pulumi.ComponentResource {
29
31
  readonly name: string;
@@ -34,3 +36,4 @@ export declare class Mongo extends pulumi.ComponentResource {
34
36
  readonly password: Password;
35
37
  constructor(name: string, args: MongoArgs, opts?: pulumi.ComponentResourceOptions);
36
38
  }
39
+ //# sourceMappingURL=mongo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo.d.ts","sourceRoot":"","sources":["../../src/components/mongo.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,MAAM,SAAS,GAAG,IAAI,CAC1B,cAAc,EACd,MAAM,GAAG,WAAW,GAAG,aAAa,GAAG,OAAO,GAAG,cAAc,GAAG,MAAM,CACzE,GAAG;IACF,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvD;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChC;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,cAAc,CAAC,yBAAyB,CAAC,CAAC;CACrE,CAAC;AAEF,qBAAa,KAAM,SAAQ,MAAM,CAAC,iBAAiB;IACjD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAG1B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,SAAS,EACf,IAAI,GAAE,MAAM,CAAC,wBAA6B;CA4D7C"}
@@ -21,7 +21,13 @@ class Mongo extends pulumi.ComponentResource {
21
21
  const image = args.image ||
22
22
  'mongo:7.0.3@sha256:238b1636bdd7820c752b91bec8a669f92568eb313ad89a1fc4a92903c1b40489';
23
23
  const port = args.port || 27017;
24
- const persistentStorageVolumePath = args.persistentStorageVolumePath || '/data/db';
24
+ const persistentStorageConfig = args.persistentStorageConfig || {
25
+ volumes: [{ name: 'mongo' }],
26
+ mountPoints: [{
27
+ sourceVolume: 'mongo',
28
+ containerPath: '/data/db'
29
+ }]
30
+ };
25
31
  const { username, password, privateSubnetIds } = args, ecsServiceArgs = __rest(args, ["username", "password", "privateSubnetIds"]);
26
32
  this.name = name;
27
33
  this.host = pulumi.output(`${name}.${name}`);
@@ -29,7 +35,7 @@ class Mongo extends pulumi.ComponentResource {
29
35
  this.port = pulumi.output(port);
30
36
  this.password = new password_1.Password(`${this.name}-mongo-password`, { value: password }, { parent: this });
31
37
  this.service = new ecs_service_1.EcsService(name, Object.assign(Object.assign({}, ecsServiceArgs), { port,
32
- image, desiredCount: 1, autoscaling: { enabled: false }, enableServiceAutoDiscovery: true, persistentStorageVolumePath, dockerCommand: ['mongod', '--port', port.toString()], assignPublicIp: false, subnetIds: privateSubnetIds, environment: [
38
+ image, desiredCount: 1, autoscaling: { enabled: false }, enableServiceAutoDiscovery: true, persistentStorageConfig, dockerCommand: ['mongod', '--port', port.toString()], assignPublicIp: false, subnetIds: privateSubnetIds, environment: [
33
39
  {
34
40
  name: 'MONGO_INITDB_ROOT_USERNAME',
35
41
  value: username,
@@ -41,3 +41,4 @@ export declare class NuxtSSR extends pulumi.ComponentResource {
41
41
  private createCloudfrontDistribution;
42
42
  private createDnsRecord;
43
43
  }
44
+ //# sourceMappingURL=nuxt-ssr.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nuxt-ssr.d.ts","sourceRoot":"","sources":["../../src/components/nuxt-ssr.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAGnC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,MAAM,WAAW,GAAG,IAAI,CAC5B,cAAc,EACZ,OAAO,GACP,MAAM,GACN,WAAW,GACX,aAAa,GACb,OAAO,GACP,cAAc,GACd,cAAc,GACd,aAAa,GACb,MAAM,GACN,aAAa,GACb,SAAS,GACT,MAAM,CACT,GAAG;IACF,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACxC,CAAC;AAMF,qBAAa,OAAQ,SAAQ,MAAM,CAAC,iBAAiB;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;IACvC,oBAAoB,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5C,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;KAAE,CAAC;IAC9E,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC;IACxB,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC;IAClC,cAAc,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;IAChC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;gBAGtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,WAAW,EACjB,IAAI,GAAE,MAAM,CAAC,wBAA6B;IAoC5C,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,oBAAoB;IAqC5B,OAAO,CAAC,kBAAkB;IAuH1B,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,4BAA4B;IA0GpC,OAAO,CAAC,eAAe;CAsBxB"}
@@ -10,3 +10,4 @@ export declare class Password extends pulumi.ComponentResource {
10
10
  constructor(name: string, args: PasswordArgs, opts?: pulumi.ComponentResourceOptions);
11
11
  private createPasswordSecret;
12
12
  }
13
+ //# sourceMappingURL=password.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"password.d.ts","sourceRoot":"","sources":["../../src/components/password.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAIzC,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AAEF,qBAAa,QAAS,SAAQ,MAAM,CAAC,iBAAiB;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7B,MAAM,EAAE,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;gBAGhC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,YAAY,EAClB,IAAI,GAAE,MAAM,CAAC,wBAA6B;IA2B5C,OAAO,CAAC,oBAAoB;CAwB7B"}
@@ -74,3 +74,4 @@ export declare class Project extends pulumi.ComponentResource {
74
74
  private createEcsService;
75
75
  }
76
76
  export {};
77
+ //# sourceMappingURL=project.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/components/project.ts"],"names":[],"mappings":"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"}
@@ -20,3 +20,4 @@ export declare class Redis extends pulumi.ComponentResource {
20
20
  username: string;
21
21
  constructor(name: string, args: RedisArgs, opts: RedisOptions);
22
22
  }
23
+ //# sourceMappingURL=redis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redis.d.ts","sourceRoot":"","sources":["../../src/components/redis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAC;AAC3C,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAGnC,MAAM,MAAM,SAAS,GAAG;IACtB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC/B,CAAC;AAMF,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,wBAAwB;IACnE,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;CAC5B;AAED,qBAAa,KAAM,SAAQ,MAAM,CAAC,iBAAiB;IACjD,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC;IAChC,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC;IAC1C,QAAQ,SAAa;gBAET,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY;CAuC9D"}
@@ -33,3 +33,4 @@ export declare class StaticSite extends pulumi.ComponentResource {
33
33
  private createCloudfrontDistribution;
34
34
  private createDnsRecord;
35
35
  }
36
+ //# sourceMappingURL=static-site.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"static-site.d.ts","sourceRoot":"","sources":["../../src/components/static-site.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AACnC,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,MAAM,MAAM,cAAc,GAAG;IAC3B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAChD;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KACrC,CAAC,CAAC;CACJ,CAAC;AAEF,qBAAa,UAAW,SAAQ,MAAM,CAAC,iBAAiB;IACtD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC;IACtB,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;gBAGtC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,cAAc,EACpB,IAAI,GAAE,MAAM,CAAC,wBAA6B;IA4B5C,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,kBAAkB;IAoD1B,OAAO,CAAC,4BAA4B;IA0EpC,OAAO,CAAC,eAAe;CAsBxB"}
@@ -2,7 +2,7 @@ import * as pulumi from '@pulumi/pulumi';
2
2
  import * as aws from '@pulumi/aws';
3
3
  import { AcmCertificate } from './acm-certificate';
4
4
  import { EcsService, EcsServiceArgs } from './ecs-service';
5
- export type WebServerArgs = Pick<EcsServiceArgs, 'image' | 'port' | 'clusterId' | 'clusterName' | 'vpcId' | 'vpcCidrBlock' | 'desiredCount' | 'autoscaling' | 'size' | 'environment' | 'secrets' | 'taskExecutionRoleInlinePolicies' | 'taskRoleInlinePolicies' | 'tags'> & {
5
+ export type WebServerArgs = Pick<EcsServiceArgs, 'image' | 'port' | 'clusterId' | 'clusterName' | 'vpcId' | 'vpcCidrBlock' | 'desiredCount' | 'autoscaling' | 'size' | 'environment' | 'secrets' | 'persistentStorageConfig' | 'taskExecutionRoleInlinePolicies' | 'taskRoleInlinePolicies' | 'tags'> & {
6
6
  publicSubnetIds: pulumi.Input<pulumi.Input<string>[]>;
7
7
  /**
8
8
  * The domain which will be used to access the service.
@@ -35,3 +35,4 @@ export declare class WebServer extends pulumi.ComponentResource {
35
35
  private createEcsService;
36
36
  private createDnsRecord;
37
37
  }
38
+ //# sourceMappingURL=web-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"web-server.d.ts","sourceRoot":"","sources":["../../src/components/web-server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,KAAK,GAAG,MAAM,aAAa,CAAC;AAEnC,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,IAAI,CAC9B,cAAc,EACZ,OAAO,GACP,MAAM,GACN,WAAW,GACX,aAAa,GACb,OAAO,GACP,cAAc,GACd,cAAc,GACd,aAAa,GACb,MAAM,GACN,aAAa,GACb,SAAS,GACT,yBAAyB,GACzB,iCAAiC,GACjC,wBAAwB,GACxB,MAAM,CACT,GAAG;IACF,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CACxC,CAAC;AAMF,qBAAa,SAAU,SAAQ,MAAM,CAAC,iBAAiB;IACrD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;IACpB,eAAe,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;IACvC,oBAAoB,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC;IAC5C,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC;IACxB,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC;IAClC,cAAc,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;IAChC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,aAAa,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC;gBAG9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,aAAa,EACnB,IAAI,GAAE,MAAM,CAAC,wBAA6B;IA2C5C,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,kBAAkB;IAkI1B,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,gBAAgB;IAmBxB,OAAO,CAAC,eAAe;CAqBxB"}
@@ -11,7 +11,8 @@ const defaults = {
11
11
  };
12
12
  class WebServer extends pulumi.ComponentResource {
13
13
  constructor(name, args, opts = {}) {
14
- super('studion:WebServer', name, args, opts);
14
+ const aliases = opts.aliases || [];
15
+ super('studion:LegacyWebServer', name, args, Object.assign(Object.assign({}, opts), { aliases: [...aliases, { type: 'studion:WebServer' }] }));
15
16
  const { vpcId, domain, hostedZoneId } = args;
16
17
  const hasCustomDomain = !!domain && !!hostedZoneId;
17
18
  if (domain && !hostedZoneId) {
@@ -20,3 +20,4 @@ export declare const commonTags: {
20
20
  Env: string;
21
21
  Project: string;
22
22
  };
23
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;CAiBjB,CAAC;AAEX,eAAO,MAAM,UAAU;;;CAGtB,CAAC"}
package/dist/constants.js CHANGED
@@ -6,19 +6,19 @@ const CPU_1_VCPU = 1024;
6
6
  const MEMORY_1GB = 1024;
7
7
  exports.PredefinedSize = {
8
8
  small: {
9
- cpu: CPU_1_VCPU / 4,
9
+ cpu: CPU_1_VCPU / 4, // 0.25 vCPU
10
10
  memory: MEMORY_1GB / 2, // 0.5 GB memory
11
11
  },
12
12
  medium: {
13
- cpu: CPU_1_VCPU / 2,
13
+ cpu: CPU_1_VCPU / 2, // 0.5 vCPU
14
14
  memory: MEMORY_1GB, // 1 GB memory
15
15
  },
16
16
  large: {
17
- cpu: CPU_1_VCPU,
17
+ cpu: CPU_1_VCPU, // 1 vCPU
18
18
  memory: MEMORY_1GB * 2, // 2 GB memory
19
19
  },
20
20
  xlarge: {
21
- cpu: CPU_1_VCPU * 2,
21
+ cpu: CPU_1_VCPU * 2, // 2 vCPU
22
22
  memory: MEMORY_1GB * 4, // 4 GB memory
23
23
  },
24
24
  };
package/dist/index.d.ts CHANGED
@@ -8,3 +8,5 @@ export * from './components/project';
8
8
  export * from './components/ec2-ssm-connect';
9
9
  export * from './components/ecs-service';
10
10
  export * from './components/nuxt-ssr';
11
+ export * as next from './v2';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.next = void 0;
17
18
  __exportStar(require("./components/web-server"), exports);
18
19
  __exportStar(require("./components/mongo"), exports);
19
20
  __exportStar(require("./components/static-site"), exports);
@@ -24,3 +25,4 @@ __exportStar(require("./components/project"), exports);
24
25
  __exportStar(require("./components/ec2-ssm-connect"), exports);
25
26
  __exportStar(require("./components/ecs-service"), exports);
26
27
  __exportStar(require("./components/nuxt-ssr"), exports);
28
+ exports.next = require("./v2");
@@ -0,0 +1,5 @@
1
+ import * as pulumi from '@pulumi/pulumi';
2
+ export type WithInput<T extends {}> = {
3
+ [K in keyof T]: pulumi.Input<T[K]>;
4
+ };
5
+ //# sourceMappingURL=pulumi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pulumi.d.ts","sourceRoot":"","sources":["../../src/types/pulumi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAEzC,MAAM,MAAM,SAAS,CAAC,CAAC,SAAS,EAAE,IAAI;KACnC,CAAC,IAAI,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACnC,CAAC"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -5,3 +5,4 @@ export type CustomSize = {
5
5
  memory: pulumi.Input<number>;
6
6
  };
7
7
  export type Size = keyof typeof PredefinedSize | CustomSize;
8
+ //# sourceMappingURL=size.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"size.d.ts","sourceRoot":"","sources":["../../src/types/size.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG;IACvB,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;CAC9B,CAAC;AACF,MAAM,MAAM,IAAI,GAAG,MAAM,OAAO,cAAc,GAAG,UAAU,CAAC"}