@cloudsnorkel/cdk-github-runners 0.14.24 → 0.15.1

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 (142) hide show
  1. package/.jsii +5953 -602
  2. package/API.md +1349 -115
  3. package/README.md +53 -1
  4. package/assets/delete-failed-runner.lambda/index.js +122 -9
  5. package/assets/idle-runner-repear.lambda/index.js +153 -14
  6. package/assets/image-builders/aws-image-builder/delete-resources.lambda/index.js +1 -1
  7. package/assets/image-builders/build-image.lambda/index.js +1 -1
  8. package/assets/providers/ami-root-device.lambda/index.js +1 -1
  9. package/assets/setup.lambda/index.html +7 -7
  10. package/assets/setup.lambda/index.js +118 -8
  11. package/assets/status.lambda/index.js +121 -8
  12. package/assets/token-retriever.lambda/index.js +121 -8
  13. package/assets/warm-runner-manager.lambda/index.js +5909 -0
  14. package/assets/webhook-handler.lambda/index.js +126 -11
  15. package/assets/webhook-redelivery.lambda/index.js +139 -24
  16. package/lib/access.js +1 -1
  17. package/lib/delete-failed-runner.lambda.js +2 -2
  18. package/lib/idle-runner-repear.lambda.js +33 -7
  19. package/lib/image-builders/api.js +1 -1
  20. package/lib/image-builders/aws-image-builder/base-image.d.ts +13 -0
  21. package/lib/image-builders/aws-image-builder/base-image.js +36 -3
  22. package/lib/image-builders/aws-image-builder/builder.js +4 -4
  23. package/lib/image-builders/aws-image-builder/delete-resources.lambda.js +2 -2
  24. package/lib/image-builders/aws-image-builder/deprecated/ami.js +1 -1
  25. package/lib/image-builders/aws-image-builder/deprecated/container.js +1 -1
  26. package/lib/image-builders/aws-image-builder/deprecated/linux-components.js +1 -1
  27. package/lib/image-builders/aws-image-builder/deprecated/windows-components.js +1 -1
  28. package/lib/image-builders/build-image.lambda.js +2 -2
  29. package/lib/image-builders/codebuild-deprecated.js +1 -1
  30. package/lib/image-builders/components.js +3 -3
  31. package/lib/image-builders/static.js +1 -1
  32. package/lib/index.d.ts +1 -0
  33. package/lib/index.js +2 -1
  34. package/lib/lambda-github.d.ts +1 -1
  35. package/lib/lambda-github.js +3 -2
  36. package/lib/lambda-helpers.js +4 -4
  37. package/lib/providers/ami-root-device.lambda.js +2 -2
  38. package/lib/providers/codebuild.d.ts +18 -2
  39. package/lib/providers/codebuild.js +15 -4
  40. package/lib/providers/common.d.ts +47 -3
  41. package/lib/providers/common.js +29 -5
  42. package/lib/providers/composite.js +14 -19
  43. package/lib/providers/ec2.d.ts +9 -2
  44. package/lib/providers/ec2.js +84 -42
  45. package/lib/providers/ecs.d.ts +19 -2
  46. package/lib/providers/ecs.js +49 -44
  47. package/lib/providers/fargate.d.ts +2 -2
  48. package/lib/providers/fargate.js +19 -36
  49. package/lib/providers/lambda.d.ts +2 -2
  50. package/lib/providers/lambda.js +3 -3
  51. package/lib/runner.d.ts +31 -3
  52. package/lib/runner.js +171 -46
  53. package/lib/secrets.js +1 -1
  54. package/lib/setup.lambda.js +2 -2
  55. package/lib/utils.d.ts +10 -1
  56. package/lib/utils.js +15 -1
  57. package/lib/warm-runner-manager-function.d.ts +18 -0
  58. package/lib/warm-runner-manager-function.js +24 -0
  59. package/lib/warm-runner-manager.lambda.d.ts +41 -0
  60. package/lib/warm-runner-manager.lambda.js +487 -0
  61. package/lib/warm-runner.d.ts +155 -0
  62. package/lib/warm-runner.js +217 -0
  63. package/lib/webhook-handler.lambda.js +5 -3
  64. package/lib/webhook-redelivery.lambda.js +17 -16
  65. package/lib/webhook.d.ts +4 -0
  66. package/lib/webhook.js +2 -1
  67. package/node_modules/cron-parser/LICENSE +21 -0
  68. package/node_modules/cron-parser/README.md +408 -0
  69. package/node_modules/cron-parser/dist/CronDate.js +518 -0
  70. package/node_modules/cron-parser/dist/CronExpression.js +520 -0
  71. package/node_modules/cron-parser/dist/CronExpressionParser.js +382 -0
  72. package/node_modules/cron-parser/dist/CronFieldCollection.js +371 -0
  73. package/node_modules/cron-parser/dist/CronFileParser.js +109 -0
  74. package/node_modules/cron-parser/dist/fields/CronDayOfMonth.js +44 -0
  75. package/node_modules/cron-parser/dist/fields/CronDayOfWeek.js +51 -0
  76. package/node_modules/cron-parser/dist/fields/CronField.js +214 -0
  77. package/node_modules/cron-parser/dist/fields/CronHour.js +40 -0
  78. package/node_modules/cron-parser/dist/fields/CronMinute.js +40 -0
  79. package/node_modules/cron-parser/dist/fields/CronMonth.js +44 -0
  80. package/node_modules/cron-parser/dist/fields/CronSecond.js +40 -0
  81. package/node_modules/cron-parser/dist/fields/index.js +24 -0
  82. package/node_modules/cron-parser/dist/fields/types.js +2 -0
  83. package/node_modules/cron-parser/dist/index.js +31 -0
  84. package/node_modules/cron-parser/dist/types/CronDate.d.ts +288 -0
  85. package/node_modules/cron-parser/dist/types/CronExpression.d.ts +118 -0
  86. package/node_modules/cron-parser/dist/types/CronExpressionParser.d.ts +70 -0
  87. package/node_modules/cron-parser/dist/types/CronFieldCollection.d.ts +153 -0
  88. package/node_modules/cron-parser/dist/types/CronFileParser.d.ts +30 -0
  89. package/node_modules/cron-parser/dist/types/fields/CronDayOfMonth.d.ts +25 -0
  90. package/node_modules/cron-parser/dist/types/fields/CronDayOfWeek.d.ts +30 -0
  91. package/node_modules/cron-parser/dist/types/fields/CronField.d.ts +130 -0
  92. package/node_modules/cron-parser/dist/types/fields/CronHour.d.ts +23 -0
  93. package/node_modules/cron-parser/dist/types/fields/CronMinute.d.ts +23 -0
  94. package/node_modules/cron-parser/dist/types/fields/CronMonth.d.ts +24 -0
  95. package/node_modules/cron-parser/dist/types/fields/CronSecond.d.ts +23 -0
  96. package/node_modules/cron-parser/dist/types/fields/index.d.ts +8 -0
  97. package/node_modules/cron-parser/dist/types/fields/types.d.ts +18 -0
  98. package/node_modules/cron-parser/dist/types/index.d.ts +8 -0
  99. package/node_modules/cron-parser/dist/types/utils/random.d.ts +10 -0
  100. package/node_modules/cron-parser/dist/utils/random.js +38 -0
  101. package/node_modules/cron-parser/package.json +117 -0
  102. package/node_modules/luxon/LICENSE.md +7 -0
  103. package/node_modules/luxon/README.md +55 -0
  104. package/node_modules/luxon/build/amd/luxon.js +8741 -0
  105. package/node_modules/luxon/build/amd/luxon.js.map +1 -0
  106. package/node_modules/luxon/build/cjs-browser/luxon.js +8739 -0
  107. package/node_modules/luxon/build/cjs-browser/luxon.js.map +1 -0
  108. package/node_modules/luxon/build/es6/luxon.mjs +8133 -0
  109. package/node_modules/luxon/build/es6/luxon.mjs.map +1 -0
  110. package/node_modules/luxon/build/global/luxon.js +8744 -0
  111. package/node_modules/luxon/build/global/luxon.js.map +1 -0
  112. package/node_modules/luxon/build/global/luxon.min.js +1 -0
  113. package/node_modules/luxon/build/global/luxon.min.js.map +1 -0
  114. package/node_modules/luxon/build/node/luxon.js +7792 -0
  115. package/node_modules/luxon/build/node/luxon.js.map +1 -0
  116. package/node_modules/luxon/package.json +87 -0
  117. package/node_modules/luxon/src/datetime.js +2603 -0
  118. package/node_modules/luxon/src/duration.js +1009 -0
  119. package/node_modules/luxon/src/errors.js +61 -0
  120. package/node_modules/luxon/src/impl/conversions.js +206 -0
  121. package/node_modules/luxon/src/impl/diff.js +95 -0
  122. package/node_modules/luxon/src/impl/digits.js +94 -0
  123. package/node_modules/luxon/src/impl/english.js +233 -0
  124. package/node_modules/luxon/src/impl/formats.js +176 -0
  125. package/node_modules/luxon/src/impl/formatter.js +434 -0
  126. package/node_modules/luxon/src/impl/invalid.js +14 -0
  127. package/node_modules/luxon/src/impl/locale.js +569 -0
  128. package/node_modules/luxon/src/impl/regexParser.js +335 -0
  129. package/node_modules/luxon/src/impl/tokenParser.js +505 -0
  130. package/node_modules/luxon/src/impl/util.js +330 -0
  131. package/node_modules/luxon/src/impl/zoneUtil.js +34 -0
  132. package/node_modules/luxon/src/info.js +205 -0
  133. package/node_modules/luxon/src/interval.js +669 -0
  134. package/node_modules/luxon/src/luxon.js +26 -0
  135. package/node_modules/luxon/src/package.json +4 -0
  136. package/node_modules/luxon/src/settings.js +180 -0
  137. package/node_modules/luxon/src/zone.js +97 -0
  138. package/node_modules/luxon/src/zones/IANAZone.js +235 -0
  139. package/node_modules/luxon/src/zones/fixedOffsetZone.js +150 -0
  140. package/node_modules/luxon/src/zones/invalidZone.js +53 -0
  141. package/node_modules/luxon/src/zones/systemZone.js +61 -0
  142. package/package.json +33 -24
