pepr 0.46.2-nightly.0 → 0.46.2-nightly.2
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/cli.js +79 -23
- package/dist/controller.js +1 -1
- package/dist/lib.js +124 -38
- package/dist/lib.js.map +2 -2
- package/dist/src/cli/init/templates.d.ts +2 -2
- package/dist/src/cli/init/templates.d.ts.map +1 -1
- package/dist/src/lib/assets/assets.d.ts.map +1 -1
- package/dist/src/lib/assets/defaultTestObjects.d.ts.map +1 -1
- package/dist/src/lib/assets/deploy.d.ts.map +1 -1
- package/dist/src/lib/assets/index.d.ts.map +1 -1
- package/dist/src/lib/assets/pods.d.ts.map +1 -1
- package/dist/src/lib/assets/webhooks.d.ts.map +1 -1
- package/dist/src/lib/assets/yaml/generateAllYaml.d.ts.map +1 -1
- package/dist/src/lib/controller/index.d.ts.map +1 -1
- package/dist/src/lib/core/capability.d.ts.map +1 -1
- package/dist/src/lib/core/module.d.ts.map +1 -1
- package/dist/src/lib/core/storage.d.ts.map +1 -1
- package/dist/src/lib/deploymentChecks.d.ts.map +1 -1
- package/dist/src/lib/filter/adjudicators/admissionRequest.d.ts.map +1 -1
- package/dist/src/lib/filter/adjudicators/binding.d.ts.map +1 -1
- package/dist/src/lib/filter/adjudicators/kubernetesObject.d.ts.map +1 -1
- package/dist/src/lib/filter/adjudicators/mismatch.d.ts.map +1 -1
- package/dist/src/lib/filter/adjudicators/postCollection.d.ts.map +1 -1
- package/dist/src/lib/filter/filter.d.ts.map +1 -1
- package/dist/src/lib/helpers.d.ts.map +1 -1
- package/dist/src/lib/included-files.d.ts.map +1 -1
- package/dist/src/lib/processors/decode-utils.d.ts.map +1 -1
- package/dist/src/lib/processors/mutate-processor.d.ts.map +1 -1
- package/dist/src/lib/processors/validate-processor.d.ts.map +1 -1
- package/dist/src/lib/processors/watch-processor.d.ts.map +1 -1
- package/dist/src/lib/telemetry/metrics.d.ts.map +1 -1
- package/dist/src/lib/telemetry/webhookTimeouts.d.ts.map +1 -1
- package/package.json +4 -5
- package/src/lib/assets/assets.ts +46 -11
- package/src/lib/assets/defaultTestObjects.ts +13 -2
- package/src/lib/assets/deploy.ts +25 -5
- package/src/lib/assets/index.ts +8 -2
- package/src/lib/assets/pods.ts +5 -1
- package/src/lib/assets/webhooks.ts +12 -3
- package/src/lib/assets/yaml/generateAllYaml.ts +12 -2
- package/src/lib/controller/index.ts +9 -3
- package/src/lib/core/capability.ts +32 -8
- package/src/lib/core/module.ts +5 -1
- package/src/lib/core/storage.ts +3 -1
- package/src/lib/deploymentChecks.ts +3 -1
- package/src/lib/filter/adjudicators/admissionRequest.ts +4 -1
- package/src/lib/filter/adjudicators/binding.ts +17 -4
- package/src/lib/filter/adjudicators/kubernetesObject.ts +4 -2
- package/src/lib/filter/adjudicators/mismatch.ts +25 -6
- package/src/lib/filter/adjudicators/postCollection.ts +15 -3
- package/src/lib/filter/filter.ts +63 -15
- package/src/lib/helpers.ts +36 -10
- package/src/lib/included-files.ts +5 -1
- package/src/lib/processors/decode-utils.ts +4 -1
- package/src/lib/processors/mutate-processor.ts +4 -1
- package/src/lib/processors/validate-processor.ts +4 -1
- package/src/lib/processors/watch-processor.ts +49 -19
- package/src/lib/telemetry/metrics.ts +6 -2
- package/src/lib/telemetry/webhookTimeouts.ts +4 -1
- package/src/templates/.prettierrc.json +3 -2
- package/src/templates/capabilities/hello-pepr.ts +2 -8
- package/dist/src/sdk/cosign.d.ts +0 -18
- package/dist/src/sdk/cosign.d.ts.map +0 -1
- package/src/lib/.prettierrc +0 -14
- package/src/sdk/cosign.ts +0 -327
package/dist/lib.js
CHANGED
|
@@ -192,7 +192,9 @@ var Storage = class {
|
|
|
192
192
|
return new Promise((resolve, reject) => {
|
|
193
193
|
record.timeout = setTimeout(() => {
|
|
194
194
|
record.unsubscribe();
|
|
195
|
-
return reject(
|
|
195
|
+
return reject(
|
|
196
|
+
`MAX_WAIT_TIME elapsed: Key ${key} still seen after ${MAX_WAIT_TIME / 1e3}s`
|
|
197
|
+
);
|
|
196
198
|
}, MAX_WAIT_TIME);
|
|
197
199
|
record.unsubscribe = this.subscribe((data) => {
|
|
198
200
|
if (!Object.hasOwn(data, `${v2UnescapedStoreKey(key)}`)) {
|
|
@@ -554,7 +556,16 @@ var Capability = class {
|
|
|
554
556
|
};
|
|
555
557
|
const bindings = this.#bindings;
|
|
556
558
|
const prefix = `${this.#name}: ${model.name}`;
|
|
557
|
-
const commonChain = {
|
|
559
|
+
const commonChain = {
|
|
560
|
+
WithLabel,
|
|
561
|
+
WithAnnotation,
|
|
562
|
+
WithDeletionTimestamp,
|
|
563
|
+
Mutate,
|
|
564
|
+
Validate,
|
|
565
|
+
Watch,
|
|
566
|
+
Reconcile,
|
|
567
|
+
Alias
|
|
568
|
+
};
|
|
558
569
|
const isNotEmpty = (value) => Object.keys(value).length > 0;
|
|
559
570
|
const log = (message, cbString) => {
|
|
560
571
|
const filteredObj = (0, import_ramda2.pickBy)(isNotEmpty, binding.filters);
|
|
@@ -570,7 +581,9 @@ var Capability = class {
|
|
|
570
581
|
...binding,
|
|
571
582
|
isValidate: true,
|
|
572
583
|
validateCallback: async (req, logger = aliasLogger) => {
|
|
573
|
-
logger_default.info(
|
|
584
|
+
logger_default.info(
|
|
585
|
+
`Executing validate action with alias: ${binding.alias || "no alias provided"}`
|
|
586
|
+
);
|
|
574
587
|
return await validateCallback(req, logger);
|
|
575
588
|
}
|
|
576
589
|
});
|
|
@@ -585,7 +598,9 @@ var Capability = class {
|
|
|
585
598
|
...binding,
|
|
586
599
|
isMutate: true,
|
|
587
600
|
mutateCallback: async (req, logger = aliasLogger) => {
|
|
588
|
-
logger_default.info(
|
|
601
|
+
logger_default.info(
|
|
602
|
+
`Executing mutation action with alias: ${binding.alias || "no alias provided"}`
|
|
603
|
+
);
|
|
589
604
|
await mutateCallback(req, logger);
|
|
590
605
|
}
|
|
591
606
|
});
|
|
@@ -595,7 +610,9 @@ var Capability = class {
|
|
|
595
610
|
function Watch(watchCallback) {
|
|
596
611
|
if (registerWatch) {
|
|
597
612
|
log("Watch Action", watchCallback.toString());
|
|
598
|
-
const aliasLogger = logger_default.child({
|
|
613
|
+
const aliasLogger = logger_default.child({
|
|
614
|
+
alias: binding.alias || "no alias provided"
|
|
615
|
+
});
|
|
599
616
|
bindings.push({
|
|
600
617
|
...binding,
|
|
601
618
|
isWatch: true,
|
|
@@ -610,13 +627,17 @@ var Capability = class {
|
|
|
610
627
|
function Reconcile(reconcileCallback) {
|
|
611
628
|
if (registerWatch) {
|
|
612
629
|
log("Reconcile Action", reconcileCallback.toString());
|
|
613
|
-
const aliasLogger = logger_default.child({
|
|
630
|
+
const aliasLogger = logger_default.child({
|
|
631
|
+
alias: binding.alias || "no alias provided"
|
|
632
|
+
});
|
|
614
633
|
bindings.push({
|
|
615
634
|
...binding,
|
|
616
635
|
isWatch: true,
|
|
617
636
|
isQueue: true,
|
|
618
637
|
watchCallback: async (update, phase, logger = aliasLogger) => {
|
|
619
|
-
logger_default.info(
|
|
638
|
+
logger_default.info(
|
|
639
|
+
`Executing reconcile action with alias: ${binding.alias || "no alias provided"}`
|
|
640
|
+
);
|
|
620
641
|
await reconcileCallback(update, phase, logger);
|
|
621
642
|
}
|
|
622
643
|
});
|
|
@@ -643,7 +664,9 @@ var Capability = class {
|
|
|
643
664
|
isFinalize: true,
|
|
644
665
|
event: "UPDATE" /* UPDATE */,
|
|
645
666
|
finalizeCallback: async (update, logger = aliasLogger) => {
|
|
646
|
-
logger_default.info(
|
|
667
|
+
logger_default.info(
|
|
668
|
+
`Executing finalize action with alias: ${binding.alias || "no alias provided"}`
|
|
669
|
+
);
|
|
647
670
|
return await finalizeCallback(update, logger);
|
|
648
671
|
}
|
|
649
672
|
};
|
|
@@ -750,7 +773,9 @@ var MetricsCollector = class {
|
|
|
750
773
|
this.addSummary(this.#metricNames.mutate, "Mutation operation summary");
|
|
751
774
|
this.addSummary(this.#metricNames.validate, "Validation operation summary");
|
|
752
775
|
this.addGauge(this.#metricNames.cacheMiss, "Number of cache misses per window", ["window"]);
|
|
753
|
-
this.addGauge(this.#metricNames.resyncFailureCount, "Number of failures per resync operation", [
|
|
776
|
+
this.addGauge(this.#metricNames.resyncFailureCount, "Number of failures per resync operation", [
|
|
777
|
+
"count"
|
|
778
|
+
]);
|
|
754
779
|
}
|
|
755
780
|
#getMetricName = (name2) => `${this.#prefix}_${name2}`;
|
|
756
781
|
#addMetric = (collection, MetricType, { name: name2, help, labelNames }) => {
|
|
@@ -861,7 +886,10 @@ var MeasureWebhookTimeout = class {
|
|
|
861
886
|
timeout = 0;
|
|
862
887
|
constructor(webhookType) {
|
|
863
888
|
this.#webhookType = webhookType;
|
|
864
|
-
metricsCollector.addCounter(
|
|
889
|
+
metricsCollector.addCounter(
|
|
890
|
+
`${webhookType}_timeouts`,
|
|
891
|
+
`Number of ${webhookType} webhook timeouts`
|
|
892
|
+
);
|
|
865
893
|
}
|
|
866
894
|
start(timeout = 10) {
|
|
867
895
|
this.#startTime = getNow();
|
|
@@ -903,11 +931,20 @@ var definedNameRegex = (0, import_ramda3.pipe)(
|
|
|
903
931
|
var definesNameRegex = (0, import_ramda3.pipe)(definedNameRegex, (0, import_ramda3.equals)(""), import_ramda3.not);
|
|
904
932
|
var definedNamespaces = (0, import_ramda3.pipe)((binding) => binding?.filters?.namespaces, (0, import_ramda3.defaultTo)([]));
|
|
905
933
|
var definesNamespaces = (0, import_ramda3.pipe)(definedNamespaces, (0, import_ramda3.equals)([]), import_ramda3.not);
|
|
906
|
-
var definedNamespaceRegexes = (0, import_ramda3.pipe)(
|
|
934
|
+
var definedNamespaceRegexes = (0, import_ramda3.pipe)(
|
|
935
|
+
(binding) => binding?.filters?.regexNamespaces,
|
|
936
|
+
(0, import_ramda3.defaultTo)([])
|
|
937
|
+
);
|
|
907
938
|
var definesNamespaceRegexes = (0, import_ramda3.pipe)(definedNamespaceRegexes, (0, import_ramda3.equals)([]), import_ramda3.not);
|
|
908
|
-
var definedAnnotations = (0, import_ramda3.pipe)(
|
|
939
|
+
var definedAnnotations = (0, import_ramda3.pipe)(
|
|
940
|
+
(binding) => binding?.filters?.annotations,
|
|
941
|
+
(0, import_ramda3.defaultTo)({})
|
|
942
|
+
);
|
|
909
943
|
var definesAnnotations = (0, import_ramda3.pipe)(definedAnnotations, (0, import_ramda3.equals)({}), import_ramda3.not);
|
|
910
|
-
var definedLabels = (0, import_ramda3.pipe)(
|
|
944
|
+
var definedLabels = (0, import_ramda3.pipe)(
|
|
945
|
+
(binding) => binding?.filters?.labels,
|
|
946
|
+
(0, import_ramda3.defaultTo)({})
|
|
947
|
+
);
|
|
911
948
|
var definesLabels = (0, import_ramda3.pipe)(definedLabels, (0, import_ramda3.equals)({}), import_ramda3.not);
|
|
912
949
|
var definedEvent = (binding) => {
|
|
913
950
|
return binding.event;
|
|
@@ -925,7 +962,11 @@ var definesKind = (0, import_ramda3.pipe)(definedKind, (0, import_ramda3.equals)
|
|
|
925
962
|
var definedCallback = (binding) => {
|
|
926
963
|
return binding.isFinalize ? binding.finalizeCallback : binding.isWatch ? binding.watchCallback : binding.isMutate ? binding.mutateCallback : binding.isValidate ? binding.validateCallback : null;
|
|
927
964
|
};
|
|
928
|
-
var definedCallbackName = (0, import_ramda3.pipe)(
|
|
965
|
+
var definedCallbackName = (0, import_ramda3.pipe)(
|
|
966
|
+
definedCallback,
|
|
967
|
+
(0, import_ramda3.defaultTo)({ name: "" }),
|
|
968
|
+
(callback) => callback.name
|
|
969
|
+
);
|
|
929
970
|
|
|
930
971
|
// src/lib/filter/adjudicators/kubernetesObject.ts
|
|
931
972
|
var import_ramda4 = require("ramda");
|
|
@@ -996,7 +1037,10 @@ var carriesIgnoredNamespace = (0, import_ramda4.allPass)([
|
|
|
996
1037
|
|
|
997
1038
|
// src/lib/filter/adjudicators/postCollection.ts
|
|
998
1039
|
var bindsToKind = (0, import_ramda5.curry)(
|
|
999
|
-
(0, import_ramda5.allPass)([
|
|
1040
|
+
(0, import_ramda5.allPass)([
|
|
1041
|
+
(0, import_ramda5.pipe)((0, import_ramda5.nthArg)(0), definedKind, (0, import_ramda5.equals)(""), import_ramda5.not),
|
|
1042
|
+
(0, import_ramda5.pipe)((binding, kind3) => definedKind(binding) === kind3)
|
|
1043
|
+
])
|
|
1000
1044
|
);
|
|
1001
1045
|
var bindsToNamespace = (0, import_ramda5.curry)((0, import_ramda5.pipe)(bindsToKind(import_ramda5.__, "Namespace")));
|
|
1002
1046
|
var misboundNamespace = (0, import_ramda5.allPass)([bindsToNamespace, definesNamespaces]);
|
|
@@ -1040,7 +1084,10 @@ var unbindableNamespaces = (0, import_ramda5.allPass)([
|
|
|
1040
1084
|
import_ramda5.not
|
|
1041
1085
|
)
|
|
1042
1086
|
]);
|
|
1043
|
-
var misboundDeleteWithDeletionTimestamp = (0, import_ramda5.allPass)([
|
|
1087
|
+
var misboundDeleteWithDeletionTimestamp = (0, import_ramda5.allPass)([
|
|
1088
|
+
definesDelete,
|
|
1089
|
+
definesDeletionTimestamp
|
|
1090
|
+
]);
|
|
1044
1091
|
|
|
1045
1092
|
// src/lib/filter/adjudicators/admissionRequest.ts
|
|
1046
1093
|
var import_ramda6 = require("ramda");
|
|
@@ -1060,7 +1107,10 @@ var declaredKind = (0, import_ramda6.pipe)(
|
|
|
1060
1107
|
(request) => request?.kind?.kind,
|
|
1061
1108
|
(0, import_ramda6.defaultTo)("")
|
|
1062
1109
|
);
|
|
1063
|
-
var declaredUid = (0, import_ramda6.pipe)(
|
|
1110
|
+
var declaredUid = (0, import_ramda6.pipe)(
|
|
1111
|
+
(request) => request?.uid,
|
|
1112
|
+
(0, import_ramda6.defaultTo)("")
|
|
1113
|
+
);
|
|
1064
1114
|
|
|
1065
1115
|
// src/lib/filter/adjudicators/mismatch.ts
|
|
1066
1116
|
var import_ramda7 = require("ramda");
|
|
@@ -1074,11 +1124,17 @@ var mismatchedName = (0, import_ramda7.allPass)([
|
|
|
1074
1124
|
]);
|
|
1075
1125
|
var mismatchedNameRegex = (0, import_ramda7.allPass)([
|
|
1076
1126
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(0), definesNameRegex),
|
|
1077
|
-
(0, import_ramda7.pipe)(
|
|
1127
|
+
(0, import_ramda7.pipe)(
|
|
1128
|
+
(binding, kubernetesObject) => new RegExp(definedNameRegex(binding)).test(carriedName(kubernetesObject)),
|
|
1129
|
+
import_ramda7.not
|
|
1130
|
+
)
|
|
1078
1131
|
]);
|
|
1079
1132
|
var mismatchedNamespace = (0, import_ramda7.allPass)([
|
|
1080
1133
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(0), definesNamespaces),
|
|
1081
|
-
(0, import_ramda7.pipe)(
|
|
1134
|
+
(0, import_ramda7.pipe)(
|
|
1135
|
+
(binding, kubernetesObject) => definedNamespaces(binding).includes(carriedNamespace(kubernetesObject)),
|
|
1136
|
+
import_ramda7.not
|
|
1137
|
+
)
|
|
1082
1138
|
]);
|
|
1083
1139
|
var mismatchedNamespaceRegex = (0, import_ramda7.allPass)([
|
|
1084
1140
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(0), definesNamespaceRegexes),
|
|
@@ -1105,11 +1161,15 @@ var metasMismatch = (0, import_ramda7.pipe)(
|
|
|
1105
1161
|
);
|
|
1106
1162
|
var mismatchedAnnotations = (0, import_ramda7.allPass)([
|
|
1107
1163
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(0), definesAnnotations),
|
|
1108
|
-
(0, import_ramda7.pipe)(
|
|
1164
|
+
(0, import_ramda7.pipe)(
|
|
1165
|
+
(binding, kubernetesObject) => metasMismatch(definedAnnotations(binding), carriedAnnotations(kubernetesObject))
|
|
1166
|
+
)
|
|
1109
1167
|
]);
|
|
1110
1168
|
var mismatchedLabels = (0, import_ramda7.allPass)([
|
|
1111
1169
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(0), definesLabels),
|
|
1112
|
-
(0, import_ramda7.pipe)(
|
|
1170
|
+
(0, import_ramda7.pipe)(
|
|
1171
|
+
(binding, kubernetesObject) => metasMismatch(definedLabels(binding), carriedLabels(kubernetesObject))
|
|
1172
|
+
)
|
|
1113
1173
|
]);
|
|
1114
1174
|
var mismatchedEvent = (0, import_ramda7.pipe)(
|
|
1115
1175
|
(binding, request) => operationMatchesEvent(declaredOperation(request), definedEvent(binding)),
|
|
@@ -1130,7 +1190,9 @@ var mismatchedKind = (0, import_ramda7.allPass)([
|
|
|
1130
1190
|
var operationMatchesEvent = (0, import_ramda7.anyPass)([
|
|
1131
1191
|
(0, import_ramda7.pipe)((0, import_ramda7.nthArg)(1), (0, import_ramda7.equals)("*" /* ANY */)),
|
|
1132
1192
|
(0, import_ramda7.pipe)((operation, event) => operation.valueOf() === event.valueOf()),
|
|
1133
|
-
(0, import_ramda7.pipe)(
|
|
1193
|
+
(0, import_ramda7.pipe)(
|
|
1194
|
+
(operation, event) => operation ? event.includes(operation) : false
|
|
1195
|
+
)
|
|
1134
1196
|
]);
|
|
1135
1197
|
|
|
1136
1198
|
// src/lib/filter/filter.ts
|
|
@@ -1598,7 +1660,10 @@ async function processRequest2(binding, actionMetadata, peprValidateRequest) {
|
|
|
1598
1660
|
message: callbackResp.statusMessage || `Validation failed for ${name}`
|
|
1599
1661
|
};
|
|
1600
1662
|
}
|
|
1601
|
-
logger_default.info(
|
|
1663
|
+
logger_default.info(
|
|
1664
|
+
actionMetadata,
|
|
1665
|
+
`Validation action complete (${label}): ${callbackResp.allowed ? "allowed" : "denied"}`
|
|
1666
|
+
);
|
|
1602
1667
|
return valResp;
|
|
1603
1668
|
} catch (e) {
|
|
1604
1669
|
logger_default.error(actionMetadata, `Action failed: ${JSON.stringify(e)}`);
|
|
@@ -1909,7 +1974,9 @@ var Controller = class _Controller {
|
|
|
1909
1974
|
/** Start the webhook server */
|
|
1910
1975
|
startServer = (port) => {
|
|
1911
1976
|
if (this.#running) {
|
|
1912
|
-
throw new Error(
|
|
1977
|
+
throw new Error(
|
|
1978
|
+
"Cannot start Pepr module: Pepr module was not instantiated with deferStart=true"
|
|
1979
|
+
);
|
|
1913
1980
|
}
|
|
1914
1981
|
const options = {
|
|
1915
1982
|
key: import_fs.default.readFileSync(process.env.SSL_KEY_PATH || "/etc/certs/tls.key"),
|
|
@@ -2007,7 +2074,10 @@ var Controller = class _Controller {
|
|
|
2007
2074
|
gvk: request?.kind || { group: "", version: "", kind: "" }
|
|
2008
2075
|
};
|
|
2009
2076
|
const reqMetadata = { uid: request.uid, namespace: namespace2, name: name2 };
|
|
2010
|
-
logger_default.info(
|
|
2077
|
+
logger_default.info(
|
|
2078
|
+
{ ...reqMetadata, gvk, operation: request.operation, admissionKind },
|
|
2079
|
+
"Incoming request"
|
|
2080
|
+
);
|
|
2011
2081
|
logger_default.debug({ ...reqMetadata, request }, "Incoming request body");
|
|
2012
2082
|
if (typeof this.#beforeHook === "function") {
|
|
2013
2083
|
this.#beforeHook(request || {});
|
|
@@ -2212,7 +2282,9 @@ var eventToPhaseMap = {
|
|
|
2212
2282
|
};
|
|
2213
2283
|
function setupWatch(capabilities, ignoredNamespaces) {
|
|
2214
2284
|
capabilities.map(
|
|
2215
|
-
(capability) => capability.bindings.filter((binding) => binding.isWatch).forEach(
|
|
2285
|
+
(capability) => capability.bindings.filter((binding) => binding.isWatch).forEach(
|
|
2286
|
+
(bindingElement) => runBinding(bindingElement, capability.namespaces, ignoredNamespaces)
|
|
2287
|
+
)
|
|
2216
2288
|
);
|
|
2217
2289
|
}
|
|
2218
2290
|
async function runBinding(binding, capabilityNamespaces, ignoredNamespaces) {
|
|
@@ -2221,7 +2293,12 @@ async function runBinding(binding, capabilityNamespaces, ignoredNamespaces) {
|
|
|
2221
2293
|
const watchCallback = async (kubernetesObject, phase) => {
|
|
2222
2294
|
if (phaseMatch.includes(phase)) {
|
|
2223
2295
|
try {
|
|
2224
|
-
const filterMatch = filterNoMatchReason(
|
|
2296
|
+
const filterMatch = filterNoMatchReason(
|
|
2297
|
+
binding,
|
|
2298
|
+
kubernetesObject,
|
|
2299
|
+
capabilityNamespaces,
|
|
2300
|
+
ignoredNamespaces
|
|
2301
|
+
);
|
|
2225
2302
|
if (filterMatch !== "") {
|
|
2226
2303
|
logger_default.debug(filterMatch);
|
|
2227
2304
|
return;
|
|
@@ -2248,21 +2325,27 @@ async function runBinding(binding, capabilityNamespaces, ignoredNamespaces) {
|
|
|
2248
2325
|
const meta = kubernetesObject.metadata;
|
|
2249
2326
|
const resource = `${meta.namespace || "ClusterScoped"}/${meta.name}`;
|
|
2250
2327
|
if (shouldRemoveFinalizer === false) {
|
|
2251
|
-
logger_default.debug(
|
|
2328
|
+
logger_default.debug(
|
|
2329
|
+
{ obj: kubernetesObject },
|
|
2330
|
+
`Skipping removal of finalizer '${peprFinal}' from '${resource}'`
|
|
2331
|
+
);
|
|
2252
2332
|
} else {
|
|
2253
2333
|
await removeFinalizer(binding, kubernetesObject);
|
|
2254
2334
|
}
|
|
2255
2335
|
}
|
|
2256
2336
|
};
|
|
2257
|
-
const watcher = (0, import_kubernetes_fluent_client6.K8s)(binding.model, { ...binding.filters, kindOverride: binding.kind }).Watch(
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2337
|
+
const watcher = (0, import_kubernetes_fluent_client6.K8s)(binding.model, { ...binding.filters, kindOverride: binding.kind }).Watch(
|
|
2338
|
+
async (obj, phase) => {
|
|
2339
|
+
logger_default.debug(obj, `Watch event ${phase} received`);
|
|
2340
|
+
if (binding.isQueue) {
|
|
2341
|
+
const queue = getOrCreateQueue(obj);
|
|
2342
|
+
await queue.enqueue(obj, phase, watchCallback);
|
|
2343
|
+
} else {
|
|
2344
|
+
await watchCallback(obj, phase);
|
|
2345
|
+
}
|
|
2346
|
+
},
|
|
2347
|
+
watchCfg
|
|
2348
|
+
);
|
|
2266
2349
|
registerWatchEventHandlers(watcher, logEvent, metricsCollector);
|
|
2267
2350
|
try {
|
|
2268
2351
|
await watcher.start();
|
|
@@ -2288,7 +2371,10 @@ function registerWatchEventHandlers(watcher, logEvent2, metricsCollector2) {
|
|
|
2288
2371
|
},
|
|
2289
2372
|
[import_kubernetes_fluent_client6.WatchEvent.CONNECT]: (url) => logEvent2(import_kubernetes_fluent_client6.WatchEvent.CONNECT, url),
|
|
2290
2373
|
[import_kubernetes_fluent_client6.WatchEvent.DATA_ERROR]: (err) => logEvent2(import_kubernetes_fluent_client6.WatchEvent.DATA_ERROR, err.message),
|
|
2291
|
-
[import_kubernetes_fluent_client6.WatchEvent.RECONNECT]: (retryCount) => logEvent2(
|
|
2374
|
+
[import_kubernetes_fluent_client6.WatchEvent.RECONNECT]: (retryCount) => logEvent2(
|
|
2375
|
+
import_kubernetes_fluent_client6.WatchEvent.RECONNECT,
|
|
2376
|
+
`Reconnecting after ${retryCount} attempt${retryCount === 1 ? "" : "s"}`
|
|
2377
|
+
),
|
|
2292
2378
|
[import_kubernetes_fluent_client6.WatchEvent.RECONNECT_PENDING]: () => logEvent2(import_kubernetes_fluent_client6.WatchEvent.RECONNECT_PENDING),
|
|
2293
2379
|
[import_kubernetes_fluent_client6.WatchEvent.ABORT]: (err) => logEvent2(import_kubernetes_fluent_client6.WatchEvent.ABORT, err.message),
|
|
2294
2380
|
[import_kubernetes_fluent_client6.WatchEvent.OLD_RESOURCE_VERSION]: (errMessage) => logEvent2(import_kubernetes_fluent_client6.WatchEvent.OLD_RESOURCE_VERSION, errMessage),
|