@cloudsnorkel/cdk-github-runners 0.6.1 → 0.7.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/API.md CHANGED
@@ -418,8 +418,6 @@ Any object.
418
418
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.image">image</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.RunnerImage">RunnerImage</a></code> | Docker image loaded with GitHub Actions Runner and its prerequisites. |
419
419
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.labels">labels</a></code> | <code>string[]</code> | Labels associated with this provider. |
420
420
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.project">project</a></code> | <code>aws-cdk-lib.aws_codebuild.Project</code> | CodeBuild project hosting the runner. |
421
- | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group attached to the task. |
422
- | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC used for hosting the project. |
423
421
 
424
422
  ---
425
423
 
@@ -497,30 +495,6 @@ CodeBuild project hosting the runner.
497
495
 
498
496
  ---
499
497
 
500
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.securityGroup"></a>
501
-
502
- ```typescript
503
- public readonly securityGroup: ISecurityGroup;
504
- ```
505
-
506
- - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
507
-
508
- Security group attached to the task.
509
-
510
- ---
511
-
512
- ##### `vpc`<sup>Optional</sup> <a name="vpc" id="@cloudsnorkel/cdk-github-runners.CodeBuildRunner.property.vpc"></a>
513
-
514
- ```typescript
515
- public readonly vpc: IVpc;
516
- ```
517
-
518
- - *Type:* aws-cdk-lib.aws_ec2.IVpc
519
-
520
- VPC used for hosting the project.
521
-
522
- ---
523
-
524
498
  #### Constants <a name="Constants" id="Constants"></a>
525
499
 
526
500
  | **Name** | **Type** | **Description** |
@@ -576,7 +550,7 @@ Available build arguments that can be set in the image builder:
576
550
 
577
551
  ### ContainerImageBuilder <a name="ContainerImageBuilder" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilder"></a>
578
552
 
579
- - *Implements:* <a href="#@cloudsnorkel/cdk-github-runners.IImageBuilder">IImageBuilder</a>
553
+ - *Implements:* <a href="#@cloudsnorkel/cdk-github-runners.IImageBuilder">IImageBuilder</a>, aws-cdk-lib.aws_ec2.IConnectable
580
554
 
581
555
  An image builder that uses AWS Image Builder to build Docker images pre-baked with all the GitHub Actions runner requirements.
582
556
 
@@ -742,6 +716,7 @@ Any object.
742
716
  | **Name** | **Type** | **Description** |
743
717
  | --- | --- | --- |
744
718
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilder.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
719
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilder.property.connections">connections</a></code> | <code>aws-cdk-lib.aws_ec2.Connections</code> | The network connections associated with this resource. |
745
720
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilder.property.repository">repository</a></code> | <code>aws-cdk-lib.aws_ecr.IRepository</code> | *No description.* |
746
721
 
747
722
  ---
@@ -758,6 +733,18 @@ The tree node.
758
733
 
759
734
  ---
760
735
 
736
+ ##### `connections`<sup>Required</sup> <a name="connections" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilder.property.connections"></a>
737
+
738
+ ```typescript
739
+ public readonly connections: Connections;
740
+ ```
741
+
742
+ - *Type:* aws-cdk-lib.aws_ec2.Connections
743
+
744
+ The network connections associated with this resource.
745
+
746
+ ---
747
+
761
748
  ##### `repository`<sup>Required</sup> <a name="repository" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilder.property.repository"></a>
762
749
 