@@ -0,0 +1,61 @@
1
+ import { formatOffset, parseZoneInfo } from "../impl/util.js";
2
+ import Zone from "../zone.js";
3
+
4
+ let singleton = null;
5
+
6
+ /**
7
+ * Represents the local zone for this JavaScript environment.
8
+ * @implements {Zone}
9
+ */
10
+ export default class SystemZone extends Zone {
11
+ /**
12
+ * Get a singleton instance of the local zone
13
+ * @return {SystemZone}
14
+ */
15
+ static get instance() {
16
+ if (singleton === null) {
17
+ singleton = new SystemZone();
18
+ }
19
+ return singleton;
20
+ }
21
+
22
+ /** @override **/
23
+ get type() {
24
+ return "system";
25
+ }
26
+
27
+ /** @override **/
28
+ get name() {
29
+ return new Intl.DateTimeFormat().resolvedOptions().timeZone;
30
+ }
31
+
32
+ /** @override **/
33
+ get isUniversal() {
34
+ return false;
35
+ }
36
+
37
+ /** @override **/
38
+ offsetName(ts, { format, locale }) {
39
+ return parseZoneInfo(ts, format, locale);
40
+ }
41
+
42
+ /** @override **/
43
+ formatOffset(ts, format) {
44
+ return formatOffset(this.offset(ts), format);
45
+ }
46
+
47
+ /** @override **/
48
+ offset(ts) {
49
+ return -new Date(ts).getTimezoneOffset();
50
+ }
51
+
52
+ /** @override **/
53
+ equals(otherZone) {
54
+ return otherZone.type === "system";
55
+ }
56
+
57
+ /** @override **/
58
+ get isValid() {
59
+ return true;
60
+ }
61
+ }
package/package.json CHANGED
@@ -29,6 +29,8 @@
29
29
  "bundle:status.lambda:watch": "npx projen bundle:status.lambda:watch",
