@cloudsnorkel/cdk-github-runners 0.10.6 → 0.10.8

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 (57) hide show
  1. package/.jsii +23 -23
  2. package/README.md +2 -2
  3. package/assets/delete-failed-runner.lambda/index.js +476 -442
  4. package/assets/docker-images/codebuild/linux-arm64/Dockerfile +1 -2
  5. package/assets/docker-images/codebuild/linux-x64/Dockerfile +1 -2
  6. package/assets/docker-images/fargate/linux-arm64/Dockerfile +1 -2
  7. package/assets/docker-images/fargate/linux-x64/Dockerfile +1 -2
  8. package/assets/idle-runner-repear.lambda/index.js +470 -438
  9. package/assets/image-builders/aws-image-builder/delete-ami.lambda/index.js +16 -2
  10. package/assets/image-builders/aws-image-builder/filter-failed-builds.lambda/index.js +16 -2
  11. package/assets/image-builders/aws-image-builder/reaper.lambda/index.js +16 -2
  12. package/assets/image-builders/aws-image-builder/versioner.lambda/index.js +95 -66
  13. package/assets/setup.lambda/index.html +1 -1
  14. package/assets/setup.lambda/index.js +205 -173
  15. package/assets/status.lambda/index.js +413 -398
  16. package/assets/token-retriever.lambda/index.js +474 -440
  17. package/assets/webhook-handler.lambda/index.js +29 -10
  18. package/lib/access.js +1 -1
  19. package/lib/delete-failed-runner.lambda.d.ts +2 -1
  20. package/lib/delete-failed-runner.lambda.js +5 -3
  21. package/lib/idle-runner-repear.lambda.d.ts +2 -1
  22. package/lib/idle-runner-repear.lambda.js +5 -3
  23. package/lib/image-builders/api.js +1 -1
  24. package/lib/image-builders/aws-image-builder/builder.js +1 -1
  25. package/lib/image-builders/aws-image-builder/delete-ami.lambda.d.ts +8 -0
  26. package/lib/image-builders/aws-image-builder/delete-ami.lambda.js +5 -3
  27. package/lib/image-builders/aws-image-builder/deprecated/ami.js +1 -1
  28. package/lib/image-builders/aws-image-builder/deprecated/container.js +1 -1
  29. package/lib/image-builders/aws-image-builder/deprecated/linux-components.d.ts +1 -1
  30. package/lib/image-builders/aws-image-builder/deprecated/linux-components.js +11 -12
  31. package/lib/image-builders/aws-image-builder/deprecated/windows-components.js +1 -1
  32. package/lib/image-builders/aws-image-builder/filter-failed-builds.lambda.d.ts +2 -1
  33. package/lib/image-builders/aws-image-builder/filter-failed-builds.lambda.js +5 -3
  34. package/lib/image-builders/aws-image-builder/reaper.lambda.d.ts +8 -0
  35. package/lib/image-builders/aws-image-builder/reaper.lambda.js +5 -3
  36. package/lib/image-builders/aws-image-builder/versioner.lambda.d.ts +5 -0
  37. package/lib/image-builders/aws-image-builder/versioner.lambda.js +20 -12
  38. package/lib/image-builders/codebuild-deprecated.js +1 -1
  39. package/lib/image-builders/components.js +3 -4
  40. package/lib/image-builders/static.js +1 -1
  41. package/lib/providers/codebuild.js +2 -2
  42. package/lib/providers/common.js +3 -3
  43. package/lib/providers/ec2.js +2 -2
  44. package/lib/providers/ecs.js +1 -1
  45. package/lib/providers/fargate.js +2 -2
  46. package/lib/providers/lambda.js +2 -2
  47. package/lib/runner.js +1 -1
  48. package/lib/secrets.js +1 -1
  49. package/lib/setup.lambda.d.ts +3 -0
  50. package/lib/setup.lambda.js +5 -3
  51. package/lib/status.lambda.d.ts +2 -1
  52. package/lib/status.lambda.js +16 -9
  53. package/lib/token-retriever.lambda.d.ts +5 -1
  54. package/lib/token-retriever.lambda.js +5 -3
  55. package/lib/webhook-handler.lambda.d.ts +7 -1
  56. package/lib/webhook-handler.lambda.js +20 -11
  57. package/package.json +14 -13