763
750
  ```typescript
@@ -915,8 +902,6 @@ Any object.
915
902
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2Runner.property.connections">connections</a></code> | <code>aws-cdk-lib.aws_ec2.Connections</code> | The network connections associated with this resource. |
916
903
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2Runner.property.grantPrincipal">grantPrincipal</a></code> | <code>aws-cdk-lib.aws_iam.IPrincipal</code> | Grant principal used to add permissions to the runner role. |
917
904
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2Runner.property.labels">labels</a></code> | <code>string[]</code> | Labels associated with this provider. |
918
- | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2Runner.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group attached to launched instances. |
919
- | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2Runner.property.subnet">subnet</a></code> | <code>aws-cdk-lib.aws_ec2.ISubnet</code> | VPC subnet used for hosting launched instances. |
920
905
 
921
906
  ---
922
907
 
@@ -968,30 +953,6 @@ Labels associated with this provider.
968
953
 
969
954
  ---
970
955
 
971
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.Ec2Runner.property.securityGroup"></a>
972
-
973
- ```typescript
974
- public readonly securityGroup: ISecurityGroup;
975
- ```
976
-
977
- - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
978
-
979
- Security group attached to launched instances.
980
-
981
- ---
982
-
983
- ##### `subnet`<sup>Optional</sup> <a name="subnet" id="@cloudsnorkel/cdk-github-runners.Ec2Runner.property.subnet"></a>
984
-
985
- ```typescript
986
- public readonly subnet: ISubnet;
987
- ```
988
-
989
- - *Type:* aws-cdk-lib.aws_ec2.ISubnet
990
-
991
- VPC subnet used for hosting launched instances.
992
-
993
- ---
994
-
995
956
 
996
957
  ### FargateRunner <a name="FargateRunner" id="@cloudsnorkel/cdk-github-runners.FargateRunner"></a>
997
958
 
@@ -1147,7 +1108,6 @@ Any object.
1147
1108
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.labels">labels</a></code> | <code>string[]</code> | Labels associated with this provider. |
1148
1109
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.spot">spot</a></code> | <code>boolean</code> | Use spot pricing for Fargate tasks. |
1149
1110
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.task">task</a></code> | <code>aws-cdk-lib.aws_ecs.FargateTaskDefinition</code> | Fargate task hosting the runner. |
1150
- | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group attached to the task. |
1151
1111
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Subnets used for hosting the runner task. |
1152
1112
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunner.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC used for hosting the runner task. |
1153
1113
 
@@ -1275,18 +1235,6 @@ Fargate task hosting the runner.
1275
1235
 
1276
1236
  ---
1277
1237
 
1278
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.FargateRunner.property.securityGroup"></a>
1279
-
1280
- ```typescript
1281
- public readonly securityGroup: ISecurityGroup;
1282
- ```
1283
-
1284
- - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
1285
-
1286
- Security group attached to the task.
1287
-
1288
- ---
1289
-
1290
1238
  ##### `subnetSelection`<sup>Optional</sup> <a name="subnetSelection" id="@cloudsnorkel/cdk-github-runners.FargateRunner.property.subnetSelection"></a>
1291
1239
 
1292
1240
  ```typescript
@@ -1920,8 +1868,6 @@ Any object.
1920
1868
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunner.property.grantPrincipal">grantPrincipal</a></code> | <code>aws-cdk-lib.aws_iam.IPrincipal</code> | Grant principal used to add permissions to the runner role. |
1921
1869
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunner.property.image">image</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.RunnerImage">RunnerImage</a></code> | Docker image loaded with GitHub Actions Runner and its prerequisites. |
1922
1870
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunner.property.labels">labels</a></code> | <code>string[]</code> | Labels associated with this provider. |
1923
- | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunner.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group attached to the function. |
1924
- | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunner.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC used for hosting the function. |
1925
1871
 
1926
1872
  ---
1927
1873
 
@@ -1999,30 +1945,6 @@ Labels associated with this provider.
1999
1945
 
2000
1946
  ---
2001
1947
 
2002
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.LambdaRunner.property.securityGroup"></a>
2003
-
2004
- ```typescript
2005
- public readonly securityGroup: ISecurityGroup;
2006
- ```
2007
-
2008
- - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
2009
-
2010
- Security group attached to the function.
2011
-
2012
- ---
2013
-
2014
- ##### `vpc`<sup>Optional</sup> <a name="vpc" id="@cloudsnorkel/cdk-github-runners.LambdaRunner.property.vpc"></a>
2015
-
2016
- ```typescript
2017
- public readonly vpc: IVpc;
2018
- ```
2019
-
2020
- - *Type:* aws-cdk-lib.aws_ec2.IVpc
2021
-
2022
- VPC used for hosting the function.
2023
-
2024
- ---
2025
-
2026
1948
  #### Constants <a name="Constants" id="Constants"></a>
2027
1949
 
2028
1950
  | **Name** | **Type** | **Description** |
