@awsless/awsless 0.0.171 → 0.0.173

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/bin.js CHANGED
@@ -778,121 +778,114 @@ var CachesSchema = z23.record(
778
778
  // src/feature/search/schema.ts
779
779
  import { z as z24 } from "zod";
780
780
  import { gibibytes as gibibytes2 } from "@awsless/size";
781
- var VersionSchema = z24.enum([
782
- "OpenSearch_2.11",
783
- "OpenSearch_2.9",
784
- "OpenSearch_2.7",
785
- "OpenSearch_2.5",
786
- "OpenSearch_2.3",
787
- "OpenSearch_1.3"
788
- ]);
781
+ var VersionSchema = z24.enum(["2.11", "2.9", "2.7", "2.5", "2.3", "1.3"]);
789
782
  var TypeSchema2 = z24.enum([
790
- "t3.small.search",
791
- "t3.medium.search",
792
- "t3.large.search",
793
- "t3.xlarge.search",
794
- "t3.2xlarge.search",
795
- "t4g.small.search",
796
- "t4g.medium.search",
797
- "m3.medium.search",
798
- "m3.large.search",
799
- "m3.xlarge.search",
800
- "m3.2xlarge.search",
801
- "m4.large.search",
802
- "m4.xlarge.search",
803
- "m4.2xlarge.search",
804
- "m4.4xlarge.search",
805
- "m4.10xlarge.search",
806
- "m5.large.search",
807
- "m5.xlarge.search",
808
- "m5.2xlarge.search",
809
- "m5.4xlarge.search",
810
- "m5.12xlarge.search",
811
- "m5.24xlarge.search",
812
- "r5.large.search",
813
- "r5.xlarge.search",
814
- "r5.2xlarge.search",
815
- "r5.4xlarge.search",
816
- "r5.12xlarge.search",
817
- "r5.24xlarge.search",
818
- "c5.large.search",
819
- "c5.xlarge.search",
820
- "c5.2xlarge.search",
821
- "c5.4xlarge.search",
822
- "c5.9xlarge.search",
823
- "c5.18xlarge.search",
824
- "or1.medium.search",
825
- "or1.large.search",
826
- "or1.xlarge.search",
827
- "or1.2xlarge.search",
828
- "or1.4xlarge.search",
829
- "or1.8xlarge.search",
830
- "or1.12xlarge.search",
831
- "or1.16xlarge.search",
832
- "ultrawarm1.medium.search",
833
- "ultrawarm1.large.search",
834
- "ultrawarm1.xlarge.search",
835
- "r3.large.search",
836
- "r3.xlarge.search",
837
- "r3.2xlarge.search",
838
- "r3.4xlarge.search",
839
- "r3.8xlarge.search",
840
- "i2.xlarge.search",
841
- "i2.2xlarge.search",
842
- "d2.xlarge.search",
843
- "d2.2xlarge.search",
844
- "d2.4xlarge.search",
845
- "d2.8xlarge.search",
846
- "c4.large.search",
847
- "c4.xlarge.search",
848
- "c4.2xlarge.search",
849
- "c4.4xlarge.search",
850
- "c4.8xlarge.search",
851
- "r4.large.search",
852
- "r4.xlarge.search",
853
- "r4.2xlarge.search",
854
- "r4.4xlarge.search",
855
- "r4.8xlarge.search",
856
- "r4.16xlarge.search",
857
- "i3.large.search",
858
- "i3.xlarge.search",
859
- "i3.2xlarge.search",
860
- "i3.4xlarge.search",
861
- "i3.8xlarge.search",
862
- "i3.16xlarge.search",
863
- "r6g.large.search",
864
- "r6g.xlarge.search",
865
- "r6g.2xlarge.search",
866
- "r6g.4xlarge.search",
867
- "r6g.8xlarge.search",
868
- "r6g.12xlarge.search",
869
- "m6g.large.search",
870
- "m6g.xlarge.search",
871
- "m6g.2xlarge.search",
872
- "m6g.4xlarge.search",
873
- "m6g.8xlarge.search",
874
- "m6g.12xlarge.search",
875
- "c6g.large.search",
876
- "c6g.xlarge.search",
877
- "c6g.2xlarge.search",
878
- "c6g.4xlarge.search",
879
- "c6g.8xlarge.search",
880
- "c6g.12xlarge.search",
881
- "r6gd.large.search",
882
- "r6gd.xlarge.search",
883
- "r6gd.2xlarge.search",
884
- "r6gd.4xlarge.search",
885
- "r6gd.8xlarge.search",
886
- "r6gd.12xlarge.search",
887
- "r6gd.16xlarge.search"
783
+ "t3.small",
784
+ "t3.medium",
785
+ "t3.large",
786
+ "t3.xlarge",
787
+ "t3.2xlarge",
788
+ "t4g.small",
789
+ "t4g.medium",
790
+ "m3.medium",
791
+ "m3.large",
792
+ "m3.xlarge",
793
+ "m3.2xlarge",
794
+ "m4.large",
795
+ "m4.xlarge",
796
+ "m4.2xlarge",
797
+ "m4.4xlarge",
798
+ "m4.10xlarge",
799
+ "m5.large",
800
+ "m5.xlarge",
801
+ "m5.2xlarge",
802
+ "m5.4xlarge",
803
+ "m5.12xlarge",
804
+ "m5.24xlarge",
805
+ "r5.large",
806
+ "r5.xlarge",
807
+ "r5.2xlarge",
808
+ "r5.4xlarge",
809
+ "r5.12xlarge",
810
+ "r5.24xlarge",
811
+ "c5.large",
812
+ "c5.xlarge",
813
+ "c5.2xlarge",
814
+ "c5.4xlarge",
815
+ "c5.9xlarge",
816
+ "c5.18xlarge",
817
+ "or1.medium",
818
+ "or1.large",
819
+ "or1.xlarge",
820
+ "or1.2xlarge",
821
+ "or1.4xlarge",
822
+ "or1.8xlarge",
823
+ "or1.12xlarge",
824
+ "or1.16xlarge",
825
+ "ultrawarm1.medium",
826
+ "ultrawarm1.large",
827
+ "ultrawarm1.xlarge",
828
+ "r3.large",
829
+ "r3.xlarge",
830
+ "r3.2xlarge",
831
+ "r3.4xlarge",
832
+ "r3.8xlarge",
833
+ "i2.xlarge",
834
+ "i2.2xlarge",
835
+ "d2.xlarge",
836
+ "d2.2xlarge",
837
+ "d2.4xlarge",
838
+ "d2.8xlarge",
839
+ "c4.large",
840
+ "c4.xlarge",
841
+ "c4.2xlarge",
842
+ "c4.4xlarge",
843
+ "c4.8xlarge",
844
+ "r4.large",
845
+ "r4.xlarge",
846
+ "r4.2xlarge",
847
+ "r4.4xlarge",
848
+ "r4.8xlarge",
849
+ "r4.16xlarge",
850
+ "i3.large",
851
+ "i3.xlarge",
852
+ "i3.2xlarge",
853
+ "i3.4xlarge",
854
+ "i3.8xlarge",
855
+ "i3.16xlarge",
856
+ "r6g.large",
857
+ "r6g.xlarge",
858
+ "r6g.2xlarge",
859
+ "r6g.4xlarge",
860
+ "r6g.8xlarge",
861
+ "r6g.12xlarge",
862
+ "m6g.large",
863
+ "m6g.xlarge",
864
+ "m6g.2xlarge",
865
+ "m6g.4xlarge",
866
+ "m6g.8xlarge",
867
+ "m6g.12xlarge",
868
+ "c6g.large",
869
+ "c6g.xlarge",
870
+ "c6g.2xlarge",
871
+ "c6g.4xlarge",
872
+ "c6g.8xlarge",
873
+ "c6g.12xlarge",
874
+ "r6gd.large",
875
+ "r6gd.xlarge",
876
+ "r6gd.2xlarge",
877
+ "r6gd.4xlarge",
878
+ "r6gd.8xlarge",
879
+ "r6gd.12xlarge",
880
+ "r6gd.16xlarge"
888
881
  ]);
889
882
  var StorageSizeSchema = SizeSchema.refine(sizeMin(gibibytes2(10)), "Minimum storage size is 10 GB").refine(sizeMax(gibibytes2(100)), "Maximum storage size is 100 GB").describe("The size of the function's /tmp directory. You can specify a size value from 512 MB to 10 GiB.");
890
883
  var SearchsSchema = z24.record(
891
884
  ResourceIdSchema,
892
885
  z24.object({
893
- type: TypeSchema2.default("t3.small.search"),
886
+ type: TypeSchema2.default("t3.small"),
894
887
  count: z24.number().int().min(1).default(1),
895
- version: VersionSchema.default("OpenSearch_2.11"),
888
+ version: VersionSchema.default("2.11"),
896
889
  storage: StorageSizeSchema.default("10 GB"),
897
890
  vpc: z24.boolean().default(false)
898
891
  })
@@ -1012,9 +1005,12 @@ var SitesSchema = z25.record(
1012
1005
 
1013
1006
  // src/config/stack.ts
1014
1007
  var DependsSchema = ResourceIdSchema.array().optional().describe("Define the stacks that this stack is depended on.");
1008
+ var NameSchema = ResourceIdSchema.refine((name) => !["base"].includes(name), {
1009
+ message: `Stack name can't be a reserved name.`
1010
+ }).describe("Stack name.");
1015
1011
  var StackSchema = z26.object({
1016
1012
  $schema: z26.string().optional(),
1017
- name: ResourceIdSchema,
1013
+ name: NameSchema,
1018
1014
  depends: DependsSchema,
1019
1015
  onFailure: OnFailureSchema,
1020
1016
  auth: AuthSchema,
@@ -3193,7 +3189,7 @@ var authFeature = defineFeature({
3193
3189
  onStack(ctx) {
3194
3190
  for (const [id, props] of Object.entries(ctx.stackConfig.auth ?? {})) {
3195
3191
  const group = new Node14(this.name, id);
3196
- ctx.base.add(group);
3192
+ ctx.stack.add(group);
3197
3193
  const userPoolId = ctx.app.import("base", `auth-${id}-user-pool-id`);
3198
3194
  const userPoolArn = ctx.app.import("base", `auth-${id}-user-pool-arn`);
3199
3195
  const clientId = ctx.app.import("base", `auth-${id}-client-id`);
@@ -3482,7 +3478,7 @@ var searchFeature = defineFeature({
3482
3478
  for (const stack of ctx.stackConfigs) {
3483
3479
  const list4 = new TypeObject(2);
3484
3480
  for (const id of Object.keys(stack.searchs ?? {})) {
3485
- const name = formatLocalResourceName(ctx.appConfig.name, stack.name, "search", id);
3481
+ const name = formatLocalResourceName(ctx.appConfig.name, stack.name, this.name, id);
3486
3482
  list4.addType(name, `{ readonly name: '${name}' }`);
3487
3483
  }
3488
3484
  resources.addType(stack.name, list4);
@@ -3495,15 +3491,35 @@ var searchFeature = defineFeature({
3495
3491
  const group = new Node16("search", id);
3496
3492
  ctx.stack.add(group);
3497
3493
  const domain = new aws16.openSearch.Domain("domain", {
3498
- // name: formatLocalResourceName(ctx.app.name, ctx.stack.name, 'search', id),
3494
+ // name: formatLocalResourceName(ctx.app.name, ctx.stack.name, this.name, id),
3499
3495
  version: props.version,
3500
3496
  storageSize: props.storage,
3501
3497
  instance: {
3502
3498
  type: props.type,
3503
3499
  count: props.count
3500
+ },
3501
+ accessPolicy: {
3502
+ statements: [
3503
+ {
3504
+ principal: "lambda.amazonaws.com",
3505
+ sourceArn: `arn:aws:lambfa:${ctx.appConfig.region}:${ctx.accountId}:function:${ctx.app.name}--${ctx.stack.name}--*`
3506
+ }
3507
+ ]
3504
3508
  }
3505
3509
  });
3510
+ if (props.vpc) {
3511
+ domain.setVpc({
3512
+ securityGroupIds: [ctx.app.import("base", `vpc-security-group-id`)],
3513
+ subnetIds: [ctx.app.import("base", "vpc-private-subnet-id-1")]
3514
+ });
3515
+ }
3506
3516
  group.add(domain);
3517
+ ctx.onFunction(({ policy }) => {
3518
+ policy.addStatement({
3519
+ actions: ["es:*"],
3520
+ resources: [domain.arn]
3521
+ });
3522
+ });
3507
3523
  }
3508
3524
  }
3509
3525
  });
@@ -595,121 +595,114 @@ var HttpSchema = z20.record(ResourceIdSchema, z20.record(RouteSchema, FunctionSc
595
595
  // src/feature/search/schema.ts
596
596
  import { z as z21 } from "zod";
597
597
  import { gibibytes as gibibytes2 } from "@awsless/size";
598
- var VersionSchema = z21.enum([
599
- "OpenSearch_2.11",
600
- "OpenSearch_2.9",
601
- "OpenSearch_2.7",
602
- "OpenSearch_2.5",
603
- "OpenSearch_2.3",
604
- "OpenSearch_1.3"
605
- ]);
598
+ var VersionSchema = z21.enum(["2.11", "2.9", "2.7", "2.5", "2.3", "1.3"]);
606
599
  var TypeSchema2 = z21.enum([
607
- "t3.small.search",
608
- "t3.medium.search",
609
- "t3.large.search",
610
- "t3.xlarge.search",
611
- "t3.2xlarge.search",
612
- "t4g.small.search",
613
- "t4g.medium.search",
614
- "m3.medium.search",
615
- "m3.large.search",
616
- "m3.xlarge.search",
617
- "m3.2xlarge.search",
618
- "m4.large.search",
619
- "m4.xlarge.search",
620
- "m4.2xlarge.search",
621
- "m4.4xlarge.search",
622
- "m4.10xlarge.search",
623
- "m5.large.search",
624
- "m5.xlarge.search",
625
- "m5.2xlarge.search",
626
- "m5.4xlarge.search",
627
- "m5.12xlarge.search",
628
- "m5.24xlarge.search",
629
- "r5.large.search",
630
- "r5.xlarge.search",
631
- "r5.2xlarge.search",
632
- "r5.4xlarge.search",
633
- "r5.12xlarge.search",
634
- "r5.24xlarge.search",
635
- "c5.large.search",
636
- "c5.xlarge.search",
637
- "c5.2xlarge.search",
638
- "c5.4xlarge.search",
639
- "c5.9xlarge.search",
640
- "c5.18xlarge.search",
641
- "or1.medium.search",
642
- "or1.large.search",
643
- "or1.xlarge.search",
644
- "or1.2xlarge.search",
645
- "or1.4xlarge.search",
646
- "or1.8xlarge.search",
647
- "or1.12xlarge.search",
648
- "or1.16xlarge.search",
649
- "ultrawarm1.medium.search",
650
- "ultrawarm1.large.search",
651
- "ultrawarm1.xlarge.search",
652
- "r3.large.search",
653
- "r3.xlarge.search",
654
- "r3.2xlarge.search",
655
- "r3.4xlarge.search",
656
- "r3.8xlarge.search",
657
- "i2.xlarge.search",
658
- "i2.2xlarge.search",
659
- "d2.xlarge.search",
660
- "d2.2xlarge.search",
661
- "d2.4xlarge.search",
662
- "d2.8xlarge.search",
663
- "c4.large.search",
664
- "c4.xlarge.search",
665
- "c4.2xlarge.search",
666
- "c4.4xlarge.search",
667
- "c4.8xlarge.search",
668
- "r4.large.search",
669
- "r4.xlarge.search",
670
- "r4.2xlarge.search",
671
- "r4.4xlarge.search",
672
- "r4.8xlarge.search",
673
- "r4.16xlarge.search",
674
- "i3.large.search",
675
- "i3.xlarge.search",
676
- "i3.2xlarge.search",
677
- "i3.4xlarge.search",
678
- "i3.8xlarge.search",
679
- "i3.16xlarge.search",
680
- "r6g.large.search",
681
- "r6g.xlarge.search",
682
- "r6g.2xlarge.search",
683
- "r6g.4xlarge.search",
684
- "r6g.8xlarge.search",
685
- "r6g.12xlarge.search",
686
- "m6g.large.search",
687
- "m6g.xlarge.search",
688
- "m6g.2xlarge.search",
689
- "m6g.4xlarge.search",
690
- "m6g.8xlarge.search",
691
- "m6g.12xlarge.search",
692
- "c6g.large.search",
693
- "c6g.xlarge.search",
694
- "c6g.2xlarge.search",
695
- "c6g.4xlarge.search",
696
- "c6g.8xlarge.search",
697
- "c6g.12xlarge.search",
698
- "r6gd.large.search",
699
- "r6gd.xlarge.search",
700
- "r6gd.2xlarge.search",
701
- "r6gd.4xlarge.search",
702
- "r6gd.8xlarge.search",
703
- "r6gd.12xlarge.search",
704
- "r6gd.16xlarge.search"
600
+ "t3.small",
601
+ "t3.medium",
602
+ "t3.large",
603
+ "t3.xlarge",
604
+ "t3.2xlarge",
605
+ "t4g.small",
606
+ "t4g.medium",
607
+ "m3.medium",
608
+ "m3.large",
609
+ "m3.xlarge",
610
+ "m3.2xlarge",
611
+ "m4.large",
612
+ "m4.xlarge",
613
+ "m4.2xlarge",
614
+ "m4.4xlarge",
615
+ "m4.10xlarge",
616
+ "m5.large",
617
+ "m5.xlarge",
618
+ "m5.2xlarge",
619
+ "m5.4xlarge",
620
+ "m5.12xlarge",
621
+ "m5.24xlarge",
622
+ "r5.large",
623
+ "r5.xlarge",
624
+ "r5.2xlarge",
625
+ "r5.4xlarge",
626
+ "r5.12xlarge",
627
+ "r5.24xlarge",
628
+ "c5.large",
629
+ "c5.xlarge",
630
+ "c5.2xlarge",
631
+ "c5.4xlarge",
632
+ "c5.9xlarge",
633
+ "c5.18xlarge",
634
+ "or1.medium",
635
+ "or1.large",
636
+ "or1.xlarge",
637
+ "or1.2xlarge",
638
+ "or1.4xlarge",
639
+ "or1.8xlarge",
640
+ "or1.12xlarge",
641
+ "or1.16xlarge",
642
+ "ultrawarm1.medium",
643
+ "ultrawarm1.large",
644
+ "ultrawarm1.xlarge",
645
+ "r3.large",
646
+ "r3.xlarge",
647
+ "r3.2xlarge",
648
+ "r3.4xlarge",
649
+ "r3.8xlarge",
650
+ "i2.xlarge",
651
+ "i2.2xlarge",
652
+ "d2.xlarge",
653
+ "d2.2xlarge",
654
+ "d2.4xlarge",
655
+ "d2.8xlarge",
656
+ "c4.large",
657
+ "c4.xlarge",
658
+ "c4.2xlarge",
659
+ "c4.4xlarge",
660
+ "c4.8xlarge",
661
+ "r4.large",
662
+ "r4.xlarge",
663
+ "r4.2xlarge",
664
+ "r4.4xlarge",
665
+ "r4.8xlarge",
666
+ "r4.16xlarge",
667
+ "i3.large",
668
+ "i3.xlarge",
669
+ "i3.2xlarge",
670
+ "i3.4xlarge",
671
+ "i3.8xlarge",
672
+ "i3.16xlarge",
673
+ "r6g.large",
674
+ "r6g.xlarge",
675
+ "r6g.2xlarge",
676
+ "r6g.4xlarge",
677
+ "r6g.8xlarge",
678
+ "r6g.12xlarge",
679
+ "m6g.large",
680
+ "m6g.xlarge",
681
+ "m6g.2xlarge",
682
+ "m6g.4xlarge",
683
+ "m6g.8xlarge",
684
+ "m6g.12xlarge",
685
+ "c6g.large",
686
+ "c6g.xlarge",
687
+ "c6g.2xlarge",
688
+ "c6g.4xlarge",
689
+ "c6g.8xlarge",
690
+ "c6g.12xlarge",
691
+ "r6gd.large",
692
+ "r6gd.xlarge",
693
+ "r6gd.2xlarge",
694
+ "r6gd.4xlarge",
695
+ "r6gd.8xlarge",
696
+ "r6gd.12xlarge",
697
+ "r6gd.16xlarge"
705
698
  ]);
706
699
  var StorageSizeSchema = SizeSchema.refine(sizeMin(gibibytes2(10)), "Minimum storage size is 10 GB").refine(sizeMax(gibibytes2(100)), "Maximum storage size is 100 GB").describe("The size of the function's /tmp directory. You can specify a size value from 512 MB to 10 GiB.");
707
700
  var SearchsSchema = z21.record(
708
701
  ResourceIdSchema,
709
702
  z21.object({
710
- type: TypeSchema2.default("t3.small.search"),
703
+ type: TypeSchema2.default("t3.small"),
711
704
  count: z21.number().int().min(1).default(1),
712
- version: VersionSchema.default("OpenSearch_2.11"),
705
+ version: VersionSchema.default("2.11"),
713
706
  storage: StorageSizeSchema.default("10 GB"),
714
707
  vpc: z21.boolean().default(false)
715
708
  })
@@ -829,9 +822,12 @@ var SitesSchema = z22.record(
829
822
 
830
823
  // src/config/stack.ts
831
824
  var DependsSchema = ResourceIdSchema.array().optional().describe("Define the stacks that this stack is depended on.");
825
+ var NameSchema = ResourceIdSchema.refine((name) => !["base"].includes(name), {
826
+ message: `Stack name can't be a reserved name.`
827
+ }).describe("Stack name.");
832
828
  var StackSchema = z23.object({
833
829
  $schema: z23.string().optional(),
834
- name: ResourceIdSchema,
830
+ name: NameSchema,
835
831
  depends: DependsSchema,
836
832
  onFailure: OnFailureSchema,
837
833
  auth: AuthSchema,