cloudsnorkel.cdk-github-runners 0.12.3__py3-none-any.whl → 0.12.5__py3-none-any.whl

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.

Potentially problematic release.


This version of cloudsnorkel.cdk-github-runners might be problematic. Click here for more details.

@@ -328,6 +328,9 @@ Other useful metrics to track:
328
328
  1. [philips-labs/terraform-aws-github-runner](https://github.com/philips-labs/terraform-aws-github-runner) if you're using Terraform
329
329
  2. [actions/actions-runner-controller](https://github.com/actions/actions-runner-controller) if you're using Kubernetes
330
330
  '''
331
+ from pkgutil import extend_path
332
+ __path__ = extend_path(__path__, __name__)
333
+
331
334
  import abc
332
335
  import builtins
333
336
  import datetime
@@ -809,26 +812,49 @@ class Architecture(
809
812
  @jsii.data_type(
810
813
  jsii_type="@cloudsnorkel/cdk-github-runners.AwsImageBuilderRunnerImageBuilderProps",
811
814
  jsii_struct_bases=[],
812
- name_mapping={"instance_type": "instanceType"},
815
+ name_mapping={
816
+ "fast_launch_options": "fastLaunchOptions",
817
+ "instance_type": "instanceType",
818
+ },
813
819
  )
814
820
  class AwsImageBuilderRunnerImageBuilderProps:
815
821
  def __init__(
816
822
  self,
817
823
  *,
824
+ fast_launch_options: typing.Optional[typing.Union["FastLaunchOptions", typing.Dict[builtins.str, typing.Any]]] = None,
818
825
  instance_type: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.InstanceType] = None,
819
826
  ) -> None:
820
827
  '''
828
+ :param fast_launch_options: (experimental) Options for fast launch. This is only supported for Windows AMIs. Default: disabled
821
829
  :param instance_type: (experimental) The instance type used to build the image. Default: m5.large
822
830
 
823
831
  :stability: experimental
824
832
  '''
833
+ if isinstance(fast_launch_options, dict):
834
+ fast_launch_options = FastLaunchOptions(**fast_launch_options)
825
835
  if __debug__:
826
836
  type_hints = typing.get_type_hints(_typecheckingstub__fe17585d38b67015c3f03db2aefab095f171e0e0900c9a4564679bbc5a29fd07)
837
+ check_type(argname="argument fast_launch_options", value=fast_launch_options, expected_type=type_hints["fast_launch_options"])
827
838
  check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
828
839
  self._values: typing.Dict[builtins.str, typing.Any] = {}
840
+ if fast_launch_options is not None:
841
+ self._values["fast_launch_options"] = fast_launch_options
829
842
  if instance_type is not None:
830
843
  self._values["instance_type"] = instance_type
831
844
 
845
+ @builtins.property
846
+ def fast_launch_options(self) -> typing.Optional["FastLaunchOptions"]:
847
+ '''(experimental) Options for fast launch.
848
+
849
+ This is only supported for Windows AMIs.
850
+
851
+ :default: disabled
852
+
853
+ :stability: experimental
854
+ '''
855
+ result = self._values.get("fast_launch_options")
856
+ return typing.cast(typing.Optional["FastLaunchOptions"], result)
857
+
832
858
  @builtins.property
833
859
  def instance_type(self) -> typing.Optional[_aws_cdk_aws_ec2_ceddda9d.InstanceType]:
834
860
  '''(experimental) The instance type used to build the image.
@@ -1496,6 +1522,96 @@ class ContainerImageBuilderProps:
1496
1522
  )
1497
1523
 
1498
1524
 
1525
+ @jsii.data_type(
1526
+ jsii_type="@cloudsnorkel/cdk-github-runners.FastLaunchOptions",
1527
+ jsii_struct_bases=[],
1528
+ name_mapping={
1529
+ "enabled": "enabled",
1530
+ "max_parallel_launches": "maxParallelLaunches",
1531
+ "target_resource_count": "targetResourceCount",
1532
+ },
1533
+ )
1534
+ class FastLaunchOptions:
1535
+ def __init__(
1536
+ self,
1537
+ *,
1538
+ enabled: typing.Optional[builtins.bool] = None,
1539
+ max_parallel_launches: typing.Optional[jsii.Number] = None,
1540
+ target_resource_count: typing.Optional[jsii.Number] = None,
1541
+ ) -> None:
1542
+ '''(experimental) Options for fast launch.
1543
+
1544
+ :param enabled: (experimental) Enable fast launch for AMIs generated by this builder. It creates a snapshot of the root volume and uses it to launch new instances faster. This is only supported for Windows AMIs. Default: false
1545
+ :param max_parallel_launches: (experimental) The maximum number of parallel instances that are launched for creating resources. Must be at least 6. Default: 6
1546
+ :param target_resource_count: (experimental) The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI. Default: 1
1547
+
1548
+ :stability: experimental
1549
+ '''
1550
+ if __debug__:
1551
+ type_hints = typing.get_type_hints(_typecheckingstub__d2952ae322a0fd40b480084b183be9e7179337af84efb30a496aa331a22fa562)
1552
+ check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
1553
+ check_type(argname="argument max_parallel_launches", value=max_parallel_launches, expected_type=type_hints["max_parallel_launches"])
1554
+ check_type(argname="argument target_resource_count", value=target_resource_count, expected_type=type_hints["target_resource_count"])
1555
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1556
+ if enabled is not None:
1557
+ self._values["enabled"] = enabled
1558
+ if max_parallel_launches is not None:
1559
+ self._values["max_parallel_launches"] = max_parallel_launches
1560
+ if target_resource_count is not None:
1561
+ self._values["target_resource_count"] = target_resource_count
1562
+
1563
+ @builtins.property
1564
+ def enabled(self) -> typing.Optional[builtins.bool]:
1565
+ '''(experimental) Enable fast launch for AMIs generated by this builder.
1566
+
1567
+ It creates a snapshot of the root volume and uses it to launch new instances faster.
1568
+
1569
+ This is only supported for Windows AMIs.
1570
+
1571
+ :default: false
1572
+
1573
+ :stability: experimental
1574
+ :note: enabling fast launch on an existing builder will not enable it for existing AMIs. It will only affect new AMIs. If you want immediate effect, trigger a new image build. Alternatively, you can create a new builder with fast launch enabled and use it for new AMIs.
1575
+ '''
1576
+ result = self._values.get("enabled")
1577
+ return typing.cast(typing.Optional[builtins.bool], result)
1578
+
1579
+ @builtins.property
1580
+ def max_parallel_launches(self) -> typing.Optional[jsii.Number]:
1581
+ '''(experimental) The maximum number of parallel instances that are launched for creating resources.
1582
+
1583
+ Must be at least 6.
1584
+
1585
+ :default: 6
1586
+
1587
+ :stability: experimental
1588
+ '''
1589
+ result = self._values.get("max_parallel_launches")
1590
+ return typing.cast(typing.Optional[jsii.Number], result)
1591
+
1592
+ @builtins.property
1593
+ def target_resource_count(self) -> typing.Optional[jsii.Number]:
1594
+ '''(experimental) The number of pre-provisioned snapshots to keep on hand for a fast-launch enabled Windows AMI.
1595
+
1596
+ :default: 1
1597
+
1598
+ :stability: experimental
1599
+ '''
1600
+ result = self._values.get("target_resource_count")
1601
+ return typing.cast(typing.Optional[jsii.Number], result)
1602
+
1603
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1604
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1605
+
1606
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1607
+ return not (rhs == self)
1608
+
1609
+ def __repr__(self) -> str:
1610
+ return "FastLaunchOptions(%s)" % ", ".join(
1611
+ k + "=" + repr(v) for k, v in self._values.items()
1612
+ )
1613
+
1614
+
1499
1615
  @jsii.implements(_aws_cdk_aws_ec2_ceddda9d.IConnectable)
1500
1616
  class GitHubRunners(
1501
1617
  _constructs_77d1e7e8.Construct,
@@ -3952,7 +4068,7 @@ class Os(metaclass=jsii.JSIIMeta, jsii_type="@cloudsnorkel/cdk-github-runners.Os
3952
4068
  def LINUX(cls) -> "Os":
3953
4069
  '''(deprecated) Linux.
3954
4070
 
3955
- :deprecated: use {@link LINUX_UBUNTU } or {@link LINUX_AMAZON_2 }
4071
+ :deprecated: use {@link LINUX_UBUNTU } or {@link LINUX_AMAZON_2 } or {@link LINUX_AMAZON_2023 }
3956
4072
 
3957
4073
  :stability: deprecated
3958
4074
  '''
@@ -10230,6 +10346,7 @@ __all__ = [
10230
10346
  "FargateRunner",
10231
10347
  "FargateRunnerProvider",
10232
10348
  "FargateRunnerProviderProps",
10349
+ "FastLaunchOptions",
10233
10350
  "GitHubRunners",
10234
10351
  "GitHubRunnersProps",
10235
10352
  "IConfigurableRunnerImageBuilder",
@@ -10315,6 +10432,7 @@ def _typecheckingstub__41cf6bb0c2118d6cb7d082b7e678fba3dae1f5b8812776005eef7b14e
10315
10432
 
10316
10433
  def _typecheckingstub__fe17585d38b67015c3f03db2aefab095f171e0e0900c9a4564679bbc5a29fd07(
10317
10434
  *,
10435
+ fast_launch_options: typing.Optional[typing.Union[FastLaunchOptions, typing.Dict[builtins.str, typing.Any]]] = None,
10318
10436
  instance_type: typing.Optional[_aws_cdk_aws_ec2_ceddda9d.InstanceType] = None,
10319
10437
  ) -> None:
10320
10438
  """Type checking stubs"""
@@ -10366,6 +10484,15 @@ def _typecheckingstub__b7b6832b84987dee7e16a1e7bde046b812c75e74a268cb3fbf2685d3f
10366
10484
  """Type checking stubs"""
10367
10485
  pass
10368
10486
 
10487
+ def _typecheckingstub__d2952ae322a0fd40b480084b183be9e7179337af84efb30a496aa331a22fa562(
10488
+ *,
10489
+ enabled: typing.Optional[builtins.bool] = None,
10490
+ max_parallel_launches: typing.Optional[jsii.Number] = None,
10491
+ target_resource_count: typing.Optional[jsii.Number] = None,
10492
+ ) -> None:
10493
+ """Type checking stubs"""
10494
+ pass
10495
+
10369
10496
  def _typecheckingstub__c1a45de07d09ed9f4fd0b9051aeff4571ceda633f49c0b30a5058ad6d72fad18(
10370
10497
  scope: _constructs_77d1e7e8.Construct,
10371
10498
  id: builtins.str,
@@ -1,3 +1,6 @@
1
+ from pkgutil import extend_path
2
+ __path__ = extend_path(__path__, __name__)
3
+
1
4
  import abc
2
5
  import builtins
3
6
  import datetime
@@ -15,9 +18,9 @@ import constructs._jsii
15
18
 
16
19
  __jsii_assembly__ = jsii.JSIIAssembly.load(
17
20
  "@cloudsnorkel/cdk-github-runners",
18
- "0.12.3",
21
+ "0.12.5",
19
22
  __name__[0:-6],
20
- "cdk-github-runners@0.12.3.jsii.tgz",
23
+ "cdk-github-runners@0.12.5.jsii.tgz",
21
24
  )
22
25
 
23
26
  __all__ = [
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: cloudsnorkel.cdk-github-runners
3
- Version: 0.12.3
3
+ Version: 0.12.5
4
4
  Summary: CDK construct to create GitHub Actions self-hosted runners. A webhook listens to events and creates ephemeral runners on the fly.
5
5
  Home-page: https://github.com/CloudSnorkel/cdk-github-runners.git
6
6
  Author: Amir Szekely<amir@cloudsnorkel.com>
@@ -22,7 +22,7 @@ Description-Content-Type: text/markdown
22
22
  License-File: LICENSE
23
23
  Requires-Dist: aws-cdk-lib <3.0.0,>=2.110.0
24
24
  Requires-Dist: constructs <11.0.0,>=10.0.5
25
- Requires-Dist: jsii <2.0.0,>=1.94.0
25
+ Requires-Dist: jsii <2.0.0,>=1.96.0
26
26
  Requires-Dist: publication >=0.0.3
27
27
  Requires-Dist: typeguard ~=2.13.3
28
28
 
@@ -0,0 +1,9 @@
1
+ cloudsnorkel/cdk_github_runners/__init__.py,sha256=RwI3I-1LYge7XzLZgipaa5DoVOqrHOulZHLk9G14mZY,587372
2
+ cloudsnorkel/cdk_github_runners/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
3
+ cloudsnorkel/cdk_github_runners/_jsii/__init__.py,sha256=7QCoFE4b6d4QmYiuj89HivMOEpjaJNX8vgfpqrg_Ebc,508
4
+ cloudsnorkel/cdk_github_runners/_jsii/cdk-github-runners@0.12.5.jsii.tgz,sha256=ZsccsyUemCDBLR1-BNemwTIuKNGVGoSqLv94GtBoeyE,1442722
5
+ cloudsnorkel.cdk_github_runners-0.12.5.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
6
+ cloudsnorkel.cdk_github_runners-0.12.5.dist-info/METADATA,sha256=JltjvxbxMtANCF0Eip1JJkjimO5aleDj1ESYEzDBxRw,15681
7
+ cloudsnorkel.cdk_github_runners-0.12.5.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
8
+ cloudsnorkel.cdk_github_runners-0.12.5.dist-info/top_level.txt,sha256=6vUrT-dcGOiRMT4Q6gEQPznoyS7nHOJ269MHpo4DEd8,13
9
+ cloudsnorkel.cdk_github_runners-0.12.5.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.42.0)
2
+ Generator: bdist_wheel (0.43.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,9 +0,0 @@
1
- cloudsnorkel/cdk_github_runners/__init__.py,sha256=3o0Irtw78PsYTBBbD-yyuKRd-eEWNYnaT3nPDuqyr1Q,581558
2
- cloudsnorkel/cdk_github_runners/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
3
- cloudsnorkel/cdk_github_runners/_jsii/__init__.py,sha256=QcBBmypQtu1uT2UQk-PrAs0UXKIPoTV0pjXsOGnbS1M,432
4
- cloudsnorkel/cdk_github_runners/_jsii/cdk-github-runners@0.12.3.jsii.tgz,sha256=vuNMZnzSkDlnvNTVg8lElYKzDuDpYbL7kRzYA2aj8p0,1436753
5
- cloudsnorkel.cdk_github_runners-0.12.3.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
6
- cloudsnorkel.cdk_github_runners-0.12.3.dist-info/METADATA,sha256=X2jnDsARBT519dlStcIfXFKA_UPloJ03PvW4COxVgQ8,15681
7
- cloudsnorkel.cdk_github_runners-0.12.3.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
8
- cloudsnorkel.cdk_github_runners-0.12.3.dist-info/top_level.txt,sha256=6vUrT-dcGOiRMT4Q6gEQPznoyS7nHOJ269MHpo4DEd8,13
9
- cloudsnorkel.cdk_github_runners-0.12.3.dist-info/RECORD,,