@@ -2449,7 +2371,8 @@ const codeBuildRunnerProps: CodeBuildRunnerProps = { ... }
2449
2371
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.imageBuilder">imageBuilder</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.IImageBuilder">IImageBuilder</a></code> | Image builder for CodeBuild image with GitHub runner pre-configured. |
2450
2372
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.label">label</a></code> | <code>string</code> | GitHub Actions label used for this provider. |
2451
2373
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.labels">labels</a></code> | <code>string[]</code> | GitHub Actions labels used for this provider. |
2452
- | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security Group to assign to this instance. |
2374
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group to assign to this instance. |
2375
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroups">securityGroups</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup[]</code> | Security groups to assign to this instance. |
2453
2376
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Where to place the network interfaces within the VPC. |
2454
2377
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.timeout">timeout</a></code> | <code>aws-cdk-lib.Duration</code> | The number of minutes after which AWS CodeBuild stops the build if it's not complete. |
2455
2378
  | <code><a href="#@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC to launch the runners in. |
@@ -2535,7 +2458,9 @@ job's labels, this provider will be chosen and spawn a new runner.
2535
2458
 
2536
2459
  ---
2537
2460
 
2538
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroup"></a>
2461
+ ##### ~~`securityGroup`~~<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroup"></a>
2462
+
2463
+ - *Deprecated:* use {@link securityGroups}
2539
2464
 
2540
2465
  ```typescript
2541
2466
  public readonly securityGroup: ISecurityGroup;
@@ -2544,7 +2469,20 @@ public readonly securityGroup: ISecurityGroup;
2544
2469
  - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
2545
2470
  - *Default:* public project with no security group
2546
2471
 
2547
- Security Group to assign to this instance.
2472
+ Security group to assign to this instance.
2473
+
2474
+ ---
2475
+
2476
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.CodeBuildRunnerProps.property.securityGroups"></a>
2477
+
2478
+ ```typescript
2479
+ public readonly securityGroups: ISecurityGroup[];
2480
+ ```
2481
+
2482
+ - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup[]
2483
+ - *Default:* a new security group, if {@link vpc} is used
2484
+
2485
+ Security groups to assign to this instance.
2548
2486
 
2549
2487
  ---
2550
2488
 
@@ -2614,7 +2552,8 @@ const containerImageBuilderProps: ContainerImageBuilderProps = { ... }
2614
2552
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.parentImage">parentImage</a></code> | <code>string</code> | Parent image for the new Docker Image. |
2615
2553
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.rebuildInterval">rebuildInterval</a></code> | <code>aws-cdk-lib.Duration</code> | Schedule the image to be rebuilt every given interval. |
2616
2554
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.runnerVersion">runnerVersion</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.RunnerVersion">RunnerVersion</a></code> | Version of GitHub Runners to install. |
2617
- | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security Group to assign to this instance. |
2555
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group to assign to launched builder instances. |
2556
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroups">securityGroups</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup[]</code> | Security groups to assign to launched builder instances. |
2618
2557
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Where to place the network interfaces within the VPC. |
2619
2558
  | <code><a href="#@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC to launch the runners in. |
2620
2559
 
@@ -2738,16 +2677,31 @@ Version of GitHub Runners to install.
2738
2677
 
2739
2678
  ---
2740
2679
 
2741
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroup"></a>
2680
+ ##### ~~`securityGroup`~~<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroup"></a>
2681
+
2682
+ - *Deprecated:* use {@link securityGroups}
2742
2683
 
2743
2684
  ```typescript
2744
2685
  public readonly securityGroup: ISecurityGroup;
2745
2686
  ```
2746
2687
 
2747
2688
  - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
2748
- - *Default:* default account security group
2689
+ - *Default:* new security group
2749
2690
 
2750
- Security Group to assign to this instance.
2691
+ Security group to assign to launched builder instances.
2692
+
2693
+ ---
2694
+
2695
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.ContainerImageBuilderProps.property.securityGroups"></a>
2696
+
2697
+ ```typescript
2698
+ public readonly securityGroups: ISecurityGroup[];
2699
+ ```
2700
+
2701
+ - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup[]
2702
+ - *Default:* new security group
2703
+
2704
+ Security groups to assign to launched builder instances.
2751
2705
 
2752
2706
  ---
2753
2707
 
@@ -2798,10 +2752,13 @@ const ec2RunnerProps: Ec2RunnerProps = { ... }
2798
2752
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.instanceType">instanceType</a></code> | <code>aws-cdk-lib.aws_ec2.InstanceType</code> | Instance type for launched runner instances. |
2799
2753
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.labels">labels</a></code> | <code>string[]</code> | GitHub Actions labels used for this provider. |
2800
2754
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security Group to assign to launched runner instances. |
2755
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.securityGroups">securityGroups</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup[]</code> | Security groups to assign to launched runner instances. |
2801
2756
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.spot">spot</a></code> | <code>boolean</code> | Use spot instances to save money. |
2802
2757
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.spotMaxPrice">spotMaxPrice</a></code> | <code>string</code> | Set a maximum price for spot instances. |
2803
2758
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.storageSize">storageSize</a></code> | <code>aws-cdk-lib.Size</code> | Size of volume available for launched runner instances. |
2804
2759
  | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.subnet">subnet</a></code> | <code>aws-cdk-lib.aws_ec2.ISubnet</code> | Subnet where the runner instances will be launched. |
2760
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Where to place the network interfaces within the VPC. |
2761
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC where runner instances will be launched. |
2805
2762
 
2806
2763
  ---
2807
2764
 
@@ -2829,7 +2786,7 @@ public readonly amiBuilder: IAmiBuilder;
2829
2786
  ```