@@ -5,6 +5,10 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
8
12
  var __copyProps = (to, from, except, desc) => {
9
13
  if (from && typeof from === "object" || typeof from === "function") {
10
14
  for (let key of __getOwnPropNames(from))
@@ -21,8 +25,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
29
 
25
30
  // src/image-builders/aws-image-builder/delete-ami.lambda.ts
31
+ var delete_ami_lambda_exports = {};
32
+ __export(delete_ami_lambda_exports, {
33
+ handler: () => handler
34
+ });
35
+ module.exports = __toCommonJS(delete_ami_lambda_exports);
26
36
  var AWS2 = __toESM(require("aws-sdk"));
27
37
 
28
38
  // src/lambda-helpers.ts
@@ -118,7 +128,7 @@ async function deleteAmis(launchTemplateId, stackName, builderName, deleteAll) {
118
128
  }
119
129
  }
120
130
  }
121
- exports.handler = async function(event, context) {
131
+ async function handler(event, context) {
122
132
  try {
123
133
  console.log(JSON.stringify({ ...event, ResponseURL: "..." }));
124
134
  switch (event.RequestType) {
@@ -140,4 +150,8 @@ exports.handler = async function(event, context) {
140
150
  await customResourceRespond(event, "FAILED", e.message || "Internal Error", context.logStreamName, {});
141
151
  }
142
152
  }
143
- };
153
+ }
154
+ // Annotate the CommonJS export names for ESM import in node:
155
+ 0 && (module.exports = {
156
+ handler
157
+ });
@@ -5,6 +5,10 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
8
12
  var __copyProps = (to, from, except, desc) => {
9
13
  if (from && typeof from === "object" || typeof from === "function") {
10
14
  for (let key of __getOwnPropNames(from))
@@ -21,11 +25,17 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
29
 
25
30
  // src/image-builders/aws-image-builder/filter-failed-builds.lambda.ts
31
+ var filter_failed_builds_lambda_exports = {};
32
+ __export(filter_failed_builds_lambda_exports, {
33
+ handler: () => handler
34
+ });
35
+ module.exports = __toCommonJS(filter_failed_builds_lambda_exports);
26
36
  var AWS = __toESM(require("aws-sdk"));
27
37
  var sns = new AWS.SNS();
28
- exports.handler = async function(event) {
38
+ async function handler(event) {
29
39
  console.log(JSON.stringify(event));
30
40
  for (const record of event.Records) {
31
41
  let message = JSON.parse(record.Sns.Message);
@@ -36,4 +46,8 @@ exports.handler = async function(event) {
36
46
  }).promise();
37
47
  }
38
48
  }
39
- };
49
+ }
50
+ // Annotate the CommonJS export names for ESM import in node:
51
+ 0 && (module.exports = {
52
+ handler
53
+ });
@@ -5,6 +5,10 @@ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
5
  var __getOwnPropNames = Object.getOwnPropertyNames;
6
6
  var __getProtoOf = Object.getPrototypeOf;
7
7
  var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
8
12
  var __copyProps = (to, from, except, desc) => {
9
13
  if (from && typeof from === "object" || typeof from === "function") {
10
14
  for (let key of __getOwnPropNames(from))
@@ -21,8 +25,14 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
24
29
 
25
30
  // src/image-builders/aws-image-builder/reaper.lambda.ts
31
+ var reaper_lambda_exports = {};
32
+ __export(reaper_lambda_exports, {
33
+ handler: () => handler
34
+ });
35
+ module.exports = __toCommonJS(reaper_lambda_exports);
26
36
  var AWS = __toESM(require("aws-sdk"));
27
37
  var ec2 = new AWS.EC2();
28
38
  var ecr = new AWS.ECR();
@@ -144,7 +154,7 @@ async function dockerImagesGone(dockerImages) {
144
154
  console.log("All Docker images are gone, so we can delete the image version build");
145
155
  return true;
146
156
  }
147
- exports.handler = async function(event, _context) {
157
+ async function handler(event, _context) {
148
158
  var _a, _b;
149
159
  for (const imageVersion of await iterateImageVersions(event.RecipeName)) {
150
160
  for (const imageBuildVersion of await iterateImageBuildVersions(imageVersion)) {
@@ -160,4 +170,8 @@ exports.handler = async function(event, _context) {
160
170
  }
161
171
  }
162
172
  }
163
- };
173
+ }
174
+ // Annotate the CommonJS export names for ESM import in node:
175
+ 0 && (module.exports = {
176
+ handler
177
+ });
@@ -39,6 +39,7 @@ var require_constants = __commonJS({
39
39
  var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || /* istanbul ignore next */
40
40
  9007199254740991;
41
41
  var MAX_SAFE_COMPONENT_LENGTH = 16;
42
+ var MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6;
42
43
  var RELEASE_TYPES = [
43
44
  "major",
44
45
  "premajor",
@@ -51,6 +52,7 @@ var require_constants = __commonJS({
51
52
  module2.exports = {
52
53
  MAX_LENGTH,
53
54
  MAX_SAFE_COMPONENT_LENGTH,
55
+ MAX_SAFE_BUILD_LENGTH,
54
56
  MAX_SAFE_INTEGER,
55
57
  RELEASE_TYPES,
56
58
  SEMVER_SPEC_VERSION,
@@ -74,30 +76,49 @@ var require_debug = __commonJS({
74
76
  var require_re = __commonJS({
75
77
  "node_modules/semver/internal/re.js"(exports, module2) {
76
78
  "use strict";
77
- var { MAX_SAFE_COMPONENT_LENGTH } = require_constants();
79
+ var {
80
+ MAX_SAFE_COMPONENT_LENGTH,
81
+ MAX_SAFE_BUILD_LENGTH,
82
+ MAX_LENGTH
83
+ } = require_constants();
78
84
  var debug = require_debug();
79
85
  exports = module2.exports = {};
80
86
  var re = exports.re = [];
87
+ var safeRe = exports.safeRe = [];
81
88
  var src = exports.src = [];
82
89
  var t = exports.t = {};
83
90
  var R = 0;
91
+ var LETTERDASHNUMBER = "[a-zA-Z0-9-]";
92
+ var safeRegexReplacements = [
93
+ ["\\s", 1],
94
+ ["\\d", MAX_LENGTH],
95
+ [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH]
96
+ ];
97
+ var makeSafeRegex = (value) => {
98
+ for (const [token, max] of safeRegexReplacements) {
99
+ value = value.split(`${token}*`).join(`${token}{0,${max}}`).split(`${token}+`).join(`${token}{1,${max}}`);
100
+ }
101
+ return value;
102
+ };
84
103
  var createToken = (name, value, isGlobal) => {
104
+ const safe = makeSafeRegex(value);
85
105
  const index = R++;
86
106
  debug(name, index, value);
87
107
  t[name] = index;
88
108
  src[index] = value;
89
109
  re[index] = new RegExp(value, isGlobal ? "g" : void 0);
110
+ safeRe[index] = new RegExp(safe, isGlobal ? "g" : void 0);
90
111
  };
91
112
  createToken("NUMERICIDENTIFIER", "0|[1-9]\\d*");
92
- createToken("NUMERICIDENTIFIERLOOSE", "[0-9]+");
93
- createToken("NONNUMERICIDENTIFIER", "\\d*[a-zA-Z-][a-zA-Z0-9-]*");
113
+ createToken("NUMERICIDENTIFIERLOOSE", "\\d+");
114
+ createToken("NONNUMERICIDENTIFIER", `\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`);
94
115
  createToken("MAINVERSION", `(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})\\.(${src[t.NUMERICIDENTIFIER]})`);
95
116
  createToken("MAINVERSIONLOOSE", `(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})\\.(${src[t.NUMERICIDENTIFIERLOOSE]})`);
96
117
  createToken("PRERELEASEIDENTIFIER", `(?:${src[t.NUMERICIDENTIFIER]}|${src[t.NONNUMERICIDENTIFIER]})`);
97
118
  createToken("PRERELEASEIDENTIFIERLOOSE", `(?:${src[t.NUMERICIDENTIFIERLOOSE]}|${src[t.NONNUMERICIDENTIFIER]})`);
98
119
  createToken("PRERELEASE", `(?:-(${src[t.PRERELEASEIDENTIFIER]}(?:\\.${src[t.PRERELEASEIDENTIFIER]})*))`);
99
120
  createToken("PRERELEASELOOSE", `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`);
100
- createToken("BUILDIDENTIFIER", "[0-9A-Za-z-]+");
121
+ createToken("BUILDIDENTIFIER", `${LETTERDASHNUMBER}+`);
101
122
  createToken("BUILD", `(?:\\+(${src[t.BUILDIDENTIFIER]}(?:\\.${src[t.BUILDIDENTIFIER]})*))`);
102
123
  createToken("FULLPLAIN", `v?${src[t.MAINVERSION]}${src[t.PRERELEASE]}?${src[t.BUILD]}?`);
103
124
  createToken("FULL", `^${src[t.FULLPLAIN]}$`);
@@ -181,13 +202,13 @@ var require_semver = __commonJS({
181
202
  "use strict";
182
203
  var debug = require_debug();
183
204
  var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
184
- var { re, t } = require_re();
205
+ var { safeRe: re, t } = require_re();
185
206
  var parseOptions = require_parse_options();
186
207
  var { compareIdentifiers } = require_identifiers();
187
- var SemVer = class {
208
+ var SemVer = class _SemVer {
188
209
  constructor(version, options) {
189
210
  options = parseOptions(options);
190
- if (version instanceof SemVer) {
211
+ if (version instanceof _SemVer) {
191
212
  if (version.loose === !!options.loose && version.includePrerelease === !!options.includePrerelease) {
192
213
  return version;
193
214
  } else {
@@ -250,11 +271,11 @@ var require_semver = __commonJS({
250
271
  }
251
272
  compare(other) {
252
273
  debug("SemVer.compare", this.version, this.options, other);
253
- if (!(other instanceof SemVer)) {
274
+ if (!(other instanceof _SemVer)) {
254
275
  if (typeof other === "string" && other === this.version) {
255
276
  return 0;
256
277
  }
257
- other = new SemVer(other, this.options);
278
+ other = new _SemVer(other, this.options);
258
279
  }
259
280
  if (other.version === this.version) {
260
281
  return 0;
@@ -262,14 +283,14 @@ var require_semver = __commonJS({
262
283
  return this.compareMain(other) || this.comparePre(other);
263
284
  }
264
285
  compareMain(other) {
265
- if (!(other instanceof SemVer)) {
266
- other = new SemVer(other, this.options);
286
+ if (!(other instanceof _SemVer)) {
287
+ other = new _SemVer(other, this.options);
267
288
  }
268
289
  return compareIdentifiers(this.major, other.major) || compareIdentifiers(this.minor, other.minor) || compareIdentifiers(this.patch, other.patch);
269
290
  }
270
291
  comparePre(other) {
271
- if (!(other instanceof SemVer)) {
272
- other = new SemVer(other, this.options);
292
+ if (!(other instanceof _SemVer)) {
293
+ other = new _SemVer(other, this.options);
273
294
  }
274
295
  if (this.prerelease.length && !other.prerelease.length) {
275
296
  return -1;
@@ -297,8 +318,8 @@ var require_semver = __commonJS({
297
318
  } while (++i);
298
319
  }
299
320
  compareBuild(other) {
300
- if (!(other instanceof SemVer)) {
301
- other = new SemVer(other, this.options);
321
+ if (!(other instanceof _SemVer)) {
322
+ other = new _SemVer(other, this.options);
302
323
  }
303
324
  let i = 0;
304
325
  do {
@@ -407,8 +428,10 @@ var require_semver = __commonJS({
407
428
  default:
408
429
  throw new Error(`invalid increment argument: ${release}`);
409
430
  }
410
- this.format();
411
- this.raw = this.version;
431
+ this.raw = this.format();
432
+ if (this.build.length) {
433
+ this.raw += `+${this.build.join(".")}`;
434
+ }
412
435
  return this;
413
436
  }
414
437
  };
@@ -504,6 +527,19 @@ var require_diff = __commonJS({
504
527
  const highVersion = v1Higher ? v1 : v2;
505
528
  const lowVersion = v1Higher ? v2 : v1;
506
529
  const highHasPre = !!highVersion.prerelease.length;
530
+ const lowHasPre = !!lowVersion.prerelease.length;
531
+ if (lowHasPre && !highHasPre) {
532
+ if (!lowVersion.patch && !lowVersion.minor) {
533
+ return "major";
534
+ }
535
+ if (highVersion.patch) {
536
+ return "patch";
537
+ }
538
+ if (highVersion.minor) {
539
+ return "minor";
540
+ }
541
+ return "major";
542
+ }
507
543
  const prefix = highHasPre ? "pre" : "";
508
544
  if (v1.major !== v2.major) {
509
545
  return prefix + "major";
@@ -514,16 +550,7 @@ var require_diff = __commonJS({
514
550
  if (v1.patch !== v2.patch) {
515
551
  return prefix + "patch";
516
552
  }
517
- if (highHasPre) {
518
- return "prerelease";
519
- }
520
- if (lowVersion.patch) {
521
- return "patch";
522
- }
523
- if (lowVersion.minor) {
524
- return "minor";
525
- }
526
- return "major";
553
+ return "prerelease";
527
554
  };
528
555
  module2.exports = diff;
529
556
  }
@@ -752,7 +779,7 @@ var require_coerce = __commonJS({
752
779
  "use strict";
753
780
  var SemVer = require_semver();
754
781
  var parse = require_parse();
755
- var { re, t } = require_re();
782
+ var { safeRe: re, t } = require_re();
756
783
  var coerce = (version, options) => {
757
784
  if (version instanceof SemVer) {
758
785
  return version;
@@ -1443,14 +1470,14 @@ var require_lru_cache = __commonJS({
1443
1470
  var require_range = __commonJS({
1444
1471
  "node_modules/semver/classes/range.js"(exports, module2) {
1445
1472
  "use strict";
1446
- var Range = class {
1473
+ var Range = class _Range {
1447
1474
  constructor(range, options) {
1448
1475
  options = parseOptions(options);
1449
- if (range instanceof Range) {
1476
+ if (range instanceof _Range) {
1450
1477
  if (range.loose === !!options.loose && range.includePrerelease === !!options.includePrerelease) {
1451
1478
  return range;
1452
1479
  } else {
1453
- return new Range(range.raw, options);
1480
+ return new _Range(range.raw, options);
1454
1481
  }
1455
1482
  }
1456
1483
  if (range instanceof Comparator) {
@@ -1462,10 +1489,10 @@ var require_range = __commonJS({
1462
1489
  this.options = options;
1463
1490
  this.loose = !!options.loose;
1464
1491
  this.includePrerelease = !!options.includePrerelease;
1465
- this.raw = range;
1466
- this.set = range.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
1492
+ this.raw = range.trim().split(/\s+/).join(" ");
1493
+ this.set = this.raw.split("||").map((r) => this.parseRange(r.trim())).filter((c) => c.length);
1467
1494
  if (!this.set.length) {
1468
- throw new TypeError(`Invalid SemVer Range: ${range}`);
1495
+ throw new TypeError(`Invalid SemVer Range: ${this.raw}`);
1469
1496
  }
1470
1497
  if (this.set.length > 1) {
1471
1498
  const first = this.set[0];
@@ -1484,16 +1511,13 @@ var require_range = __commonJS({
1484
1511
  this.format();
1485
1512
  }
1486
1513
  format() {
1487
- this.range = this.set.map((comps) => {
1488
- return comps.join(" ").trim();
1489
- }).join("||").trim();
1514
+ this.range = this.set.map((comps) => comps.join(" ").trim()).join("||").trim();
1490
1515
  return this.range;
1491
1516
  }
1492
1517
  toString() {
1493
1518
  return this.range;
1494
1519
  }
1495
1520
  parseRange(range) {
1496
- range = range.trim();
1497
1521
  const memoOpts = (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) | (this.options.loose && FLAG_LOOSE);
1498
1522
  const memoKey = memoOpts + ":" + range;
1499
1523
  const cached = cache.get(memoKey);
@@ -1507,8 +1531,9 @@ var require_range = __commonJS({
1507
1531
  range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace);
1508
1532
  debug("comparator trim", range);
1509
1533
  range = range.replace(re[t.TILDETRIM], tildeTrimReplace);
1534
+ debug("tilde trim", range);
1510
1535
  range = range.replace(re[t.CARETTRIM], caretTrimReplace);
1511
- range = range.split(/\s+/).join(" ");
1536
+ debug("caret trim", range);
1512
1537
  let rangeList = range.split(" ").map((comp) => parseComparator(comp, this.options)).join(" ").split(/\s+/).map((comp) => replaceGTE0(comp, this.options));
1513
1538
  if (loose) {
1514
1539
  rangeList = rangeList.filter((comp) => {
@@ -1533,7 +1558,7 @@ var require_range = __commonJS({
1533
1558
  return result;
1534
1559
  }
1535
1560
  intersects(range, options) {
1536
- if (!(range instanceof Range)) {
1561
+ if (!(range instanceof _Range)) {
1537
1562
  throw new TypeError("a Range is required");
1538
1563
  }
1539
1564
  return this.set.some((thisComparators) => {
@@ -1574,7 +1599,7 @@ var require_range = __commonJS({
1574
1599
  var debug = require_debug();
1575
1600
  var SemVer = require_semver();
1576
1601
  var {
1577
- re,
1602
+ safeRe: re,
1578
1603
  t,
1579
1604
  comparatorTrimReplace,
1580
1605
  tildeTrimReplace,
@@ -1608,9 +1633,9 @@ var require_range = __commonJS({
1608
1633
  return comp;
1609
1634
  };
1610
1635
  var isX = (id) => !id || id.toLowerCase() === "x" || id === "*";
1611
- var replaceTildes = (comp, options) => comp.trim().split(/\s+/).map((c) => {
1612
- return replaceTilde(c, options);
1613
- }).join(" ");
1636
+ var replaceTildes = (comp, options) => {
1637
+ return comp.trim().split(/\s+/).map((c) => replaceTilde(c, options)).join(" ");
1638
+ };
1614
1639
  var replaceTilde = (comp, options) => {
1615
1640
  const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE];
1616
1641
  return comp.replace(r, (_, M, m, p, pr) => {
@@ -1632,9 +1657,9 @@ var require_range = __commonJS({
1632
1657
  return ret;
1633
1658
  });
1634
1659
  };
1635
- var replaceCarets = (comp, options) => comp.trim().split(/\s+/).map((c) => {
1636
- return replaceCaret(c, options);
1637
- }).join(" ");
1660
+ var replaceCarets = (comp, options) => {
1661
+ return comp.trim().split(/\s+/).map((c) => replaceCaret(c, options)).join(" ");
1662
+ };
1638
1663
  var replaceCaret = (comp, options) => {
1639
1664
  debug("caret", comp, options);
1640
1665
  const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET];
@@ -1681,9 +1706,7 @@ var require_range = __commonJS({
1681
1706
  };
1682
1707
  var replaceXRanges = (comp, options) => {
1683
1708
  debug("replaceXRanges", comp, options);
1684
- return comp.split(/\s+/).map((c) => {
1685
- return replaceXRange(c, options);
1686
- }).join(" ");
1709
+ return comp.split(/\s+/).map((c) => replaceXRange(c, options)).join(" ");
1687
1710
  };
1688
1711
  var replaceXRange = (comp, options) => {
1689
1712
  comp = comp.trim();
@@ -1806,19 +1829,20 @@ var require_comparator = __commonJS({
1806
1829
  "node_modules/semver/classes/comparator.js"(exports, module2) {
1807
1830
  "use strict";
1808
1831
  var ANY = Symbol("SemVer ANY");
1809
- var Comparator = class {
1832
+ var Comparator = class _Comparator {
1810
1833
  static get ANY() {
1811
1834
  return ANY;
1812
1835
  }
1813
1836
  constructor(comp, options) {
1814
1837
  options = parseOptions(options);
1815
- if (comp instanceof Comparator) {
1838
+ if (comp instanceof _Comparator) {
1816
1839
  if (comp.loose === !!options.loose) {
1817
1840
  return comp;
1818
1841
  } else {
1819
1842
  comp = comp.value;
1820
1843
  }
1821
1844
  }
1845
+ comp = comp.trim().split(/\s+/).join(" ");
1822
1846
  debug("comparator", comp, options);
1823
1847
  this.options = options;
1824
1848
  this.loose = !!options.loose;
@@ -1864,7 +1888,7 @@ var require_comparator = __commonJS({
1864
1888
  return cmp(version, this.operator, this.semver, this.options);
1865
1889
  }
1866
1890
  intersects(comp, options) {
1867
- if (!(comp instanceof Comparator)) {
1891
+ if (!(comp instanceof _Comparator)) {
1868
1892
  throw new TypeError("a Comparator is required");
1869
1893
  }
1870
1894
  if (this.operator === "") {
@@ -1905,7 +1929,7 @@ var require_comparator = __commonJS({
1905
1929
  };
1906
1930
  module2.exports = Comparator;
1907
1931
  var parseOptions = require_parse_options();
1908
- var { re, t } = require_re();
1932
+ var { safeRe: re, t } = require_re();
1909
1933
  var cmp = require_cmp();
1910
1934
  var debug = require_debug();
1911
1935
  var SemVer = require_semver();
@@ -2485,7 +2509,8 @@ var require_semver2 = __commonJS({
2485
2509
  // src/image-builders/aws-image-builder/versioner.lambda.ts
2486
2510
  var versioner_lambda_exports = {};
2487
2511
  __export(versioner_lambda_exports, {
2488
- handler: () => handler
2512
+ handler: () => handler,
2513
+ increaseVersion: () => increaseVersion
2489
2514
  });
2490
2515
  module.exports = __toCommonJS(versioner_lambda_exports);
2491
2516
  var AWS2 = __toESM(require("aws-sdk"));
@@ -2530,6 +2555,18 @@ async function customResourceRespond(event, responseStatus, reason, physicalReso
2530
2555
 
2531
2556
  // src/image-builders/aws-image-builder/versioner.lambda.ts
2532
2557
  var ib = new AWS2.Imagebuilder();
2558
+ function increaseVersion(allVersions) {
2559
+ let version = (0, import_semver.maxSatisfying)(allVersions, ">=0.0.0");
2560
+ if (version === null) {
2561
+ version = "1.0.0";
2562
+ }
2563
+ console.log(`Found versions ${allVersions} -- latest is ${version}`);
2564
+ version = (0, import_semver.inc)(version, "patch");
2565
+ if (version === null) {
2566
+ throw new Error("Unable to bump version");
2567
+ }
2568
+ return version;
2569
+ }
2533
2570
  async function handler(event, context) {
2534
2571
  console.log(JSON.stringify({ ...event, ResponseURL: "..." }));
2535
2572
  try {
@@ -2538,7 +2575,6 @@ async function handler(event, context) {
2538
2575
  switch (event.RequestType) {
2539
2576
  case "Create":
2540
2577
  case "Update":
2541
- let version = "1.0.0";
2542
2578
  let allVersions = [];
2543
2579
  try {
2544
2580
  switch (objectType) {
@@ -2598,15 +2634,7 @@ async function handler(event, context) {
2598
2634
  console.log("Resource not found, assuming first version");
2599
2635
  }
2600
2636
  }
2601
- version = (0, import_semver.maxSatisfying)(allVersions, ">=0.0.0");
2602
- if (version === null) {
2603
- version = "1.0.0";
2604
- }
2605
- console.log(`Found versions ${allVersions} -- latest is ${version}`);
2606
- version = (0, import_semver.inc)(version, "patch");
2607
- if (version === null) {
2608
- throw new Error("Unable to bump version");
2609
- }
2637
+ const version = increaseVersion(allVersions);
2610
2638
  await customResourceRespond(event, "SUCCESS", "OK", version, {});
2611
2639
  break;
2612
2640
  case "Delete":
@@ -2620,5 +2648,6 @@ async function handler(event, context) {
2620
2648
  }
2621
2649
  // Annotate the CommonJS export names for ESM import in node:
2622
2650
  0 && (module.exports = {
2623
- handler
2651
+ handler,
2652
+ increaseVersion
2624
2653
  });