30
30
  "bundle:token-retriever.lambda": "npx projen bundle:token-retriever.lambda",
31
31
  "bundle:token-retriever.lambda:watch": "npx projen bundle:token-retriever.lambda:watch",
32
+ "bundle:warm-runner-manager.lambda": "npx projen bundle:warm-runner-manager.lambda",
33
+ "bundle:warm-runner-manager.lambda:watch": "npx projen bundle:warm-runner-manager.lambda:watch",
32
34
  "bundle:webhook-handler.lambda": "npx projen bundle:webhook-handler.lambda",
33
35
  "bundle:webhook-handler.lambda:watch": "npx projen bundle:webhook-handler.lambda:watch",
34
36
  "bundle:webhook-redelivery.lambda": "npx projen bundle:webhook-redelivery.lambda",
@@ -70,46 +72,47 @@
70
72
  "organization": false
71
73
  },
72
74
  "devDependencies": {
73
- "@aws-sdk/client-cloudformation": "^3.980.0",
74
- "@aws-sdk/client-codebuild": "^3.980.0",
75
- "@aws-sdk/client-ec2": "^3.980.0",
76
- "@aws-sdk/client-ecr": "^3.980.0",
77
- "@aws-sdk/client-imagebuilder": "^3.980.0",
78
- "@aws-sdk/client-lambda": "^3.980.0",
79
- "@aws-sdk/client-secrets-manager": "^3.980.0",
80
- "@aws-sdk/client-sfn": "^3.980.0",
81
- "@aws-sdk/client-sns": "^3.980.0",
82
- "@aws-sdk/client-ssm": "^3.980.0",
83
- "@octokit/auth-app": "^8.1.2",
75
+ "@aws-sdk/client-cloudformation": "^3.1014.0",
76
+ "@aws-sdk/client-codebuild": "^3.1014.0",
77
+ "@aws-sdk/client-ec2": "^3.1014.0",
78
+ "@aws-sdk/client-ecr": "^3.1014.0",
79
+ "@aws-sdk/client-imagebuilder": "^3.1014.0",
80
+ "@aws-sdk/client-lambda": "^3.1014.0",
81
+ "@aws-sdk/client-secrets-manager": "^3.1014.0",
82
+ "@aws-sdk/client-sfn": "^3.1014.0",
83
+ "@aws-sdk/client-sns": "^3.1014.0",
84
+ "@aws-sdk/client-sqs": "^3.1014.0",
85
+ "@aws-sdk/client-ssm": "^3.1014.0",
86
+ "@octokit/auth-app": "^8.2.0",
84
87
  "@octokit/core": "^7.0.6",
85
88
  "@octokit/request-error": "^7.1.0",
86
89
  "@octokit/rest": "^22.0.1",
87
90
  "@stylistic/eslint-plugin": "^2",
88
91
  "@sveltejs/vite-plugin-svelte": "^6",
89
92
  "@tsconfig/svelte": "^5",
90
- "@types/aws-lambda": "^8.10.160",
93
+ "@types/aws-lambda": "^8.10.161",
91
94
  "@types/jest": "^29",
92
- "@types/node": "^25.1.0",
95
+ "@types/node": "^25.5.0",
93
96
  "@typescript-eslint/eslint-plugin": "^8",
94
97
  "@typescript-eslint/parser": "^8",
95
98
  "aws-cdk": "^2",
96
- "aws-cdk-lib": "2.155.0",
99
+ "aws-cdk-lib": "2.239.0",
97
100
  "bootstrap": "^5.2.0",
98
101
  "commit-and-tag-version": "^12",
99
- "constructs": "10.0.5",
100
- "esbuild": "^0.27.2",
102
+ "constructs": "10.5.1",
103
+ "esbuild": "^0.27.4",
101
104
  "eslint": "^9",
102
105
  "eslint-import-resolver-typescript": "^2.7.1",
103
106
  "eslint-plugin-import": "^2.32.0",
104
107
  "eslint-plugin-svelte": "^2.29.0",
105
108
  "jest": "^29",
106
109
  "jest-junit": "^16",
107
- "jsii": "~5.8.0",
108
- "jsii-diff": "^1.126.0",
110
+ "jsii": "~5.9.0",
111
+ "jsii-diff": "^1.127.0",
109
112
  "jsii-docgen": "^10.5.0",
110
- "jsii-pacmak": "^1.126.0",
111
- "jsii-rosetta": "~5.8.0",
112
- "projen": "^0.99.9",
113
+ "jsii-pacmak": "^1.127.0",
114
+ "jsii-rosetta": "~5.9.0",
115
+ "projen": "^0.99.21",
113
116
  "sass": "^1.54.0",
114
117
  "svelte": "^5",
115
118
  "svelte-check": "^4",
@@ -121,9 +124,15 @@
121
124
  "vite-plugin-singlefile": "^2"
122
125
  },
123
126
  "peerDependencies": {
124
- "aws-cdk-lib": "^2.155.0",
125
- "constructs": "^10.0.5"
127
+ "aws-cdk-lib": "^2.239.0",
128
+ "constructs": "^10.5.1"
126
129
  },
130
+ "dependencies": {
131
+ "cron-parser": "^5.5.0"
132
+ },
133
+ "bundledDependencies": [
134
+ "cron-parser"
135
+ ],
127
136
  "keywords": [
128
137
  "aws",
129
138
  "aws-cdk",
@@ -141,7 +150,7 @@
141
150
  "publishConfig": {
142
151
  "access": "public"
143
152
  },
144
- "version": "0.14.24",
153
+ "version": "0.15.1",
145
154
  "jest": {
146
155
  "coverageProvider": "v8",
147
156
  "testMatch": [