2830
2787
 
2831
2788
  - *Type:* <a href="#@cloudsnorkel/cdk-github-runners.IAmiBuilder">IAmiBuilder</a>
2832
- - *Default:* AMI builder for Ubuntu Linux
2789
+ - *Default:* AMI builder for Ubuntu Linux on the same subnet as configured by {@link vpc} and {@link subnetSelection}
2833
2790
 
2834
2791
  AMI builder that creates AMIs with GitHub runner pre-configured.
2835
2792
 
@@ -2867,19 +2824,34 @@ job's labels, this provider will be chosen and spawn a new runner.
2867
2824
 
2868
2825
  ---
2869
2826
 
2870
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.securityGroup"></a>
2827
+ ##### ~~`securityGroup`~~<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.securityGroup"></a>
2828
+
2829
+ - *Deprecated:* use {@link securityGroups}
2871
2830
 
2872
2831
  ```typescript
2873
2832
  public readonly securityGroup: ISecurityGroup;
2874
2833
  ```
2875
2834
 
2876
2835
  - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
2877
- - *Default:* account's default security group
2836
+ - *Default:* a new security group
2878
2837
 
2879
2838
  Security Group to assign to launched runner instances.
2880
2839
 
2881
2840
  ---
2882
2841
 
2842
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.securityGroups"></a>
2843
+
2844
+ ```typescript
2845
+ public readonly securityGroups: ISecurityGroup[];
2846
+ ```
2847
+
2848
+ - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup[]
2849
+ - *Default:* a new security group
2850
+
2851
+ Security groups to assign to launched runner instances.
2852
+
2853
+ ---
2854
+
2883
2855
  ##### `spot`<sup>Optional</sup> <a name="spot" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.spot"></a>
2884
2856
 
2885
2857
  ```typescript
@@ -2923,7 +2895,9 @@ This modifies the boot volume size and doesn't add any additional volumes.
2923
2895
 
2924
2896
  ---
2925
2897
 
2926
- ##### `subnet`<sup>Optional</sup> <a name="subnet" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.subnet"></a>
2898
+ ##### ~~`subnet`~~<sup>Optional</sup> <a name="subnet" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.subnet"></a>
2899
+
2900
+ - *Deprecated:* use {@link vpc} and {@link subnetSelection}
2927
2901
 
2928
2902
  ```typescript
2929
2903
  public readonly subnet: ISubnet;
@@ -2936,6 +2910,34 @@ Subnet where the runner instances will be launched.
2936
2910
 
2937
2911
  ---
2938
2912
 
2913
+ ##### `subnetSelection`<sup>Optional</sup> <a name="subnetSelection" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.subnetSelection"></a>
2914
+
2915
+ ```typescript
2916
+ public readonly subnetSelection: SubnetSelection;
2917
+ ```
2918
+
2919
+ - *Type:* aws-cdk-lib.aws_ec2.SubnetSelection
2920
+ - *Default:* default VPC subnet
2921
+
2922
+ Where to place the network interfaces within the VPC.
2923
+
2924
+ Only the first matched subnet will be used.
2925
+
2926
+ ---
2927
+
2928
+ ##### `vpc`<sup>Optional</sup> <a name="vpc" id="@cloudsnorkel/cdk-github-runners.Ec2RunnerProps.property.vpc"></a>
2929
+
2930
+ ```typescript
2931
+ public readonly vpc: IVpc;
2932
+ ```
2933
+
2934
+ - *Type:* aws-cdk-lib.aws_ec2.IVpc
2935
+ - *Default:* default account VPC
2936
+
2937
+ VPC where runner instances will be launched.
2938
+
2939
+ ---
2940
+
2939
2941
  ### FargateRunnerProps <a name="FargateRunnerProps" id="@cloudsnorkel/cdk-github-runners.FargateRunnerProps"></a>
2940
2942
 
2941
2943
  Properties for FargateRunner.
@@ -2961,7 +2963,8 @@ const fargateRunnerProps: FargateRunnerProps = { ... }
2961
2963
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.label">label</a></code> | <code>string</code> | GitHub Actions label used for this provider. |
2962
2964
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.labels">labels</a></code> | <code>string[]</code> | GitHub Actions labels used for this provider. |
2963
2965
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.memoryLimitMiB">memoryLimitMiB</a></code> | <code>number</code> | The amount (in MiB) of memory used by the task. |
2964
- | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security Group to assign to the task. |
2966
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group to assign to the task. |
2967
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroups">securityGroups</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup[]</code> | Security groups to assign to the task. |
2965
2968
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.spot">spot</a></code> | <code>boolean</code> | Use Fargate spot capacity provider to save money. |
2966
2969
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Subnets to run the runners in. |
2967
2970
  | <code><a href="#@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC to launch the runners in. |
@@ -3130,7 +3133,9 @@ Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - Available c
3130
3133
 
3131
3134
  ---
3132
3135
 
3133
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroup"></a>
3136
+ ##### ~~`securityGroup`~~<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroup"></a>
3137
+
3138
+ - *Deprecated:* use {@link securityGroupss}
3134
3139
 
3135
3140
  ```typescript
3136
3141
  public readonly securityGroup: ISecurityGroup;
@@ -3139,7 +3144,20 @@ public readonly securityGroup: ISecurityGroup;
3139
3144
  - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
3140
3145
  - *Default:* a new security group
3141
3146
 
3142
- Security Group to assign to the task.
3147
+ Security group to assign to the task.
3148
+
3149
+ ---
3150
+
3151
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.FargateRunnerProps.property.securityGroups"></a>
3152
+
3153
+ ```typescript
3154
+ public readonly securityGroups: ISecurityGroup[];
3155
+ ```
3156
+
3157
+ - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup[]
3158
+ - *Default:* a new security group
3159
+
3160
+ Security groups to assign to the task.
3143
3161
 
3144
3162
  ---
3145
3163
 
@@ -3485,7 +3503,8 @@ const lambdaRunnerProps: LambdaRunnerProps = { ... }
3485
3503
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.label">label</a></code> | <code>string</code> | GitHub Actions label used for this provider. |
3486
3504
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.labels">labels</a></code> | <code>string[]</code> | GitHub Actions labels used for this provider. |
3487
3505
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.memorySize">memorySize</a></code> | <code>number</code> | The amount of memory, in MB, that is allocated to your Lambda function. |
3488
- | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security Group to assign to this instance. |
3506
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group to assign to this instance. |
3507
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroups">securityGroups</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup[]</code> | Security groups to assign to this instance. |
3489
3508
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.subnetSelection">subnetSelection</a></code> | <code>aws-cdk-lib.aws_ec2.SubnetSelection</code> | Where to place the network interfaces within the VPC. |
3490
3509
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.timeout">timeout</a></code> | <code>aws-cdk-lib.Duration</code> | The function execution time (in seconds) after which Lambda terminates the function. |
3491
3510
  | <code><a href="#@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC to launch the runners in. |
@@ -3588,7 +3607,9 @@ Developer Guide.
3588
3607
 
3589
3608
  ---
3590
3609
 
3591
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroup"></a>
3610
+ ##### ~~`securityGroup`~~<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroup"></a>
3611
+
3612
+ - *Deprecated:* use {@link securityGroups}
3592
3613
 
3593
3614
  ```typescript
3594
3615
  public readonly securityGroup: ISecurityGroup;
@@ -3597,7 +3618,20 @@ public readonly securityGroup: ISecurityGroup;
3597
3618
  - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
3598
3619
  - *Default:* public lambda with no security group
3599
3620
 
3600
- Security Group to assign to this instance.
3621
+ Security group to assign to this instance.
3622
+
3623
+ ---
3624
+
3625
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.LambdaRunnerProps.property.securityGroups"></a>
3626
+
3627
+ ```typescript
3628
+ public readonly securityGroups: ISecurityGroup[];
3629
+ ```
3630
+
3631
+ - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup[]
3632
+ - *Default:* public lambda with no security group
3633
+
3634
+ Security groups to assign to this instance.
3601
3635
 
3602
3636
  ---
3603
3637
 
@@ -5019,8 +5053,6 @@ grantable for the status function.
5019
5053
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.connections">connections</a></code> | <code>aws-cdk-lib.aws_ec2.Connections</code> | The network connections associated with this resource. |
5020
5054
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.grantPrincipal">grantPrincipal</a></code> | <code>aws-cdk-lib.aws_iam.IPrincipal</code> | The principal to grant permissions to. |
5021
5055
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.labels">labels</a></code> | <code>string[]</code> | GitHub Actions labels used for this provider. |
5022
- | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.securityGroup">securityGroup</a></code> | <code>aws-cdk-lib.aws_ec2.ISecurityGroup</code> | Security group associated with runners. |
5023
- | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.vpc">vpc</a></code> | <code>aws-cdk-lib.aws_ec2.IVpc</code> | VPC network in which runners will be placed. |
5024
5056
 
5025
5057
  ---
5026
5058
 
@@ -5064,30 +5096,6 @@ job's labels, this provider will be chosen and spawn a new runner.
5064
5096
 
5065
5097
  ---
5066
5098
 
5067
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.securityGroup"></a>
5068
-
5069
- ```typescript
5070
- public readonly securityGroup: ISecurityGroup;
5071
- ```
5072
-
5073
- - *Type:* aws-cdk-lib.aws_ec2.ISecurityGroup
5074
-
5075
- Security group associated with runners.
5076
-
5077
- ---
5078
-
5079
- ##### `vpc`<sup>Optional</sup> <a name="vpc" id="@cloudsnorkel/cdk-github-runners.IRunnerProvider.property.vpc"></a>
5080
-
5081
- ```typescript
5082
- public readonly vpc: IVpc;
5083
- ```
5084
-
5085
- - *Type:* aws-cdk-lib.aws_ec2.IVpc
5086
-
5087
- VPC network in which runners will be placed.
5088
-
5089
- ---
5090
-
5091
5099
  ### IRunnerProviderStatus <a name="IRunnerProviderStatus" id="@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus"></a>
5092
5100
 
5093
5101
  - *Implemented By:* <a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus">IRunnerProviderStatus</a>
@@ -5104,7 +5112,7 @@ Interface for runner image status used by status.json.
5104
5112
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.ami">ami</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerAmiStatus">IRunnerAmiStatus</a></code> | Details about AMI used by this runner provider. |
5105
5113
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.image">image</a></code> | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerImageStatus">IRunnerImageStatus</a></code> | Details about Docker image used by this runner provider. |
5106
5114
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.roleArn">roleArn</a></code> | <code>string</code> | Role attached to runners. |
5107
- | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.securityGroup">securityGroup</a></code> | <code>string</code> | Security group attached to runners. |
5115
+ | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.securityGroups">securityGroups</a></code> | <code>string[]</code> | Security groups attached to runners. |
5108
5116
  | <code><a href="#@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.vpcArn">vpcArn</a></code> | <code>string</code> | VPC where runners will be launched. |
5109
5117
 
5110
5118
  ---
@@ -5169,15 +5177,15 @@ Role attached to runners.
5169
5177
 
5170
5178
  ---
5171
5179
 
5172
- ##### `securityGroup`<sup>Optional</sup> <a name="securityGroup" id="@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.securityGroup"></a>
5180
+ ##### `securityGroups`<sup>Optional</sup> <a name="securityGroups" id="@cloudsnorkel/cdk-github-runners.IRunnerProviderStatus.property.securityGroups"></a>
5173
5181
 
5174
5182
  ```typescript
5175
- public readonly securityGroup: string;
5183
+ public readonly securityGroups: string[];
5176
5184
  ```
5177
5185
 
5178
- - *Type:* string
5186
+ - *Type:* string[]
5179
5187
 
5180
- Security group attached to runners.
5188
+ Security groups attached to runners.
5181
5189
 
5182
5190
  ---
5183
5191