diff --git a/docs/external-dns-1.20.0.tgz b/docs/external-dns-1.20.0.tgz new file mode 100644 index 00000000..8ac5f4f2 Binary files /dev/null and b/docs/external-dns-1.20.0.tgz differ diff --git a/docs/external-dns-9.0.3.tgz b/docs/external-dns-9.0.3.tgz deleted file mode 100644 index 54ae54aa..00000000 Binary files a/docs/external-dns-9.0.3.tgz and /dev/null differ diff --git a/docs/external-dns-sigs-1.20.0.tgz b/docs/external-dns-sigs-1.20.0.tgz new file mode 100644 index 00000000..3fd4a72f Binary files /dev/null and b/docs/external-dns-sigs-1.20.0.tgz differ diff --git a/docs/index.yaml b/docs/index.yaml index 287fd9c1..049278e8 100644 --- a/docs/index.yaml +++ b/docs/index.yaml @@ -3,7 +3,7 @@ entries: ai-chat: - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.072052-05:00" + created: "2026-01-23T06:27:46.723363-05:00" description: A Helm chart for Kubernetes digest: 93caf3003f06aa646824ecd3eb293f9b27b5b8ba0d91890f651b6d867386a706 name: ai-chat @@ -14,7 +14,7 @@ entries: ai-chat-service: - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.073367-05:00" + created: "2026-01-23T06:27:46.725286-05:00" description: A Helm chart for Kubernetes digest: cfcfc986c603ee3398f66f8613acbca1718ecbe71a4a4e06aadc8db1756f30cf name: ai-chat-service @@ -24,7 +24,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.073156-05:00" + created: "2026-01-23T06:27:46.725067-05:00" description: A Helm chart for Kubernetes digest: da5b3d0e1e2eb31365b59ae0c57857f004e5e3b4eda19455cd77bb63b8bc3e17 name: ai-chat-service @@ -34,7 +34,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.072949-05:00" + created: "2026-01-23T06:27:46.724828-05:00" description: A Helm chart for Kubernetes digest: 2dd42d435eadb31a3dfb2819cac9e46415c23d7491aecd9c90abc342ef720d9f name: ai-chat-service @@ -44,7 +44,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.072737-05:00" + created: "2026-01-23T06:27:46.724563-05:00" description: A Helm chart for Kubernetes digest: 127086bdd6d1f5b95eb7602f8b610ca169695f0b0a1f43a9a5c024d274a25149 name: ai-chat-service @@ -54,7 +54,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 0.2.0 - created: "2026-01-20T15:24:03.072519-05:00" + created: "2026-01-23T06:27:46.724303-05:00" description: A Helm chart for Kubernetes digest: 284c17b2b6676e8bbd20b4952881d1a42140c0e2ea234347d66367b6a93ff501 name: ai-chat-service @@ -64,7 +64,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.072307-05:00" + created: "2026-01-23T06:27:46.723926-05:00" description: A Helm chart for Kubernetes digest: a5c77faec11bc3fbffa518bb971887c0b512468c8e317ded6b990d5cab742487 name: ai-chat-service @@ -75,7 +75,7 @@ entries: approval-service: - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.075646-05:00" + created: "2026-01-23T06:27:46.728586-05:00" description: A Helm chart for Kubernetes digest: 785179697cd445d3a0200b4af7ad4df65f34345e1e5968ce2db8d4254cecb18f name: approval-service @@ -85,7 +85,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.075406-05:00" + created: "2026-01-23T06:27:46.728068-05:00" description: A Helm chart for Kubernetes digest: cc8e181b218eb48d3e952f72fce536624f09b927f8ef01851cc8bcf681323e40 name: approval-service @@ -95,7 +95,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.075179-05:00" + created: "2026-01-23T06:27:46.727679-05:00" description: A Helm chart for Kubernetes digest: 90d23ad45aae4547e4c2b5df66c40b769e84aba74d88ad8f2833b50f2fbbae11 name: approval-service @@ -105,7 +105,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074959-05:00" + created: "2026-01-23T06:27:46.727334-05:00" description: A Helm chart for Kubernetes digest: 656a95d78adfca79ec45774ea6046669d4174e9c93e2bb78a3609af46db19657 name: approval-service @@ -115,7 +115,7 @@ entries: version: 0.4.4 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074789-05:00" + created: "2026-01-23T06:27:46.727149-05:00" description: A Helm chart for Kubernetes digest: 5baf490db507dc61458f5888b52bb8172bef893a1c62a643ad3b9b2640c0d299 name: approval-service @@ -125,7 +125,7 @@ entries: version: 0.4.3 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074617-05:00" + created: "2026-01-23T06:27:46.72696-05:00" description: A Helm chart for Kubernetes digest: 3597a316773407d0e534d2a436ad47f5d24d101896a1c6f9033ef2f4be35f430 name: approval-service @@ -135,7 +135,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074442-05:00" + created: "2026-01-23T06:27:46.726628-05:00" description: A Helm chart for Kubernetes digest: b724488f55b48c0919f2e328de3947294ce366763891aa4eaafee2b61235a5d1 name: approval-service @@ -145,7 +145,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074265-05:00" + created: "2026-01-23T06:27:46.726431-05:00" description: A Helm chart for Kubernetes digest: ad654722d5766a25e5b740277b506caddf536929484722d1ea63619fab48e038 name: approval-service @@ -155,7 +155,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.074088-05:00" + created: "2026-01-23T06:27:46.726222-05:00" description: A Helm chart for Kubernetes digest: e3f22315de7d9cdfeffbf36ebb8d801c1c68d35d836bb9c4937de57e04d5e1db name: approval-service @@ -165,7 +165,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.073916-05:00" + created: "2026-01-23T06:27:46.726016-05:00" description: A Helm chart for Kubernetes digest: 2373e4e2fa950b4ca9c85434c470126b1c6d0a1f37792050733655fb355748eb name: approval-service @@ -175,7 +175,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.073735-05:00" + created: "2026-01-23T06:27:46.725779-05:00" description: A Helm chart for Kubernetes digest: 968f631a340c25d06b8532e5cac74e77540527d37ca55147e1b6a8196696ef65 name: approval-service @@ -185,7 +185,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "26" - created: "2026-01-20T15:24:03.07356-05:00" + created: "2026-01-23T06:27:46.725546-05:00" description: A Helm chart for Kubernetes digest: 36aa573e3f9ad20288627c900afa89f8b58a22594135a86136876c1e17ab713d name: approval-service @@ -203,7 +203,7 @@ entries: url: https://argoproj.github.io/argo-helm/pgp_keys.asc apiVersion: v2 appVersion: v3.2.1 - created: "2026-01-20T15:24:03.089588-05:00" + created: "2026-01-23T06:27:46.742552-05:00" dependencies: - condition: redis-ha.enabled name: redis-ha @@ -238,7 +238,7 @@ entries: url: https://argoproj.github.io/argo-helm/pgp_keys.asc apiVersion: v2 appVersion: v2.12.3 - created: "2026-01-20T15:24:03.082561-05:00" + created: "2026-01-23T06:27:46.735349-05:00" dependencies: - condition: redis-ha.enabled name: redis-ha @@ -267,7 +267,7 @@ entries: arranger-admin-server-service: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.09014-05:00" + created: "2026-01-23T06:27:46.743391-05:00" description: A Helm chart for Kubernetes digest: d05c28b80660894f8fbd87a331f25bb9a2b19e1c0f200042b3e79282ec6e5079 name: arranger-admin-server-service @@ -277,7 +277,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.089958-05:00" + created: "2026-01-23T06:27:46.743201-05:00" description: A Helm chart for Kubernetes digest: fa9d1506913534497de03f309731a38c9fa230243a4c78f01ae2f2a226030335 name: arranger-admin-server-service @@ -287,7 +287,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.089781-05:00" + created: "2026-01-23T06:27:46.742941-05:00" description: A Helm chart for Kubernetes digest: e7e0c580feb93fd8308815a0d1b03e19a5729bc10c53f86f1d377b9558f31dd8 name: arranger-admin-server-service @@ -298,7 +298,7 @@ entries: arranger-admin-ui-service: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.090793-05:00" + created: "2026-01-23T06:27:46.744388-05:00" description: A Helm chart for Kubernetes digest: 6fa6d292ec0fadc575f6c1e46d3ea914a05f411d926094e531bb088784c527ef name: arranger-admin-ui-service @@ -308,7 +308,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.090624-05:00" + created: "2026-01-23T06:27:46.744194-05:00" description: A Helm chart for Kubernetes digest: 47ce5d7d23b3c2a37107adb211e0162e9f6b1b02f8d0a744b847e253f8283148 name: arranger-admin-ui-service @@ -318,7 +318,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.090466-05:00" + created: "2026-01-23T06:27:46.743908-05:00" description: A Helm chart for Kubernetes digest: 364ee811fa1edaeefca032fd7e8a206dd86a408269946afcd4ce14c680f2e6c8 name: arranger-admin-ui-service @@ -328,7 +328,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.090305-05:00" + created: "2026-01-23T06:27:46.743679-05:00" description: A Helm chart for Kubernetes digest: b1442b1846becdbcc8930208d615e2939dce3ef3e0894ff840270056e20fe3de name: arranger-admin-ui-service @@ -339,7 +339,7 @@ entries: arranger-server-filter-service: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.091481-05:00" + created: "2026-01-23T06:27:46.745012-05:00" description: A Helm chart for Kubernetes digest: f8b4a91c2133727cacee219dedc71e713f60e3696399d9025ccabb3ae09e61bf name: arranger-server-filter-service @@ -349,7 +349,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.090959-05:00" + created: "2026-01-23T06:27:46.744575-05:00" description: A Helm chart for Kubernetes digest: 45df66f14607ac2eac38b3c34bd6459b43ac26db12d7d72d8c716fbe25cf1383 name: arranger-server-filter-service @@ -360,7 +360,7 @@ entries: audit-trail-service: - apiVersion: v2 appVersion: "64" - created: "2026-01-20T15:24:03.091985-05:00" + created: "2026-01-23T06:27:46.745643-05:00" description: A Helm chart for Kubernetes digest: 66917cf5c8c5c29e1b76bea4bd26d0dec049a41d5a813bcbc8d3343e53e3067a name: audit-trail-service @@ -370,7 +370,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "64" - created: "2026-01-20T15:24:03.091826-05:00" + created: "2026-01-23T06:27:46.745453-05:00" description: A Helm chart for Kubernetes digest: 2ea131a73b5aa18e8374422c5143ea599ebaec91eaa41b7744d7a6f7f8879da4 name: audit-trail-service @@ -380,7 +380,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: "64" - created: "2026-01-20T15:24:03.091662-05:00" + created: "2026-01-23T06:27:46.745259-05:00" description: A Helm chart for Kubernetes digest: 404dce5c375e1a8fdd4158fc2999f5fadb9c06a2e18d9dd9b550b5ea22e8d374 name: audit-trail-service @@ -391,7 +391,7 @@ entries: auth-service: - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.097009-05:00" + created: "2026-01-23T06:27:46.751628-05:00" description: A Helm chart for Kubernetes digest: 39a91abf70683a9bbe5177d0da1a930da1917ee3189fd7f0ebf5ecfb47dc79f5 name: auth-service @@ -401,7 +401,7 @@ entries: version: 1.0.9 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.096732-05:00" + created: "2026-01-23T06:27:46.751316-05:00" description: A Helm chart for Kubernetes digest: 26ba5eba0bc201cecdd147bc199b19c986562bf209fadbaa13f23f81c4d7c5c1 name: auth-service @@ -411,7 +411,7 @@ entries: version: 1.0.8 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.096448-05:00" + created: "2026-01-23T06:27:46.751005-05:00" description: A Helm chart for Kubernetes digest: c9b277f031aaee184f6fbe66d3931e7c03a6954929c8db8b4f68902d0e4ab0bf name: auth-service @@ -421,7 +421,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.096152-05:00" + created: "2026-01-23T06:27:46.750687-05:00" description: A Helm chart for Kubernetes digest: c61af1ddba4dec4aa87d1c2a5909253d0e45b5ea918d059431dd2284623d6e73 name: auth-service @@ -431,7 +431,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.095862-05:00" + created: "2026-01-23T06:27:46.750339-05:00" description: A Helm chart for Kubernetes digest: 26a958136a14f6d6f9537c1c002293b67130c51e0b72b319c1ad1f3f18fdc62b name: auth-service @@ -441,7 +441,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.095583-05:00" + created: "2026-01-23T06:27:46.750014-05:00" description: A Helm chart for Kubernetes digest: edee92333e5a0a7170587b004227432d4293a9b826aae59f336f988b8ab32927 name: auth-service @@ -451,7 +451,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.0953-05:00" + created: "2026-01-23T06:27:46.749679-05:00" description: A Helm chart for Kubernetes digest: 278a88ee45ad23c82035d4f71d5797331fff1312961d4e65b24a74c5370855d5 name: auth-service @@ -461,7 +461,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.095007-05:00" + created: "2026-01-23T06:27:46.749088-05:00" description: A Helm chart for Kubernetes digest: c6e1da2cd6d3c54e35d1d0dd8ff2b565c461e6aff744d9792b8ab8702b31115e name: auth-service @@ -471,7 +471,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.094452-05:00" + created: "2026-01-23T06:27:46.748793-05:00" description: A Helm chart for Kubernetes digest: 7b046d05eae466c1561682c79ebcf3199b5013be137ed8b79d5553b7efff822c name: auth-service @@ -481,7 +481,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.094173-05:00" + created: "2026-01-23T06:27:46.748416-05:00" description: A Helm chart for Kubernetes digest: 9d22cd7ec290b6c718483eeb7741763aa37cd41f9c3ef1830cb7a87a83c4d835 name: auth-service @@ -491,7 +491,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.09389-05:00" + created: "2026-01-23T06:27:46.748017-05:00" description: A Helm chart for Kubernetes digest: 514e3837a837d780c9240312bff6da6ef2821276360775eec9f2258da5cf5b66 name: auth-service @@ -501,7 +501,7 @@ entries: version: 0.8.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.093728-05:00" + created: "2026-01-23T06:27:46.74784-05:00" description: A Helm chart for Kubernetes digest: 83ecc608c15761f6e0d1898e99c1f11600d78d14de45b03c803cb85b547ea7e5 name: auth-service @@ -511,7 +511,7 @@ entries: version: 0.8.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.093572-05:00" + created: "2026-01-23T06:27:46.747649-05:00" description: A Helm chart for Kubernetes digest: 41868c6d45c5e4671475f5bad607db9af5a8fe4c0c295649d38f2de5d3878386 name: auth-service @@ -521,7 +521,7 @@ entries: version: 0.8.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.093417-05:00" + created: "2026-01-23T06:27:46.747467-05:00" description: A Helm chart for Kubernetes digest: 3052fb23671efb0704f2b8b42e2a406131a590e9f34a80f5f2d23ecc47659ab3 name: auth-service @@ -531,7 +531,7 @@ entries: version: 0.7.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.093258-05:00" + created: "2026-01-23T06:27:46.747288-05:00" description: A Helm chart for Kubernetes digest: 9e9d04855c642c473ffb97092c4a628f5faa20690e7f5253a55586928dea2b9b name: auth-service @@ -541,7 +541,7 @@ entries: version: 0.7.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.093099-05:00" + created: "2026-01-23T06:27:46.747105-05:00" description: A Helm chart for Kubernetes digest: f824550eae8f0d0c0380caae8a92d040ba3b93d7275690646672484044552f6e name: auth-service @@ -551,7 +551,7 @@ entries: version: 0.6.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.092937-05:00" + created: "2026-01-23T06:27:46.746924-05:00" description: A Helm chart for Kubernetes digest: beb8fb1934fd56c040184475a947ac447004cab34e79d97336f136a05847791c name: auth-service @@ -561,7 +561,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.09278-05:00" + created: "2026-01-23T06:27:46.746577-05:00" description: A Helm chart for Kubernetes digest: 625af2eb448fd8cb5df10f2a93938a96868354a657877d1c0441cae8236e6625 name: auth-service @@ -571,7 +571,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.092621-05:00" + created: "2026-01-23T06:27:46.746388-05:00" description: A Helm chart for Kubernetes digest: 3a3c157eeec55dd6ae4c6317c919181cf744d6a1b1ca74f3ae3ca06aeccc871a name: auth-service @@ -581,7 +581,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.092463-05:00" + created: "2026-01-23T06:27:46.746198-05:00" description: A Helm chart for Kubernetes digest: 80f4333c655a74094c3b4ee02fa3daa61b13018a4b2984b894b24bd8e813a3c6 name: auth-service @@ -591,7 +591,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.092298-05:00" + created: "2026-01-23T06:27:46.746017-05:00" description: A Helm chart for Kubernetes digest: 6dc4451be17d64b4d3ccacc8c7d378402da59a37526ff29866be9e9963df0729 name: auth-service @@ -601,7 +601,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.092143-05:00" + created: "2026-01-23T06:27:46.745827-05:00" description: A Helm chart for Kubernetes digest: a5af799f7c1b4d81d333f85802eba1909665f56c00408f7a3bf32467d953d19b name: auth-service @@ -611,7 +611,7 @@ entries: version: 0.1.0 azure-service-operator: - apiVersion: v2 - created: "2026-01-20T15:24:03.0976-05:00" + created: "2026-01-23T06:27:46.752466-05:00" description: Deploy components and dependencies of azure-service-operator digest: 36c6026b29f041ae0eccd8918e2c151c86ef6399417af93504593c98b9b7b05b home: https://github.com/Azure/azure-service-operator/v2 @@ -624,7 +624,7 @@ entries: base-chart: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.097909-05:00" + created: "2026-01-23T06:27:46.752647-05:00" description: A Helm chart for Kubernetes digest: 597e75b82ceeaaf98303189ae59dd9d87eb4c7bfeff76ea01949fb1c20abfb46 name: base-chart @@ -635,7 +635,7 @@ entries: base-chart-hdc: - apiVersion: v2 appVersion: 1.0.0 - created: "2026-01-20T15:24:03.098552-05:00" + created: "2026-01-23T06:27:46.753544-05:00" description: A Base Helm Chart for HDC Services digest: afeee3e62d6154bb1f3f3a3907ca407a79b0d401088b810ad699886932c2ea76 name: base-chart-hdc @@ -645,7 +645,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: 1.0.0 - created: "2026-01-20T15:24:03.098272-05:00" + created: "2026-01-23T06:27:46.753268-05:00" description: A Base Helm Chart for HDC Services digest: 43ded818e61d35bce58a372d7575824e627bd70a2be0d1e607afbe3708f76a92 name: base-chart-hdc @@ -656,7 +656,7 @@ entries: base-cronjob: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.098838-05:00" + created: "2026-01-23T06:27:46.753832-05:00" description: A Helm chart for Kubernetes digest: 6a77393e95d4f5f551cdf2e834c2e3e2a6d3f0f9c66c71fac851080f02801229 name: base-cronjob @@ -666,7 +666,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.098725-05:00" + created: "2026-01-23T06:27:46.753713-05:00" description: A Helm chart for Kubernetes digest: 9e3d99e87f52d65ac7e3ec854abff67e874d7dceb72d9cab2938107581a9dd58 name: base-cronjob @@ -677,7 +677,7 @@ entries: base-job: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.099196-05:00" + created: "2026-01-23T06:27:46.754369-05:00" description: A Helm chart for Kubernetes digest: 7e0b1bfcaee9d88648e131f3e1274e59f87b36cf25800efd4dae9e8cbfb523bb name: base-job @@ -687,7 +687,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.099091-05:00" + created: "2026-01-23T06:27:46.754125-05:00" description: A Helm chart for Kubernetes digest: c7dcaae5c01d31eb3ad45ddf2fac7686bf5ba0f2522c37c25a070a67d253df05 name: base-job @@ -697,7 +697,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.099014-05:00" + created: "2026-01-23T06:27:46.754035-05:00" description: A Helm chart for Kubernetes digest: d94167463425c85ee4f9a11cbb2725808495f069c296494acbbe91afe8c63b7b name: base-job @@ -707,7 +707,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.09893-05:00" + created: "2026-01-23T06:27:46.753933-05:00" description: A Helm chart for Kubernetes digest: c087628f02796c251e750e00bd0e151bb183e27cac9c4b9a75ae8b2d87e96698 name: base-job @@ -718,7 +718,7 @@ entries: base-pvc: - apiVersion: v2 appVersion: 1.0.2 - created: "2026-01-20T15:24:03.099392-05:00" + created: "2026-01-23T06:27:46.754599-05:00" description: A Helm chart for Kubernetes digest: 9886848db2562469f272e3bf7f62a958d15bf2f6ababd3fcb2263c592ae79d14 name: base-pvc @@ -728,7 +728,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: 1.0.2 - created: "2026-01-20T15:24:03.099291-05:00" + created: "2026-01-23T06:27:46.754484-05:00" description: A Helm chart for Kubernetes digest: 6ff5cd466bde71f194ecc938a0cd350b757631308c61b2439469480ab8120b97 name: base-pvc @@ -739,7 +739,7 @@ entries: bff: - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.103503-05:00" + created: "2026-01-23T06:27:46.75908-05:00" description: A Helm chart for Kubernetes digest: 92d45d4bf179983b54f9933c44c8da4e6981c761e6458ce4ed841ff35cfc984b name: bff @@ -749,7 +749,7 @@ entries: version: 1.1.11 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.103263-05:00" + created: "2026-01-23T06:27:46.758821-05:00" description: A Helm chart for Kubernetes digest: bc37c40ca309aa84074c971fe1a66c729c97259909798ab3ddc5b722f7f918dd name: bff @@ -759,7 +759,7 @@ entries: version: 1.1.10 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.105512-05:00" + created: "2026-01-23T06:27:46.761452-05:00" description: A Helm chart for Kubernetes digest: 502a0c7f1264e40e648f8454cdb90d1eb76e1257da4598eaea47feb8c77eee09 name: bff @@ -769,7 +769,7 @@ entries: version: 1.1.9 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.105125-05:00" + created: "2026-01-23T06:27:46.761173-05:00" description: A Helm chart for Kubernetes digest: 028061faa311786b893440f0df8676d9745e0032046bf5844574032a2d631ec3 name: bff @@ -779,7 +779,7 @@ entries: version: 1.1.8 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.104899-05:00" + created: "2026-01-23T06:27:46.760649-05:00" description: A Helm chart for Kubernetes digest: 1b5f2a8c8918e11c538f8e0c4d657ad678c81ba30db26ddbef42a8c0cee0e4db name: bff @@ -789,7 +789,7 @@ entries: version: 1.1.7 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.10466-05:00" + created: "2026-01-23T06:27:46.760407-05:00" description: A Helm chart for Kubernetes digest: a076b88cd75ab5503282b13c933eefe4db34c529ce396470d99b04c0e79ed433 name: bff @@ -799,7 +799,7 @@ entries: version: 1.1.6 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.104434-05:00" + created: "2026-01-23T06:27:46.760068-05:00" description: A Helm chart for Kubernetes digest: 411bc3aae0278732d22c185b9150a4e4ae24fe0e565ff9537318ebead666c3e3 name: bff @@ -809,7 +809,7 @@ entries: version: 1.1.5 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.104206-05:00" + created: "2026-01-23T06:27:46.759809-05:00" description: A Helm chart for Kubernetes digest: 51dac6ba81e1903766b8d60c702fc01c6a4799eead0c1133ed7b6f37301e426b name: bff @@ -819,7 +819,7 @@ entries: version: 1.1.4 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.103969-05:00" + created: "2026-01-23T06:27:46.75957-05:00" description: A Helm chart for Kubernetes digest: 5e368184d4bcd0cfdf0091eb452f9a3ff83ceb3205715fa16c3dac2436afc6f4 name: bff @@ -829,7 +829,7 @@ entries: version: 1.1.3 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.103745-05:00" + created: "2026-01-23T06:27:46.75932-05:00" description: A Helm chart for Kubernetes digest: ab9ba70b75b89a7c78e0af1500e6969d8c7c20242d64515272ca17cd1aa6ca73 name: bff @@ -839,7 +839,7 @@ entries: version: 1.1.2 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.103009-05:00" + created: "2026-01-23T06:27:46.758552-05:00" description: A Helm chart for Kubernetes digest: 467882d96fd54a0aaecf0c20048243fb3481f4d72c66ad940ce513b5b19c2ac5 name: bff @@ -849,7 +849,7 @@ entries: version: 1.1.1 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.102757-05:00" + created: "2026-01-23T06:27:46.758294-05:00" description: A Helm chart for Kubernetes digest: f7f741b8cd921ce9b413f7a7c12b8b9cd4008351ff422062ba15dcf495bc46f0 name: bff @@ -859,7 +859,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.102481-05:00" + created: "2026-01-23T06:27:46.758016-05:00" description: A Helm chart for Kubernetes digest: c733f1fd813f642b5fbc1271af6ac6e3080c64178b23c9ad231db9f7384571e0 name: bff @@ -869,7 +869,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.102275-05:00" + created: "2026-01-23T06:27:46.757786-05:00" description: A Helm chart for Kubernetes digest: f81b4e0e66a039ba916f593ddf8700e9f565a5350ccf86b220f83a546eff4e6f name: bff @@ -879,7 +879,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.10206-05:00" + created: "2026-01-23T06:27:46.757563-05:00" description: A Helm chart for Kubernetes digest: 8639f920441de5f5c79aae49172a073575ba06fe3b49d4e9117cd9970bd45f15 name: bff @@ -889,7 +889,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.101641-05:00" + created: "2026-01-23T06:27:46.757317-05:00" description: A Helm chart for Kubernetes digest: 38fa37a2331ee6fe41e9b1e21896f7f28d27ef9af9873c4ddef2f5aaba0cdb12 name: bff @@ -899,7 +899,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.101347-05:00" + created: "2026-01-23T06:27:46.75671-05:00" description: A Helm chart for Kubernetes digest: 3d0cba1dd207de5f87b7426ebd86f5962974976e8e40f20245fb8f0c761620f5 name: bff @@ -909,7 +909,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.101149-05:00" + created: "2026-01-23T06:27:46.756394-05:00" description: A Helm chart for Kubernetes digest: c930fcf50cb9ec38dddadf2f48cb71c361e174417853a161a06019edec27404a name: bff @@ -919,7 +919,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.100945-05:00" + created: "2026-01-23T06:27:46.756177-05:00" description: A Helm chart for Kubernetes digest: 9397e67297293b35430e4dbf2583d9b78279582865a5272dad61b0f8c6015c3d name: bff @@ -929,7 +929,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.10074-05:00" + created: "2026-01-23T06:27:46.755966-05:00" description: A Helm chart for Kubernetes digest: 87f3233d0e66ebe97300976aa81195f2e7d720a45dd5e52c946735e69c6e0c98 name: bff @@ -939,7 +939,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.100533-05:00" + created: "2026-01-23T06:27:46.755758-05:00" description: A Helm chart for Kubernetes digest: ca1602ed5fd62bdd1f1722a919b9415f447ca3265014dfee896bbdcf114d3848 name: bff @@ -949,7 +949,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.100369-05:00" + created: "2026-01-23T06:27:46.755594-05:00" description: A Helm chart for Kubernetes digest: d519caa44158ae03a2054f48d9a6249e5ff2041922687e3cabaf641e2709e0b2 name: bff @@ -959,7 +959,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.100195-05:00" + created: "2026-01-23T06:27:46.755429-05:00" description: A Helm chart for Kubernetes digest: bcf70ed55849026badefaa6df6e8217a707938d149bc4131931cfb085916cded name: bff @@ -969,7 +969,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.100031-05:00" + created: "2026-01-23T06:27:46.755265-05:00" description: A Helm chart for Kubernetes digest: 1546d81768d907d24efd57097e0296d31fe01adbf56b00ec1b5ddb09575e2730 name: bff @@ -979,7 +979,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.099882-05:00" + created: "2026-01-23T06:27:46.755107-05:00" description: A Helm chart for Kubernetes digest: c0efe046cf940b02606f123b0f401c20036290630f9c25ff650918dbbf272928 name: bff @@ -989,7 +989,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.099719-05:00" + created: "2026-01-23T06:27:46.754939-05:00" description: A Helm chart for Kubernetes digest: 6d7750cb8ac98d7d5ccfa997e0bae455f7a6606c2e4b4b251a6e431da4bd04e4 name: bff @@ -999,7 +999,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1471" - created: "2026-01-20T15:24:03.099569-05:00" + created: "2026-01-23T06:27:46.75477-05:00" description: A Helm chart for Kubernetes digest: 8ee1985765c105a1c8e5fe88e38b0b3549730d3997fd9ae82895480733f5b048 name: bff @@ -1010,7 +1010,7 @@ entries: bff-cli-service: - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.108285-05:00" + created: "2026-01-23T06:27:46.764369-05:00" description: A Helm chart for Kubernetes digest: 5ce28d9d137d3b270b86824d03c860d21719893474978460f8106bebb4dc6b3b name: bff-cli-service @@ -1020,7 +1020,7 @@ entries: version: 1.3.1 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.108089-05:00" + created: "2026-01-23T06:27:46.764162-05:00" description: A Helm chart for Kubernetes digest: 5610deed664d5c33c4e641902de036cf9f540aad78c1114138eabd52b6800780 name: bff-cli-service @@ -1030,7 +1030,7 @@ entries: version: 1.3.0 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.107889-05:00" + created: "2026-01-23T06:27:46.763961-05:00" description: A Helm chart for Kubernetes digest: bcef3ed4d00901fb8d6cc8b186685c5ea638273ec6a340e7e5ceeb54313667fe name: bff-cli-service @@ -1040,7 +1040,7 @@ entries: version: 1.2.1 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.107696-05:00" + created: "2026-01-23T06:27:46.763752-05:00" description: A Helm chart for Kubernetes digest: ff0cca90b7936085c80cee0b0353f9e2611aaa2ff574e710320c2bc7bd088d8b name: bff-cli-service @@ -1050,7 +1050,7 @@ entries: version: 1.2.0 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.1075-05:00" + created: "2026-01-23T06:27:46.763539-05:00" description: A Helm chart for Kubernetes digest: a498086e6714208db6724ba89bc20924142d2368d2ece69e32910b5a72b0c285 name: bff-cli-service @@ -1060,7 +1060,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.107298-05:00" + created: "2026-01-23T06:27:46.763328-05:00" description: A Helm chart for Kubernetes digest: 0bff257b4b738a484a55a6d7eadc9d58560de1233dc568cb4c5589993fe2ff40 name: bff-cli-service @@ -1070,7 +1070,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.107073-05:00" + created: "2026-01-23T06:27:46.76299-05:00" description: A Helm chart for Kubernetes digest: 50eb0dabb852e796c62749b5d050aff632d34018082c5e27ff84eff73a584c03 name: bff-cli-service @@ -1080,7 +1080,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.106871-05:00" + created: "2026-01-23T06:27:46.762778-05:00" description: A Helm chart for Kubernetes digest: 6048ea33060e6af7fcc34d8994a336c9d70734b74a90511744c649ec4d913315 name: bff-cli-service @@ -1090,7 +1090,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.106667-05:00" + created: "2026-01-23T06:27:46.762554-05:00" description: A Helm chart for Kubernetes digest: 664a1d7bb9646e29e73d6712c33d2517430016ca48d6628232136f4960578863 name: bff-cli-service @@ -1100,7 +1100,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.106456-05:00" + created: "2026-01-23T06:27:46.762336-05:00" description: A Helm chart for Kubernetes digest: 06ad55711fd118f55698f6c047b0beced4fbd9f1bb9485f9743256d7f42fa174 name: bff-cli-service @@ -1110,7 +1110,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.106252-05:00" + created: "2026-01-23T06:27:46.762118-05:00" description: A Helm chart for Kubernetes digest: 48117dd64d3e16523fa61db2a2e029be968ff6d5c50c2703b42321465ac38836 name: bff-cli-service @@ -1120,7 +1120,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.1061-05:00" + created: "2026-01-23T06:27:46.761958-05:00" description: A Helm chart for Kubernetes digest: ad04904403e14a558f5a99f870b5c8c98819a1f10b71f826832481bc3d633758 name: bff-cli-service @@ -1130,7 +1130,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.105937-05:00" + created: "2026-01-23T06:27:46.761789-05:00" description: A Helm chart for Kubernetes digest: ab38a0cbe094b8dee26ee3673c641a49e9012eda977f85fe0143ff3a1c7c1052 name: bff-cli-service @@ -1140,7 +1140,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: "135" - created: "2026-01-20T15:24:03.105783-05:00" + created: "2026-01-23T06:27:46.761621-05:00" description: A Helm chart for Kubernetes digest: 070da2205396afefec278def7b14d32a89f0903e1328d616ebc531c7983f203a name: bff-cli-service @@ -1151,7 +1151,7 @@ entries: billing-api: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.108446-05:00" + created: "2026-01-23T06:27:46.76454-05:00" description: A Helm chart for Kubernetes digest: 056237af2fd4c128ce359e25749b1d9a56ae43d0fbc321cfeb487e6ce8a817d7 name: billing-api @@ -1162,7 +1162,7 @@ entries: billing-events: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.108594-05:00" + created: "2026-01-23T06:27:46.764698-05:00" description: A Helm chart for Kubernetes digest: 565f30a63a097d42ca43bf9fc8ad8fca06d06812f2a94428d5ffbbfd3d51b9f6 name: billing-events @@ -1173,7 +1173,7 @@ entries: billing-report: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.1087-05:00" + created: "2026-01-23T06:27:46.765147-05:00" description: A Helm chart for Kubernetes digest: 4a6906b8851af4d5b7822791de9ce2c11aae7f1dd7a49effbb9bdddbba007bb3 name: billing-report @@ -1184,7 +1184,7 @@ entries: cataloguing-service: - apiVersion: v2 appVersion: "92" - created: "2026-01-20T15:24:03.109422-05:00" + created: "2026-01-23T06:27:46.765701-05:00" description: A Helm chart for Kubernetes digest: 3aaaf228c9692c530fe0fa5c435281ad8d4ac808774596d0a6047a95fdbe1610 name: cataloguing-service @@ -1194,7 +1194,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "92" - created: "2026-01-20T15:24:03.108991-05:00" + created: "2026-01-23T06:27:46.765521-05:00" description: A Helm chart for Kubernetes digest: dedef31d3cffe64c1d2f74fb10bfffb78ac6179962496518055ac252ab79ab32 name: cataloguing-service @@ -1204,7 +1204,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "92" - created: "2026-01-20T15:24:03.108843-05:00" + created: "2026-01-23T06:27:46.765347-05:00" description: A Helm chart for Kubernetes digest: b96101efae20d3bef0b58eca140a76ae4cf5760e8ab8b8886ed4d0350b4b2de9 name: cataloguing-service @@ -1222,7 +1222,7 @@ entries: url: https://cert-manager.io/public-keys/cert-manager-keyring-2021-09-20-1020CF3C033D4F35BAE1C19E1226061C665DF13E.gpg apiVersion: v2 appVersion: v1.19.2 - created: "2026-01-20T15:24:03.118667-05:00" + created: "2026-01-23T06:27:46.776085-05:00" description: A Helm chart for cert-manager digest: 9654ef2da6557cfbfa7a318c5d0dbc3647fb50fd455e43f64c00707be5954742 home: https://cert-manager.io @@ -1258,7 +1258,7 @@ entries: tanzuCategory: clusterUtility apiVersion: v2 appVersion: 1.18.2 - created: "2026-01-20T15:24:03.115639-05:00" + created: "2026-01-23T06:27:46.772702-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -1298,7 +1298,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 1.13.0 - created: "2026-01-20T15:24:03.113429-05:00" + created: "2026-01-23T06:27:46.770187-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -1338,7 +1338,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 1.13.0 - created: "2026-01-20T15:24:03.111377-05:00" + created: "2026-01-23T06:27:46.767569-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -1367,7 +1367,7 @@ entries: cli-automation-public-bucket: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.119383-05:00" + created: "2026-01-23T06:27:46.777387-05:00" description: A Helm chart for Kubernetes digest: eed4781d98655484af44eb618bc1f58a6405da8a6c1e0d574bb5d7a72b92a03c name: cli-automation-public-bucket @@ -1377,7 +1377,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.119238-05:00" + created: "2026-01-23T06:27:46.777218-05:00" description: A Helm chart for Kubernetes digest: a452122f64370460e2b98b4a0daeab06aca1b7e0f295b2d0457127c9ec9edc16 name: cli-automation-public-bucket @@ -1387,7 +1387,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.1191-05:00" + created: "2026-01-23T06:27:46.77678-05:00" description: A Helm chart for Kubernetes digest: 7a634723acfb1e8dfeed42b706e866b3417d90ecbb95c4c8b0e752c6d16204a9 name: cli-automation-public-bucket @@ -1397,7 +1397,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.118968-05:00" + created: "2026-01-23T06:27:46.776624-05:00" description: A Helm chart for Kubernetes digest: fdcffe66ba968459d73846bde2385bfaf6303d9a5b9db8694d2feb6e2727305d name: cli-automation-public-bucket @@ -1407,7 +1407,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.118827-05:00" + created: "2026-01-23T06:27:46.776358-05:00" description: A Helm chart for Kubernetes digest: 2e1f81604633f9cadf53bfff2fbba6d9d40f6289db3ea1a39bd1291f0d51c818 name: cli-automation-public-bucket @@ -1418,7 +1418,7 @@ entries: cli-automation-pvc: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.119891-05:00" + created: "2026-01-23T06:27:46.777988-05:00" description: A Helm chart for Kubernetes digest: 66851abf6370c67f451e063321194d10d3db3883f211b9427316843a93f040e7 name: cli-automation-pvc @@ -1428,7 +1428,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.11977-05:00" + created: "2026-01-23T06:27:46.777843-05:00" description: A Helm chart for Kubernetes digest: 7fe7ebcee7acbd6665cf2511ff4a6e611366ea7db908c1d530a1cd1bac1fa665 name: cli-automation-pvc @@ -1438,7 +1438,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.119638-05:00" + created: "2026-01-23T06:27:46.777695-05:00" description: A Helm chart for Kubernetes digest: 743a934bd0a1055855c928dacfbe40d5c52fb8f02638a35332643434af895240 name: cli-automation-pvc @@ -1448,7 +1448,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.119514-05:00" + created: "2026-01-23T06:27:46.777542-05:00" description: A Helm chart for Kubernetes digest: 0a1b5a64f30cc86e69d5af34a853f0efab121cef3641d10a8d418fc1309b8a45 name: cli-automation-pvc @@ -1459,7 +1459,7 @@ entries: cloudnative-pg: - apiVersion: v2 appVersion: 1.24.1 - created: "2026-01-20T15:24:03.122601-05:00" + created: "2026-01-23T06:27:46.781127-05:00" dependencies: - alias: monitoring condition: monitoring.grafanaDashboard.create @@ -1489,7 +1489,7 @@ entries: common-service: - apiVersion: v2 appVersion: "29" - created: "2026-01-20T15:24:03.122922-05:00" + created: "2026-01-23T06:27:46.781629-05:00" description: A Helm chart for Kubernetes digest: bb6977e889c11c7d30c34f2b6b9349da4df96d46b1928f0f8f660a8ae3978aea name: common-service @@ -1499,7 +1499,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "29" - created: "2026-01-20T15:24:03.122766-05:00" + created: "2026-01-23T06:27:46.78147-05:00" description: A Helm chart for Kubernetes digest: b010399ce4395cf7042ca25bbae36bb07454f390f19267095f2f5c07bbd41239 name: common-service @@ -1530,7 +1530,7 @@ entries: url: https://keybase.io/hashicorp/pgp_keys.asc apiVersion: v2 appVersion: 1.12.0 - created: "2026-01-20T15:24:03.125849-05:00" + created: "2026-01-23T06:27:46.784382-05:00" description: Official HashiCorp Consul Chart digest: 37f9d1c31653c2017bf864c6604e73c970f417dee462d576833e95908e6f637e home: https://www.consul.io @@ -1546,7 +1546,7 @@ entries: cost: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.126023-05:00" + created: "2026-01-23T06:27:46.784551-05:00" description: A Helm chart for Kubernetes digest: f842bd1f3d8641b15f80664d0df657a417a0e8098a8d17133a0052663ded5586 name: cost @@ -1561,7 +1561,7 @@ entries: url: https://www.kubecost.com apiVersion: v2 appVersion: 1.105.0 - created: "2026-01-20T15:24:03.131331-05:00" + created: "2026-01-23T06:27:46.789792-05:00" dependencies: - condition: global.grafana.enabled name: grafana @@ -1585,7 +1585,7 @@ entries: database-backup: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.131467-05:00" + created: "2026-01-23T06:27:46.790118-05:00" description: A Helm chart for Kubernetes digest: 90f7dbecdec1a63c6628cd67c74e36bc2bdfbacfaccbb37ca243b14aa177d61e name: database-backup @@ -1595,7 +1595,7 @@ entries: version: 0.1.5 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.131406-05:00" + created: "2026-01-23T06:27:46.790026-05:00" description: A Helm chart for Kubernetes digest: 3591810c30cb0eccfc1946db06d035130ff069e68094c79d5b5586280f6af0c9 name: database-backup @@ -1606,7 +1606,7 @@ entries: dataops-gr-service: - apiVersion: v2 appVersion: "174" - created: "2026-01-20T15:24:03.13161-05:00" + created: "2026-01-23T06:27:46.790314-05:00" description: A Helm chart for Kubernetes digest: 674ced05b87a31104601dcc22873ea77c68d9e826397b79b2deadbcc4998ad1b name: dataops-gr-service @@ -1617,7 +1617,7 @@ entries: dataops-service: - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.134671-05:00" + created: "2026-01-23T06:27:46.793619-05:00" description: A Helm chart for Kubernetes digest: 27be209118d857d2cbf066cc47060b2f8419b00ad607b11be40e7ecc3501d483 name: dataops-service @@ -1627,7 +1627,7 @@ entries: version: 1.0.20 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.133851-05:00" + created: "2026-01-23T06:27:46.793298-05:00" description: A Helm chart for Kubernetes digest: 8bf7547f4fdf2aaf81c8bea6c094d5dd41747d78faeaafc320f8ac0a16050994 name: dataops-service @@ -1637,7 +1637,7 @@ entries: version: 1.0.19 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.1337-05:00" + created: "2026-01-23T06:27:46.793126-05:00" description: A Helm chart for Kubernetes digest: 6214d365ac0800b634a3634631d164090071aa6e766cd27d346f10735ed7f5bf name: dataops-service @@ -1647,7 +1647,7 @@ entries: version: 1.0.18 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.133559-05:00" + created: "2026-01-23T06:27:46.792943-05:00" description: A Helm chart for Kubernetes digest: 1aebcd8ec37255bd2a6b42a00a0af20d94f350d20be09328053bc8c46bf4b76e name: dataops-service @@ -1657,7 +1657,7 @@ entries: version: 1.0.17 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.133409-05:00" + created: "2026-01-23T06:27:46.79277-05:00" description: A Helm chart for Kubernetes digest: 74d1b80731a93fe25c9173704f6cce20caf3ed8f73556961093f94cb040bbb4f name: dataops-service @@ -1667,7 +1667,7 @@ entries: version: 1.0.16 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.133265-05:00" + created: "2026-01-23T06:27:46.792605-05:00" description: A Helm chart for Kubernetes digest: 2f44653652f540b20a037e8b890ce17c582cce8597530f1f3aa2e9755fe4b7eb name: dataops-service @@ -1677,7 +1677,7 @@ entries: version: 1.0.15 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.133103-05:00" + created: "2026-01-23T06:27:46.792411-05:00" description: A Helm chart for Kubernetes digest: c9b4aa557f75fe667c824fcaecd17dcdfdc2dbb0c9914ca3ba274c001c406783 name: dataops-service @@ -1687,7 +1687,7 @@ entries: version: 1.0.14 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132948-05:00" + created: "2026-01-23T06:27:46.792191-05:00" description: A Helm chart for Kubernetes digest: 9d040f7b6dd2fb5545805b307fa08084dfa76aeec670bfccae96e99a51d4ff53 name: dataops-service @@ -1697,7 +1697,7 @@ entries: version: 1.0.13 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132796-05:00" + created: "2026-01-23T06:27:46.791917-05:00" description: A Helm chart for Kubernetes digest: 1df36c5bef95f9023ca8c830f41413dbfe292c47939ca90d778a8721194650ff name: dataops-service @@ -1707,7 +1707,7 @@ entries: version: 1.0.12 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132649-05:00" + created: "2026-01-23T06:27:46.791697-05:00" description: A Helm chart for Kubernetes digest: 9195fc503980bb196430f2f2dbcd0d6c982b359985bb286ee45b04fde99e3553 name: dataops-service @@ -1717,7 +1717,7 @@ entries: version: 1.0.11 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132501-05:00" + created: "2026-01-23T06:27:46.791425-05:00" description: A Helm chart for Kubernetes digest: c87c848769d5e967f4211a2d195534c561a77ee7a91818295f8687c71895a677 name: dataops-service @@ -1727,7 +1727,7 @@ entries: version: 1.0.10 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135782-05:00" + created: "2026-01-23T06:27:46.794982-05:00" description: A Helm chart for Kubernetes digest: c89786be77e80e24ea9e0306b5a198d6a390e048a4fa33d23f923bfde08a777f name: dataops-service @@ -1737,7 +1737,7 @@ entries: version: 1.0.9 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135632-05:00" + created: "2026-01-23T06:27:46.794772-05:00" description: A Helm chart for Kubernetes digest: b7f416484567e6160eb316ae87342ca34c5ed6816ede78f1a3075cc32fe13fb8 name: dataops-service @@ -1747,7 +1747,7 @@ entries: version: 1.0.8 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135484-05:00" + created: "2026-01-23T06:27:46.794567-05:00" description: A Helm chart for Kubernetes digest: 25672cb6a23f3516207c7645baaa725afde073d52f9c6c78d1a98bc66cd39c80 name: dataops-service @@ -1757,7 +1757,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135333-05:00" + created: "2026-01-23T06:27:46.794397-05:00" description: A Helm chart for Kubernetes digest: 78865dd343f9419d1352a171b50a81818e2582543b517563814e402b74ead25c name: dataops-service @@ -1767,7 +1767,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135166-05:00" + created: "2026-01-23T06:27:46.79424-05:00" description: A Helm chart for Kubernetes digest: d847872e474b61b772fa1633a3f59a3698c404331a2caf05adc7fe0d15b2a888 name: dataops-service @@ -1777,7 +1777,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135006-05:00" + created: "2026-01-23T06:27:46.794078-05:00" description: A Helm chart for Kubernetes digest: e4e284186d66380687c025a3590269180378eacf2bee674df91c200ef522400e name: dataops-service @@ -1787,7 +1787,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.134846-05:00" + created: "2026-01-23T06:27:46.793907-05:00" description: A Helm chart for Kubernetes digest: cd8783b24a986647e3f14051e43fe557af3849811d2b4f055e2bd49aedfe29ed name: dataops-service @@ -1797,7 +1797,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.134277-05:00" + created: "2026-01-23T06:27:46.793455-05:00" description: A Helm chart for Kubernetes digest: 2425abb9feda58d75dc75f10fb5ff2dbae77ba856d34ac2026a8420c1624ef3f name: dataops-service @@ -1807,7 +1807,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132343-05:00" + created: "2026-01-23T06:27:46.791256-05:00" description: A Helm chart for Kubernetes digest: 366f563d94919d69d919178919ce92526ec8b5b6e410a38875abc3ff1af9b925 name: dataops-service @@ -1817,7 +1817,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132175-05:00" + created: "2026-01-23T06:27:46.790967-05:00" description: A Helm chart for Kubernetes digest: 26954ec5e865f3780051bdb9775dd0d22888ff6b4c59cdfecdcf4d31e544e9a4 name: dataops-service @@ -1827,7 +1827,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.132022-05:00" + created: "2026-01-23T06:27:46.790793-05:00" description: A Helm chart for Kubernetes digest: 5573d78779ed0901bc72f94000158f8b2b8c36fb567c992eb8b8b8599b28e20f name: dataops-service @@ -1837,7 +1837,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.131892-05:00" + created: "2026-01-23T06:27:46.790642-05:00" description: A Helm chart for Kubernetes digest: 91a251e64f6bb196640e57edb7436b8a024ff7f783d6eb22866d7fed81574f34 name: dataops-service @@ -1847,7 +1847,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.131759-05:00" + created: "2026-01-23T06:27:46.790488-05:00" description: A Helm chart for Kubernetes digest: d36ac6ccaec19279de1478433ce5d47bdc9ea4c6a9b3d3fb73f08cef080cc783 name: dataops-service @@ -1858,7 +1858,7 @@ entries: dataops-utility-service: - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.136454-05:00" + created: "2026-01-23T06:27:46.796173-05:00" description: A Helm chart for Kubernetes digest: 4361163754c833042a69e2652c303f6a99aa277fcc356f6f0991eab57339c674 name: dataops-utility-service @@ -1868,7 +1868,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.136319-05:00" + created: "2026-01-23T06:27:46.796007-05:00" description: A Helm chart for Kubernetes digest: 013af68c9d53c2045c1dfb16b9051e1438557c874e9042b924ac50435dfee439 name: dataops-utility-service @@ -1878,7 +1878,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.136186-05:00" + created: "2026-01-23T06:27:46.795839-05:00" description: A Helm chart for Kubernetes digest: 42dc45bbb520de66f8671c749f48692d9f9605cb9b16a7433322ebcbba34d0e8 name: dataops-utility-service @@ -1888,7 +1888,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.136029-05:00" + created: "2026-01-23T06:27:46.795433-05:00" description: A Helm chart for Kubernetes digest: b0074386c9392a5d2270f6fee4d2b75cd997fa9469666c12642189d3275e4cea name: dataops-utility-service @@ -1898,7 +1898,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "274" - created: "2026-01-20T15:24:03.135906-05:00" + created: "2026-01-23T06:27:46.795153-05:00" description: A Helm chart for Kubernetes digest: 8c2bb2972c115bbddf88098de273d1154221a4c8679638041f039dc185665593 name: dataops-utility-service @@ -1909,7 +1909,7 @@ entries: dataset-neo4j: - apiVersion: v2 appVersion: "124" - created: "2026-01-20T15:24:03.136941-05:00" + created: "2026-01-23T06:27:46.796878-05:00" description: A Helm chart for Kubernetes digest: 63f13a6e9219394eb0cb5f20d5d655839ca77c47e8f77f6505bd83560d158881 name: dataset-neo4j @@ -1919,7 +1919,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "124" - created: "2026-01-20T15:24:03.13682-05:00" + created: "2026-01-23T06:27:46.796736-05:00" description: A Helm chart for Kubernetes digest: af182b5a91583c73e759dc61ef29e392c899e5cf019c2558192c30159659317e name: dataset-neo4j @@ -1929,7 +1929,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "124" - created: "2026-01-20T15:24:03.136699-05:00" + created: "2026-01-23T06:27:46.796599-05:00" description: A Helm chart for Kubernetes digest: fcf2c4bc8e7f61ca0d7ba2221dc94078388ccb366b55c7b9bd0d84edf3eebc17 name: dataset-neo4j @@ -1939,7 +1939,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "124" - created: "2026-01-20T15:24:03.136578-05:00" + created: "2026-01-23T06:27:46.796451-05:00" description: A Helm chart for Kubernetes digest: ec762d91e97dab0978b221b98c5754429417c78a463a265f09e6336538f8637e name: dataset-neo4j @@ -1950,7 +1950,7 @@ entries: dataset-service: - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.138834-05:00" + created: "2026-01-23T06:27:46.798826-05:00" description: A Helm chart for Kubernetes digest: 2bd78f8a46c41ff54b57c2ca3967edab560ec39d95acf61db9af99798606e64b name: dataset-service @@ -1960,7 +1960,7 @@ entries: version: 1.0.11 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.138655-05:00" + created: "2026-01-23T06:27:46.798555-05:00" description: A Helm chart for Kubernetes digest: 5629e781b2d58cae67e22d8738e324c235ee9b1b3b64b2faae635ba71557cb6c name: dataset-service @@ -1970,7 +1970,7 @@ entries: version: 1.0.10 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.140168-05:00" + created: "2026-01-23T06:27:46.800811-05:00" description: A Helm chart for Kubernetes digest: 904d952e45814c734e5f4b73e2ea8dc91a0b5fd1223abeada128a62214489c90 name: dataset-service @@ -1980,7 +1980,7 @@ entries: version: 1.0.9 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.139996-05:00" + created: "2026-01-23T06:27:46.800623-05:00" description: A Helm chart for Kubernetes digest: 6437328b89e43100aa46cbf962547943efe84210ae1846de283702b1a29367a5 name: dataset-service @@ -1990,7 +1990,7 @@ entries: version: 1.0.8 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.139824-05:00" + created: "2026-01-23T06:27:46.800436-05:00" description: A Helm chart for Kubernetes digest: df90857b64145ee2b78cc9f29c3955ee240c6999a5bd67d8061a5cb19959f94e name: dataset-service @@ -2000,7 +2000,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.13966-05:00" + created: "2026-01-23T06:27:46.800225-05:00" description: A Helm chart for Kubernetes digest: 350249996f0212052208421fe0611ffb162c011e957e6275fef1b40498fcd6bc name: dataset-service @@ -2010,7 +2010,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.139502-05:00" + created: "2026-01-23T06:27:46.800019-05:00" description: A Helm chart for Kubernetes digest: 6da92c982d55010307491c4ac2c902976c7b319b9bea081680662335d890fc4c name: dataset-service @@ -2020,7 +2020,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.13933-05:00" + created: "2026-01-23T06:27:46.799813-05:00" description: A Helm chart for Kubernetes digest: 915447024358e6f94ca9f90f4b371af79630bbe43149b774327a1eb8dd2c53ab name: dataset-service @@ -2030,7 +2030,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.139169-05:00" + created: "2026-01-23T06:27:46.79959-05:00" description: A Helm chart for Kubernetes digest: 82d7579b00c20e05dc48223d713f00594e8d942498d04ec4142736458f727534 name: dataset-service @@ -2040,7 +2040,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.139005-05:00" + created: "2026-01-23T06:27:46.79901-05:00" description: A Helm chart for Kubernetes digest: aab6d0751ed3106e3e0042e2b2dfdea70ee1138c6cafa1bbfb2496d91ef105d3 name: dataset-service @@ -2050,7 +2050,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.138465-05:00" + created: "2026-01-23T06:27:46.79819-05:00" description: A Helm chart for Kubernetes digest: 2d7d0aa12b59dc97c3c0e318830f362aefa7e7ca7e1b410aecb42a2f39964bdb name: dataset-service @@ -2060,7 +2060,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.138292-05:00" + created: "2026-01-23T06:27:46.797995-05:00" description: A Helm chart for Kubernetes digest: 99e492bb7f5a45f492e558d0cd2dff202c898135ac2fabc16e7a4afac7eea161 name: dataset-service @@ -2070,7 +2070,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.138116-05:00" + created: "2026-01-23T06:27:46.797805-05:00" description: A Helm chart for Kubernetes digest: b05237cc0e70725cf0e898ae590c1ca4487d26454cc943f973466fd88fe121fa name: dataset-service @@ -2080,7 +2080,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.137966-05:00" + created: "2026-01-23T06:27:46.79764-05:00" description: A Helm chart for Kubernetes digest: 9f5d37cd44c4207f76acc6ff87a96c82ade635a26931f9b9f3eea75947d93ea1 name: dataset-service @@ -2090,7 +2090,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.137481-05:00" + created: "2026-01-23T06:27:46.797488-05:00" description: A Helm chart for Kubernetes digest: 04a89bc8a95fc3c6081f2961b5e6de05857197ac10dd388a6c48da86a4a459bf name: dataset-service @@ -2100,7 +2100,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.137346-05:00" + created: "2026-01-23T06:27:46.797344-05:00" description: A Helm chart for Kubernetes digest: ff13d03d38a654ddb6b4360079d4f0aeb067253d51585f9fed5e52b52d960a81 name: dataset-service @@ -2110,7 +2110,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.137211-05:00" + created: "2026-01-23T06:27:46.797188-05:00" description: A Helm chart for Kubernetes digest: ae80a024a503e775ecb03787d127f36e798eb9e6d59a521d532db0240fa5722f name: dataset-service @@ -2120,7 +2120,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.13707-05:00" + created: "2026-01-23T06:27:46.797036-05:00" description: A Helm chart for Kubernetes digest: 3bf19e3500ac0a2a111c874f72966f1cd53f6c2a9542ed0ed6ec317b4a2d2d10 name: dataset-service @@ -2131,7 +2131,7 @@ entries: download-service: - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.142424-05:00" + created: "2026-01-23T06:27:46.803299-05:00" description: A Helm chart for Kubernetes digest: 60e5ddc216829ef10bd1036b1469637433ac4f817c3667d0ccb3382d895c35db name: download-service @@ -2141,7 +2141,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.142245-05:00" + created: "2026-01-23T06:27:46.802921-05:00" description: A Helm chart for Kubernetes digest: 20f9844d696ceb51518c28582e9e32377397abc6c32fd2d0e97f9dcbf09b5672 name: download-service @@ -2151,7 +2151,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.142058-05:00" + created: "2026-01-23T06:27:46.802751-05:00" description: A Helm chart for Kubernetes digest: 32ee2657c57585a08b302964eb42999c2318a935cc0283445b48de3bbcddd260 name: download-service @@ -2161,7 +2161,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.141897-05:00" + created: "2026-01-23T06:27:46.802578-05:00" description: A Helm chart for Kubernetes digest: cd08670bd84072d3761f5cc3aa4f13b0ca2d75412561f4f65dc283003ac2a394 name: download-service @@ -2171,7 +2171,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.141725-05:00" + created: "2026-01-23T06:27:46.802401-05:00" description: A Helm chart for Kubernetes digest: 1cfe4bb6a6f346347e913a982af6e9acf75216a93a7a77c1e3f4068654afb099 name: download-service @@ -2181,7 +2181,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.141568-05:00" + created: "2026-01-23T06:27:46.802221-05:00" description: A Helm chart for Kubernetes digest: f21c6263099736ec7635d0ac1f70e6c017d6c23b4514eaa9d15269e9e0339c0f name: download-service @@ -2191,7 +2191,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.141409-05:00" + created: "2026-01-23T06:27:46.802042-05:00" description: A Helm chart for Kubernetes digest: 8b6e5195286d65ce93f953f13a19bd24f931ce3ffb2d0eef583164c66455d043 name: download-service @@ -2201,7 +2201,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.140851-05:00" + created: "2026-01-23T06:27:46.801846-05:00" description: A Helm chart for Kubernetes digest: 68564668180d3d61599ad657011852c1a718dddb7fe40ce70a5d1cf3a1954366 name: download-service @@ -2211,7 +2211,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.140709-05:00" + created: "2026-01-23T06:27:46.801653-05:00" description: A Helm chart for Kubernetes digest: dd0d502a7ed2b510a2f4531c2a0bab3a915fd5f7f7d55165e85b84bc8d5bd858 name: download-service @@ -2221,7 +2221,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.140579-05:00" + created: "2026-01-23T06:27:46.801326-05:00" description: A Helm chart for Kubernetes digest: 416dff01fc513adbeaee820cb025e9992f434b899f8d3996c40bb38b092da504 name: download-service @@ -2231,7 +2231,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.140435-05:00" + created: "2026-01-23T06:27:46.801155-05:00" description: A Helm chart for Kubernetes digest: 20ef87d765617776f03298df962f0facbdc6bbe038870274a0e3c5d4d3a705eb name: download-service @@ -2241,7 +2241,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.1403-05:00" + created: "2026-01-23T06:27:46.800975-05:00" description: A Helm chart for Kubernetes digest: 9021de839c16a169aa14c71b377b19a75a780bbd874df6d04b8aef2506869822 name: download-service @@ -2252,7 +2252,7 @@ entries: eck-operator: - apiVersion: v2 appVersion: 2.9.0 - created: "2026-01-20T15:24:03.144277-05:00" + created: "2026-01-23T06:27:46.805587-05:00" dependencies: - condition: installCRDs name: eck-operator-crds @@ -2282,7 +2282,7 @@ entries: version: 2.9.0 eck-stack: - apiVersion: v2 - created: "2026-01-20T15:24:03.145451-05:00" + created: "2026-01-23T06:27:46.806849-05:00" dependencies: - condition: eck-elasticsearch.enabled name: eck-elasticsearch @@ -2325,7 +2325,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 8.15.1 - created: "2026-01-20T15:24:03.159123-05:00" + created: "2026-01-23T06:27:46.822029-05:00" dependencies: - condition: global.kibanaEnabled name: kibana @@ -2357,7 +2357,7 @@ entries: category: Analytics apiVersion: v2 appVersion: 8.2.3 - created: "2026-01-20T15:24:03.155241-05:00" + created: "2026-01-23T06:27:46.818005-05:00" dependencies: - condition: global.kibanaEnabled name: kibana @@ -2390,7 +2390,7 @@ entries: category: Analytics apiVersion: v2 appVersion: 7.17.3 - created: "2026-01-20T15:24:03.148316-05:00" + created: "2026-01-23T06:27:46.810173-05:00" dependencies: - condition: global.kibanaEnabled name: kibana @@ -2424,7 +2424,7 @@ entries: category: Analytics apiVersion: v2 appVersion: 8.2.3 - created: "2026-01-20T15:24:03.151689-05:00" + created: "2026-01-23T06:27:46.814102-05:00" dependencies: - condition: global.kibanaEnabled name: kibana @@ -2456,7 +2456,7 @@ entries: encryption-service: - apiVersion: v2 appVersion: "16" - created: "2026-01-20T15:24:03.159408-05:00" + created: "2026-01-23T06:27:46.822965-05:00" description: A Helm chart for Kubernetes digest: d7bbcee0b73e76f54edbb78b37d83b53a8ae3f0399de025fff4d45c5a00e91ff name: encryption-service @@ -2466,7 +2466,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: "16" - created: "2026-01-20T15:24:03.159272-05:00" + created: "2026-01-23T06:27:46.822647-05:00" description: A Helm chart for Kubernetes digest: b503c8aa944cf3efa78238de56a3e65fe838ae1956649f7e6295455328910479 name: encryption-service @@ -2477,7 +2477,7 @@ entries: entityinfo-service: - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.159804-05:00" + created: "2026-01-23T06:27:46.823416-05:00" description: A Helm chart for Kubernetes digest: b9bd46642dd988186eb5c9e2d7eaef52827f3222b42c862f7985efb95911001d name: entityinfo-service @@ -2487,7 +2487,7 @@ entries: version: 0.2.1 - apiVersion: v1 appVersion: "251" - created: "2026-01-20T15:24:03.159675-05:00" + created: "2026-01-23T06:27:46.823266-05:00" description: A Helm chart for Kubernetes digest: 0a835983c2f8e4bc6111f87aa9b0bf18a7bb0c6a55cf9c992f80f033c2d1f312 name: entityinfo-service @@ -2497,7 +2497,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.159542-05:00" + created: "2026-01-23T06:27:46.823114-05:00" description: A Helm chart for Kubernetes digest: 6a16f64004854bad989fceb54270488121f4b7655d39419c82ee4d3291e2e450 name: entityinfo-service @@ -2506,40 +2506,6 @@ entries: - https://pilotdataplatform.github.io/helm-charts/entityinfo-service-0.1.0.tgz version: 0.1.0 external-dns: - - annotations: - category: DeveloperTools - images: | - - name: external-dns - image: docker.io/bitnami/external-dns:0.18.0-debian-12-r4 - licenses: Apache-2.0 - tanzuCategory: clusterUtility - apiVersion: v2 - appVersion: 0.18.0 - created: "2026-01-20T15:24:03.163079-05:00" - dependencies: - - name: common - repository: oci://registry-1.docker.io/bitnamicharts - tags: - - bitnami-common - version: 2.x.x - description: ExternalDNS is a Kubernetes addon that configures public DNS servers - with information about exposed Kubernetes services to make them discoverable. - digest: f830bb9e81e243d90c91b850c71a0f514bd859a342e3535c7cd1c31128d2897c - home: https://bitnami.com - icon: https://dyltqmyl993wv.cloudfront.net/assets/stacks/external-dns/img/external-dns-stack-220x234.png - keywords: - - external-dns - - network - - dns - maintainers: - - name: Broadcom, Inc. All Rights Reserved. - url: https://github.com/bitnami/charts - name: external-dns - sources: - - https://github.com/bitnami/charts/tree/main/bitnami/external-dns - urls: - - https://pilotdataplatform.github.io/helm-charts/external-dns-9.0.3.tgz - version: 9.0.3 - annotations: category: DeveloperTools images: | @@ -2548,7 +2514,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 0.13.6 - created: "2026-01-20T15:24:03.161221-05:00" + created: "2026-01-23T06:27:46.826121-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -2573,10 +2539,65 @@ entries: urls: - https://pilotdataplatform.github.io/helm-charts/external-dns-6.26.0.tgz version: 6.26.0 + - apiVersion: v2 + appVersion: 0.20.0 + created: "2026-01-23T06:27:46.824233-05:00" + description: ExternalDNS synchronizes exposed Kubernetes Services and Ingresses + with DNS providers. + digest: d387a5ed786e4b89c32e24f825a1f3e20a4ad5c456fbd6cc4fe6da855c35839a + home: https://github.com/kubernetes-sigs/external-dns/ + icon: https://github.com/kubernetes-sigs/external-dns/raw/master/docs/img/external-dns.png + keywords: + - kubernetes + - k8s + - externaldns + - external-dns + - dns + - service + - ingress + - gateway + maintainers: + - email: steve.hipwell@gmail.com + name: stevehipwell + name: external-dns + sources: + - https://github.com/kubernetes-sigs/external-dns/ + type: application + urls: + - https://pilotdataplatform.github.io/helm-charts/external-dns-1.20.0.tgz + version: 1.20.0 + external-dns-sigs: + - apiVersion: v2 + appVersion: 0.20.0 + created: "2026-01-23T06:27:46.826737-05:00" + description: ExternalDNS synchronizes exposed Kubernetes Services and Ingresses + with DNS providers. + digest: 3670ad2bc618a353a8daf39955e5f95cd33ba4ec3c30b26bcf3f06d872bcdc2d + home: https://github.com/kubernetes-sigs/external-dns/ + icon: https://github.com/kubernetes-sigs/external-dns/raw/master/docs/img/external-dns.png + keywords: + - kubernetes + - k8s + - externaldns + - external-dns + - dns + - service + - ingress + - gateway + maintainers: + - email: steve.hipwell@gmail.com + name: stevehipwell + name: external-dns-sigs + sources: + - https://github.com/kubernetes-sigs/external-dns/ + type: application + urls: + - https://pilotdataplatform.github.io/helm-charts/external-dns-sigs-1.20.0.tgz + version: 1.20.0 external-secrets: - apiVersion: v2 appVersion: v1.2.1 - created: "2026-01-20T15:24:03.16622-05:00" + created: "2026-01-23T06:27:46.830394-05:00" dependencies: - condition: bitwarden-sdk-server.enabled name: bitwarden-sdk-server @@ -2601,7 +2622,7 @@ entries: fileops-service: - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.168045-05:00" + created: "2026-01-23T06:27:46.832322-05:00" description: A Helm chart for Kubernetes digest: 39df99fff0ed6fce8eda0a69c03adeddfbf4caeb6abaf968cf5ee0d00dc295ae name: fileops-service @@ -2611,7 +2632,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.167685-05:00" + created: "2026-01-23T06:27:46.832121-05:00" description: A Helm chart for Kubernetes digest: 5fb599d492dfc403430dda0c4eb720adcbb05b70afbb076a8c481132fb102762 name: fileops-service @@ -2621,7 +2642,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.167279-05:00" + created: "2026-01-23T06:27:46.831928-05:00" description: A Helm chart for Kubernetes digest: d255a49a36f49f22bcc567acfc17467f6a41329887a55ee909e076b1a1afba3e name: fileops-service @@ -2631,7 +2652,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.167097-05:00" + created: "2026-01-23T06:27:46.831733-05:00" description: A Helm chart for Kubernetes digest: 95c71f1c2f3a9e9f715c6dd5ca27aa18f56967078fd07875be02d4288de9bac1 name: fileops-service @@ -2641,7 +2662,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.166902-05:00" + created: "2026-01-23T06:27:46.831419-05:00" description: A Helm chart for Kubernetes digest: ff00443015ffc0b21fc90db08d05054ddee40ffef7bc033e332fcf45e3eb5d07 name: fileops-service @@ -2651,7 +2672,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.166723-05:00" + created: "2026-01-23T06:27:46.83122-05:00" description: A Helm chart for Kubernetes digest: e1b7016c8b3938b0f53137addd2bcb10e2f0fb1de7b2ae98e47cbb0d3c7781dc name: fileops-service @@ -2661,7 +2682,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.166555-05:00" + created: "2026-01-23T06:27:46.830978-05:00" description: A Helm chart for Kubernetes digest: 62c97629655331eff74d5829d00968ea2a71a621fe03d5fa99ceb084d7adc8dc name: fileops-service @@ -2671,7 +2692,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "252" - created: "2026-01-20T15:24:03.166382-05:00" + created: "2026-01-23T06:27:46.830727-05:00" description: A Helm chart for Kubernetes digest: b414b15a1bdd5e74fceaafe8ebb5c93edc2e3c85a10ea17caf7a44e7964c8c1a name: fileops-service @@ -2688,7 +2709,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 1.16.4 - created: "2026-01-20T15:24:03.172241-05:00" + created: "2026-01-23T06:27:46.837523-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -2723,7 +2744,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 1.16.3 - created: "2026-01-20T15:24:03.170367-05:00" + created: "2026-01-23T06:27:46.835661-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -2754,7 +2775,7 @@ entries: category: Analytics apiVersion: v2 appVersion: 1.15.0 - created: "2026-01-20T15:24:03.173568-05:00" + created: "2026-01-23T06:27:46.839248-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -2784,7 +2805,7 @@ entries: version: 5.2.1 - apiVersion: v2 appVersion: v1.17.1 - created: "2026-01-20T15:24:03.168934-05:00" + created: "2026-01-23T06:27:46.833579-05:00" description: A Helm chart for Kubernetes digest: 15020e73e82dc467c1109a5385e3eebec2b7de987ff86c18b986cf28bd7d98e3 home: https://www.fluentd.org/ @@ -2803,7 +2824,7 @@ entries: version: 0.5.3 - apiVersion: v2 appVersion: v1.16.2 - created: "2026-01-20T15:24:03.168479-05:00" + created: "2026-01-23T06:27:46.832904-05:00" description: A Helm chart for Kubernetes digest: 25f8b1031b3b7d0fc24c8e591e41f895c26ba79877c89dce4036127e95d22608 home: https://www.fluentd.org/ @@ -2823,7 +2844,7 @@ entries: gha-runner-scale-set: - apiVersion: v2 appVersion: 0.8.2 - created: "2026-01-20T15:24:03.173894-05:00" + created: "2026-01-23T06:27:46.839659-05:00" description: A Helm chart for deploying an AutoScalingRunnerSet digest: 7aa9e5e0a51fb96b5d8a600e7e2acb600a4fe52140c71dfa7591453c81400a54 home: https://github.com/actions/actions-runner-controller @@ -2840,7 +2861,7 @@ entries: gha-runner-scale-set-controller: - apiVersion: v2 appVersion: 0.8.2 - created: "2026-01-20T15:24:03.177439-05:00" + created: "2026-01-23T06:27:46.843797-05:00" description: A Helm chart for install actions-runner-controller CRD digest: 327af0ef89b6a6c3db8141475906a2169c8e053cb902158e25200fb5ee1e055d home: https://github.com/actions/actions-runner-controller @@ -2857,7 +2878,7 @@ entries: gitlab-runner: - apiVersion: v1 appVersion: 16.11.1 - created: "2026-01-20T15:24:03.178585-05:00" + created: "2026-01-23T06:27:46.845251-05:00" description: GitLab Runner digest: ad132a6591624871f0dbf16c5c07cd5f9745fcdbbce0d2598e4095005220c3aa icon: https://gitlab.com/uploads/-/system/project/avatar/250833/runner_logo.png @@ -2878,7 +2899,7 @@ entries: version: 0.64.1 - apiVersion: v1 appVersion: 15.11.0 - created: "2026-01-20T15:24:03.178019-05:00" + created: "2026-01-23T06:27:46.844455-05:00" description: GitLab Runner digest: 918df71c3e75b5117e09a26250fc2ff78b395db1925a314c52d11c9712fd1b0d icon: https://gitlab.com/uploads/-/system/project/avatar/250833/runner_logo.png @@ -2900,7 +2921,7 @@ entries: grafana-agent: - apiVersion: v2 appVersion: v0.42.0 - created: "2026-01-20T15:24:03.17948-05:00" + created: "2026-01-23T06:27:46.845933-05:00" dependencies: - condition: crds.create name: crds @@ -2916,7 +2937,7 @@ entries: guacamole-operator: - apiVersion: v2 appVersion: 0.1.4-5b753f8 - created: "2026-01-20T15:24:03.180081-05:00" + created: "2026-01-23T06:27:46.847019-05:00" description: A Helm chart for Kubernetes digest: 8653512c504ae301d18e1a89ca81d133712e771a9f9292fc3b48e759277e75e3 name: guacamole-operator @@ -2926,7 +2947,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.4-5b753f8 - created: "2026-01-20T15:24:03.179926-05:00" + created: "2026-01-23T06:27:46.846776-05:00" description: A Helm chart for Kubernetes digest: 904622581627d3d77120683cde5fe54c9596f2afc299142f10b6777ec7d94a1a name: guacamole-operator @@ -2936,7 +2957,7 @@ entries: version: 0.1.3 - apiVersion: v2 appVersion: 0.1.0-08353e1 - created: "2026-01-20T15:24:03.179774-05:00" + created: "2026-01-23T06:27:46.846536-05:00" description: A Helm chart for Kubernetes digest: 41c211e812bd00e34b4f9c995e2cd760fa0cc2482f697339abb66939d13599c8 name: guacamole-operator @@ -2946,7 +2967,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 0.1.0-08353e1 - created: "2026-01-20T15:24:03.179627-05:00" + created: "2026-01-23T06:27:46.846243-05:00" description: A Helm chart for Kubernetes digest: 0dd00b1d9f98525e195d2a533992db72fed9eb8a06280da13c2f2054872d290e name: guacamole-operator @@ -2957,7 +2978,7 @@ entries: hpc-service: - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.180373-05:00" + created: "2026-01-23T06:27:46.847525-05:00" description: A Helm chart for Kubernetes digest: bbf6068de318e0fa12d45542eb51cc9ef5b226289e2b4dbbc3b7f083fff557ee name: hpc-service @@ -2967,7 +2988,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "25" - created: "2026-01-20T15:24:03.180227-05:00" + created: "2026-01-23T06:27:46.847277-05:00" description: A Helm chart for Kubernetes digest: c557b90c9a59e8c7f87eb992de6efbd4eb7beca23c2729df970d82799eff7483 name: hpc-service @@ -2982,7 +3003,7 @@ entries: artifacthub.io/prerelease: "false" apiVersion: v2 appVersion: 1.14.1 - created: "2026-01-20T15:24:03.185289-05:00" + created: "2026-01-23T06:27:46.852638-05:00" description: Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer digest: de85797a37e9a2590647392ad5fd8e8bcdd221e85962d72ae50e9fefcbda784d @@ -3009,7 +3030,7 @@ entries: artifacthub.io/prerelease: "false" apiVersion: v2 appVersion: 1.12.1 - created: "2026-01-20T15:24:03.183551-05:00" + created: "2026-01-23T06:27:46.850405-05:00" description: Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer digest: 59f6647b8c0aa12267722fa0ade16713fb0b16a1af932227af2065fdd1a7f3bc @@ -3038,7 +3059,7 @@ entries: artifacthub.io/prerelease: "false" apiVersion: v2 appVersion: 1.2.0 - created: "2026-01-20T15:24:03.181495-05:00" + created: "2026-01-23T06:27:46.848751-05:00" description: Ingress controller for Kubernetes using NGINX as a reverse proxy and load balancer digest: cbf11e45b099dc3e1a0c1e8dbe12121f6d5680c3ab115bd39ca522c04ea7e95c @@ -3081,7 +3102,7 @@ entries: url: https://github.com/jenkinsci/helm-charts/issues apiVersion: v2 appVersion: 2.504.1 - created: "2026-01-20T15:24:03.190133-05:00" + created: "2026-01-23T06:27:46.858717-05:00" description: 'Jenkins - Build great things at any scale! As the leading open source automation server, Jenkins provides over 2000 plugins to support building, deploying and automating any project. ' @@ -3134,7 +3155,7 @@ entries: url: https://github.com/jenkinsci/helm-charts/issues apiVersion: v2 appVersion: 2.414.3 - created: "2026-01-20T15:24:03.188439-05:00" + created: "2026-01-23T06:27:46.856304-05:00" description: Jenkins - Build great things at any scale! The leading open source automation server, Jenkins provides over 1800 plugins to support building, deploying and automating any project. @@ -3182,7 +3203,7 @@ entries: url: https://www.jenkins.io/ apiVersion: v2 appVersion: 2.332.3 - created: "2026-01-20T15:24:03.186639-05:00" + created: "2026-01-23T06:27:46.854382-05:00" description: Jenkins - Build great things at any scale! The leading open source automation server, Jenkins provides hundreds of plugins to support building, deploying and automating any project. @@ -3234,7 +3255,7 @@ entries: name: traefik apiVersion: v2 appVersion: 4.1.6 - created: "2026-01-20T15:24:03.195241-05:00" + created: "2026-01-23T06:27:46.864799-05:00" description: Multi-user Jupyter installation digest: 94b462c91652dc8877d43b216f869155d24e9c1bda74a40fdd7b540b60cafa9a home: https://z2jh.jupyter.org @@ -3279,7 +3300,7 @@ entries: name: traefik apiVersion: v2 appVersion: 4.1.5 - created: "2026-01-20T15:24:03.194066-05:00" + created: "2026-01-23T06:27:46.863521-05:00" description: Multi-user Jupyter installation digest: e7f537b9b0e3b23d2acef89aec7f2a9458bc5710e18fc7e490fd98ee3f6efdf8 home: https://z2jh.jupyter.org @@ -3324,7 +3345,7 @@ entries: name: traefik apiVersion: v2 appVersion: 3.0.0 - created: "2026-01-20T15:24:03.192817-05:00" + created: "2026-01-23T06:27:46.86187-05:00" description: Multi-user Jupyter installation digest: 28a89742e24ec6bf6650fef72953215b1140fddc9bef628e7b15ebb317996abb home: https://z2jh.jupyter.org @@ -3369,7 +3390,7 @@ entries: name: traefik apiVersion: v2 appVersion: 1.5.0 - created: "2026-01-20T15:24:03.191252-05:00" + created: "2026-01-23T06:27:46.860255-05:00" description: Multi-user Jupyter installation digest: 507f71b7a9e88bd3d4f3f3b6dc1700e03c00ce1c9307106a1c58066b25255b89 home: https://z2jh.jupyter.org @@ -3393,7 +3414,7 @@ entries: jupyterhub-operator: - apiVersion: v2 appVersion: 0.1.0-2265503 - created: "2026-01-20T15:24:03.195673-05:00" + created: "2026-01-23T06:27:46.865571-05:00" description: A Helm chart for Kubernetes digest: a2e16444ebcf4f58cfa424b9406883ea4b757d722308bf7a7a862a906df735c0 name: jupyterhub-operator @@ -3403,7 +3424,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 0.1.0-2265503 - created: "2026-01-20T15:24:03.195529-05:00" + created: "2026-01-23T06:27:46.865361-05:00" description: A Helm chart for Kubernetes digest: 80e080d816db45945ed6b2a3cc9db032bc617a88f5ee280fa3c19c3c52a11faf name: jupyterhub-operator @@ -3413,7 +3434,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.0-2265503 - created: "2026-01-20T15:24:03.195382-05:00" + created: "2026-01-23T06:27:46.865088-05:00" description: A Helm chart for Kubernetes digest: 69f09ec01d35dc33d8e50916121927cc1a7f83a6407d981a401400e0ac71d3bb name: jupyterhub-operator @@ -3446,7 +3467,7 @@ entries: name: traefik apiVersion: v2 appVersion: 3.0.0 - created: "2026-01-20T15:24:03.197158-05:00" + created: "2026-01-23T06:27:46.866786-05:00" description: Multi-user Jupyter installation digest: befaf6ca47feb5665b3c3482a0194fd1cda18014939539e44f77a0209dcd7e36 home: https://z2jh.jupyter.org @@ -3482,7 +3503,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 3.9.0 - created: "2026-01-20T15:24:03.204236-05:00" + created: "2026-01-23T06:27:46.874727-05:00" dependencies: - condition: zookeeper.enabled name: zookeeper @@ -3518,7 +3539,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 3.1.0 - created: "2026-01-20T15:24:03.199965-05:00" + created: "2026-01-23T06:27:46.870267-05:00" dependencies: - condition: zookeeper.enabled name: zookeeper @@ -3563,7 +3584,7 @@ entries: tanzuCategory: application apiVersion: v2 appVersion: 26.3.2 - created: "2026-01-20T15:24:03.226673-05:00" + created: "2026-01-23T06:27:46.89737-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3603,7 +3624,7 @@ entries: tanzuCategory: application apiVersion: v2 appVersion: 26.2.5 - created: "2026-01-20T15:24:03.222569-05:00" + created: "2026-01-23T06:27:46.892907-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3642,7 +3663,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 25.0.6 - created: "2026-01-20T15:24:03.217766-05:00" + created: "2026-01-23T06:27:46.888362-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3681,7 +3702,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 22.0.3 - created: "2026-01-20T15:24:03.213841-05:00" + created: "2026-01-23T06:27:46.884509-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3720,7 +3741,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 22.0.1 - created: "2026-01-20T15:24:03.210824-05:00" + created: "2026-01-23T06:27:46.881035-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3754,7 +3775,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 20.0.5 - created: "2026-01-20T15:24:03.207287-05:00" + created: "2026-01-23T06:27:46.877695-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -3788,7 +3809,7 @@ entries: category: DeveloperTools apiVersion: v2 appVersion: 16.1.0 - created: "2026-01-20T15:24:03.231657-05:00" + created: "2026-01-23T06:27:46.902611-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -3822,7 +3843,7 @@ entries: category: DeveloperTools apiVersion: v2 appVersion: 16.1.0 - created: "2026-01-20T15:24:03.229363-05:00" + created: "2026-01-23T06:27:46.900161-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -4139,7 +4160,7 @@ entries: artifacthub.io/operatorCapabilities: Deep Insights apiVersion: v2 appVersion: 1.27.1 - created: "2026-01-20T15:24:03.233928-05:00" + created: "2026-01-23T06:27:46.904981-05:00" description: A Helm chart for KubeRocketCI Keycloak Operator digest: fd71714252066c2f735a71182a4f214c8d7fb6efd46a1052ddfc10f71bc0dacf home: https://docs.kuberocketci.io/ @@ -4457,7 +4478,7 @@ entries: artifacthub.io/operatorCapabilities: Deep Insights apiVersion: v2 appVersion: 1.21.0-indoc-1 - created: "2026-01-20T15:24:03.233197-05:00" + created: "2026-01-23T06:27:46.904032-05:00" description: A Helm chart for EDP Keycloak Operator digest: f5c166fdf793c9f35bb489cd63bf42485c7539def413b85155947f9847ed9fc7 home: https://epam.github.io/edp-install/ @@ -4775,7 +4796,7 @@ entries: artifacthub.io/operatorCapabilities: Deep Insights apiVersion: v2 appVersion: 1.18.0 - created: "2026-01-20T15:24:03.232178-05:00" + created: "2026-01-23T06:27:46.903347-05:00" description: A Helm chart for EDP Keycloak Operator digest: 0148ad717d1428919577e0b56273643846679f513aae3c2d4b6fd8ca559f613a home: https://epam.github.io/edp-install/ @@ -4807,7 +4828,7 @@ entries: keycloakx: - apiVersion: v2 appVersion: 26.4.0 - created: "2026-01-20T15:24:03.235393-05:00" + created: "2026-01-23T06:27:46.906656-05:00" description: Keycloak.X - Open Source Identity and Access Management for Modern Applications and Services digest: fe77d648516a8f6720db682b683ba1d4eb3fcbe2d0bf65be1ad29ad52a0e8d2b @@ -4835,7 +4856,7 @@ entries: version: 7.1.4 - apiVersion: v2 appVersion: 26.3.3 - created: "2026-01-20T15:24:03.234644-05:00" + created: "2026-01-23T06:27:46.905933-05:00" description: Keycloak.X - Open Source Identity and Access Management for Modern Applications and Services digest: 96cddc28a1a28ee79e6892e58d4f4129ffc2b3b4f27b39047027031cd80bd317 @@ -4864,7 +4885,7 @@ entries: kg-service: - apiVersion: v2 appVersion: "30" - created: "2026-01-20T15:24:03.235823-05:00" + created: "2026-01-23T06:27:46.907493-05:00" description: A Helm chart for Kubernetes digest: 4b21fd1cee7dc553d878b459eb29173753bb3eb79a0811a7b3b3864bf1039aeb name: kg-service @@ -4874,7 +4895,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "30" - created: "2026-01-20T15:24:03.235679-05:00" + created: "2026-01-23T06:27:46.907323-05:00" description: A Helm chart for Kubernetes digest: 57196f025e9647ad5a8e24b99792a035f95ee451ed36a78900b19b7dbe27f40a name: kg-service @@ -4884,7 +4905,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "30" - created: "2026-01-20T15:24:03.235531-05:00" + created: "2026-01-23T06:27:46.90706-05:00" description: A Helm chart for Kubernetes digest: 6cbcbc88fdb85727d6e310d9fa76a22aefb59be3222e69b3b58c9ce3cd9e3db4 name: kg-service @@ -4897,7 +4918,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 2.8.1 - created: "2026-01-20T15:24:03.244148-05:00" + created: "2026-01-23T06:27:46.916141-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -4937,7 +4958,7 @@ entries: version: 6.3.10 - apiVersion: v2 appVersion: "3.9" - created: "2026-01-20T15:24:03.23994-05:00" + created: "2026-01-23T06:27:46.911677-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -4959,7 +4980,7 @@ entries: konga: - apiVersion: v1 appVersion: "1.0" - created: "2026-01-20T15:24:03.244442-05:00" + created: "2026-01-23T06:27:46.916574-05:00" description: A Helm chart for Kubernetes digest: 9ad395a7aef5c61a3e51c1e35184af7dcc2833d5f66a461ce0b4e2cdc0916144 name: konga @@ -4968,7 +4989,7 @@ entries: version: 2.0.0 - apiVersion: v1 appVersion: "1.0" - created: "2026-01-20T15:24:03.2443-05:00" + created: "2026-01-23T06:27:46.916315-05:00" description: A Helm chart for Kubernetes digest: bd4fded5ea3381f1958a4993af05e7aa38ffece1c28abe51f0e05c1009e4e6d5 name: konga @@ -4986,7 +5007,7 @@ entries: artifacthub.io/operator: "true" apiVersion: v2 appVersion: v0.77.2 - created: "2026-01-20T15:24:03.290297-05:00" + created: "2026-01-23T06:27:46.963113-05:00" dependencies: - condition: crds.enabled name: crds @@ -5055,7 +5076,7 @@ entries: artifacthub.io/operator: "true" apiVersion: v2 appVersion: v0.74.0 - created: "2026-01-20T15:24:03.277665-05:00" + created: "2026-01-23T06:27:46.950396-05:00" dependencies: - condition: crds.enabled name: crds @@ -5124,7 +5145,7 @@ entries: artifacthub.io/operator: "true" apiVersion: v2 appVersion: v0.74.0 - created: "2026-01-20T15:24:03.266607-05:00" + created: "2026-01-23T06:27:46.938989-05:00" dependencies: - condition: crds.enabled name: crds @@ -5193,7 +5214,7 @@ entries: artifacthub.io/operator: "true" apiVersion: v2 appVersion: v0.68.0 - created: "2026-01-20T15:24:03.255094-05:00" + created: "2026-01-23T06:27:46.927295-05:00" dependencies: - condition: crds.enabled name: crds @@ -5255,7 +5276,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 0.1.0 - created: "2026-01-20T15:24:03.291009-05:00" + created: "2026-01-23T06:27:46.964139-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -5284,7 +5305,7 @@ entries: lineage-service: - apiVersion: v2 appVersion: "92" - created: "2026-01-20T15:24:03.291314-05:00" + created: "2026-01-23T06:27:46.964719-05:00" description: A Helm chart for Kubernetes digest: 7ea3d499daed53d98aedf8346aa0598b4b03fbb49a8669adac0b071cdee5b615 name: lineage-service @@ -5294,7 +5315,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: "92" - created: "2026-01-20T15:24:03.291176-05:00" + created: "2026-01-23T06:27:46.964371-05:00" description: A Helm chart for Kubernetes digest: da244b0e4f89b4bd2a447202d8471e29920e2a00a6d14b72389a7db19be93160 name: lineage-service @@ -5305,7 +5326,7 @@ entries: loki: - apiVersion: v2 appVersion: 3.2.0 - created: "2026-01-20T15:24:03.306837-05:00" + created: "2026-01-23T06:27:46.98187-05:00" dependencies: - alias: minio condition: minio.enabled @@ -5341,7 +5362,7 @@ entries: version: 6.20.0 - apiVersion: v2 appVersion: 2.9.2 - created: "2026-01-20T15:24:03.299865-05:00" + created: "2026-01-23T06:27:46.974624-05:00" dependencies: - alias: minio condition: minio.enabled @@ -5371,7 +5392,7 @@ entries: version: 5.40.2 - apiVersion: v2 appVersion: 2.9.2 - created: "2026-01-20T15:24:03.295321-05:00" + created: "2026-01-23T06:27:46.969943-05:00" dependencies: - alias: minio condition: minio.enabled @@ -5402,7 +5423,7 @@ entries: mailhog: - apiVersion: v2 appVersion: v1.0.1 - created: "2026-01-20T15:24:03.307063-05:00" + created: "2026-01-23T06:27:46.982292-05:00" description: An e-mail testing tool for developers digest: 711627ad8997d1d6587b5ec2f0689ab8e374b6244ffc2a090a09f11c322787c5 home: http://iankent.uk/project/mailhog/ @@ -5427,7 +5448,7 @@ entries: maintenance-page: - apiVersion: v2 appVersion: "1528" - created: "2026-01-20T15:24:03.307325-05:00" + created: "2026-01-23T06:27:46.982764-05:00" description: A Helm chart for Kubernetes digest: fd0689491b65caa1796f38cb94e883d707345f8151c5c9e31387c52e1fa01500 name: maintenance-page @@ -5437,7 +5458,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1528" - created: "2026-01-20T15:24:03.307195-05:00" + created: "2026-01-23T06:27:46.982559-05:00" description: A Helm chart for Kubernetes digest: 7632b52eb897055d5d3d37328f98712898a405810400be3c3f814a780c5e1c73 name: maintenance-page @@ -5448,7 +5469,7 @@ entries: metadata-event-handler: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.307616-05:00" + created: "2026-01-23T06:27:46.983203-05:00" description: A Helm chart for Kubernetes digest: d9d28ae6c12d35afc7c758f929c6acbda6ebfb0e19d4a70d46acaf608ce3f047 name: metadata-event-handler @@ -5458,7 +5479,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.307473-05:00" + created: "2026-01-23T06:27:46.983028-05:00" description: A Helm chart for Kubernetes digest: 2c5645271a08a4dce5058e1781d86658ed8207175c4789941eba517bb9e23246 name: metadata-event-handler @@ -5469,7 +5490,7 @@ entries: metadata-service: - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.309031-05:00" + created: "2026-01-23T06:27:46.984762-05:00" description: A Helm chart for Kubernetes digest: 6d3bf4e99c8f63aa9570f08495bb69f6127ee1d030003ebb0313b285c2ffef71 name: metadata-service @@ -5479,7 +5500,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308874-05:00" + created: "2026-01-23T06:27:46.984489-05:00" description: A Helm chart for Kubernetes digest: fa86ed0e16bcb94e8818c495dbc757f6a069a21fb592e69e9c5f21532351dcfd name: metadata-service @@ -5489,7 +5510,7 @@ entries: version: 0.5.1 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308735-05:00" + created: "2026-01-23T06:27:46.98426-05:00" description: A Helm chart for Kubernetes digest: ed5b5621795021cb9ed819657ee1afccf32ccf0e4c19b4a14189b9a6954a8d3a name: metadata-service @@ -5499,7 +5520,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308598-05:00" + created: "2026-01-23T06:27:46.984106-05:00" description: A Helm chart for Kubernetes digest: 0003d7f5cc87e05634d9d0d55b6d73914b7bb315608e63d1cee824fcc328be8b name: metadata-service @@ -5509,7 +5530,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308463-05:00" + created: "2026-01-23T06:27:46.983954-05:00" description: A Helm chart for Kubernetes digest: 574bcd22699b49e3f70661bc7cc3d303210c5dbdb3920f1c048882c89e65b145 name: metadata-service @@ -5519,7 +5540,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308318-05:00" + created: "2026-01-23T06:27:46.983674-05:00" description: A Helm chart for Kubernetes digest: 4559cd69500358a1e7f08c6f0208d3c3121f927b0a22a5ce6dd835d864d607b7 name: metadata-service @@ -5529,7 +5550,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.308164-05:00" + created: "2026-01-23T06:27:46.983524-05:00" description: A Helm chart for Kubernetes digest: 6c056e78457cfb5bd0b7be91c3ad3ba4b1b827836397364bab2cd5bebf90a451 name: metadata-service @@ -5539,7 +5560,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "7" - created: "2026-01-20T15:24:03.30793-05:00" + created: "2026-01-23T06:27:46.983371-05:00" description: A Helm chart for Kubernetes digest: d0adfe676c0bf848b769479d00e10561c37be841d58cb41102febbfc6bf68627 name: metadata-service @@ -5552,7 +5573,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 2022.7.17 - created: "2026-01-20T15:24:03.310382-05:00" + created: "2026-01-23T06:27:46.986563-05:00" dependencies: - name: common repository: https://marketplace.azurecr.io/helm/v1/repo @@ -5585,7 +5606,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 2022.6.17 - created: "2026-01-20T15:24:03.311915-05:00" + created: "2026-01-23T06:27:46.98796-05:00" dependencies: - name: common repository: https://marketplace.azurecr.io/helm/v1/repo @@ -5617,7 +5638,7 @@ entries: networkpolicy: - apiVersion: v2 appVersion: v1.0.0 - created: "2026-01-20T15:24:03.312016-05:00" + created: "2026-01-23T06:27:46.988181-05:00" description: Helm Chart representing a single Network Policy Kubernetes API object digest: c263fc917d32b8c0a0cc17a6849444a4bc6fcb9f25781f8e66570ea5369a6c74 home: https://github.com/ameijer/k8s-as-helm @@ -5638,7 +5659,7 @@ entries: nf-weblog: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.313555-05:00" + created: "2026-01-23T06:27:46.990496-05:00" description: A Helm chart for Kubernetes digest: dffbf65bf0ec91538504c0461ed05fc27ebdd57c15f03fac7e788e519983803e name: nf-weblog @@ -5648,7 +5669,7 @@ entries: version: 0.1.9 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.313406-05:00" + created: "2026-01-23T06:27:46.990214-05:00" description: A Helm chart for Kubernetes digest: 05d585b5fb72bc42f87f394d2e16dd79da57210237cfe5030e3e69c9dfb86c3b name: nf-weblog @@ -5658,7 +5679,7 @@ entries: version: 0.1.8 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.313263-05:00" + created: "2026-01-23T06:27:46.989795-05:00" description: A Helm chart for Kubernetes digest: 1a1060554e97f2666121b2d4a433482a912edd2d4f754e877679ca1345af08d5 name: nf-weblog @@ -5668,7 +5689,7 @@ entries: version: 0.1.7 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.31312-05:00" + created: "2026-01-23T06:27:46.989626-05:00" description: A Helm chart for Kubernetes digest: 1984004b1d6deb9258032c754a3709a5386d879c3fb4b38403eed8f382f67d77 name: nf-weblog @@ -5678,7 +5699,7 @@ entries: version: 0.1.6 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.312965-05:00" + created: "2026-01-23T06:27:46.989465-05:00" description: A Helm chart for Kubernetes digest: 789c2d473645eaedf53f56771e9575152c17dfa0409c726a4ad3c4f4ef482204 name: nf-weblog @@ -5688,7 +5709,7 @@ entries: version: 0.1.5 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.312812-05:00" + created: "2026-01-23T06:27:46.989162-05:00" description: A Helm chart for Kubernetes digest: cccaa9a0ee7c47205cf79245558683c656c8f94b815e59daff0e6fdd6cb78d55 name: nf-weblog @@ -5698,7 +5719,7 @@ entries: version: 0.1.4 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.31266-05:00" + created: "2026-01-23T06:27:46.988997-05:00" description: A Helm chart for Kubernetes digest: b19f1352ce9adc6cb882001bff0a38670683342bb1decbc8c592bdec40d98a2c name: nf-weblog @@ -5708,7 +5729,7 @@ entries: version: 0.1.3 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.312504-05:00" + created: "2026-01-23T06:27:46.988826-05:00" description: A Helm chart for Kubernetes digest: 7d6156d3f43da659f9bf97a499fc73695ecf409d02cbd5b09e1cd41fb64cb391 name: nf-weblog @@ -5718,7 +5739,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.312337-05:00" + created: "2026-01-23T06:27:46.98866-05:00" description: A Helm chart for Kubernetes digest: be7c0f97ed94f0f8da7736f0e797ef2aca2c31205908bbe427434fee6e06885c name: nf-weblog @@ -5728,7 +5749,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.312176-05:00" + created: "2026-01-23T06:27:46.988469-05:00" description: A Helm chart for Kubernetes digest: a82f93fb7228da1f962d21c45daae24fa69c150e95e290f0e6c545ca68847136 name: nf-weblog @@ -5739,7 +5760,7 @@ entries: nginx-ingress: - apiVersion: v2 appVersion: 5.3.1 - created: "2026-01-20T15:24:03.315367-05:00" + created: "2026-01-23T06:27:46.992183-05:00" description: NGINX Ingress Controller digest: 9e6ee264c3e70eddd6c6eb0836c61487e52eecc833a9e90fd31c4c153cc6e610 home: https://github.com/nginx/kubernetes-ingress @@ -5761,7 +5782,7 @@ entries: notification-service: - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.318075-05:00" + created: "2026-01-23T06:27:46.995897-05:00" description: A Helm chart for Kubernetes digest: 4c001347a88623820637153845314ea563f1f405e3c0c6956161aeceb4a0ca49 name: notification-service @@ -5771,7 +5792,7 @@ entries: version: 1.0.9 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317924-05:00" + created: "2026-01-23T06:27:46.99572-05:00" description: A Helm chart for Kubernetes digest: f61a94c382c4304135ece499404a7e2dcd2b03bb3bced69b6aa0b8a4aca40b2c name: notification-service @@ -5781,7 +5802,7 @@ entries: version: 1.0.8 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317767-05:00" + created: "2026-01-23T06:27:46.995522-05:00" description: A Helm chart for Kubernetes digest: 9071732a8e56468cd9c04c2738dddd09576c59a580bd6d6d42ac41b535c589a5 name: notification-service @@ -5791,7 +5812,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317619-05:00" + created: "2026-01-23T06:27:46.995332-05:00" description: A Helm chart for Kubernetes digest: 5f3fc727143579d7856b075478fc9254867f48d1e6517d09446f066e748c0ef4 name: notification-service @@ -5801,7 +5822,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317464-05:00" + created: "2026-01-23T06:27:46.995134-05:00" description: A Helm chart for Kubernetes digest: 1ba77ef1008ae14c237510559391c558c914bb3f264c32403ab5262f860f7b6b name: notification-service @@ -5811,7 +5832,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317308-05:00" + created: "2026-01-23T06:27:46.994946-05:00" description: A Helm chart for Kubernetes digest: 50f57820c779a8d82e7e624e198ecc55aa4acd83f135db1e239991be36e70989 name: notification-service @@ -5821,7 +5842,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.31716-05:00" + created: "2026-01-23T06:27:46.994756-05:00" description: A Helm chart for Kubernetes digest: 56dd962b49ace12d85fef44791a0b227a92fe49ccca8a94e66f8cc56da70bbad name: notification-service @@ -5831,7 +5852,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.317008-05:00" + created: "2026-01-23T06:27:46.994555-05:00" description: A Helm chart for Kubernetes digest: 853263af8d8bf3becbcf9d7b112404418da90a34f6dcbd3aa809af3bdc7d6ec1 name: notification-service @@ -5841,7 +5862,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.31686-05:00" + created: "2026-01-23T06:27:46.994178-05:00" description: A Helm chart for Kubernetes digest: a9101070da8900d20323c366d5ec18ef5336a49e151eddc1c7da1d019e97a1ef name: notification-service @@ -5851,7 +5872,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.316709-05:00" + created: "2026-01-23T06:27:46.993843-05:00" description: A Helm chart for Kubernetes digest: f6c6973f9ed6b4f20e3db2ab14df5a9d5f06f620f3099628e7c49d05b81a2388 name: notification-service @@ -5861,7 +5882,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.31654-05:00" + created: "2026-01-23T06:27:46.993451-05:00" description: A Helm chart for Kubernetes digest: 3eb44e1f410216104f70dce5967d3070db7afbc9e3df2fdaa70cfb85ea834f85 name: notification-service @@ -5871,7 +5892,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.316397-05:00" + created: "2026-01-23T06:27:46.993311-05:00" description: A Helm chart for Kubernetes digest: a6336136421e5da402e1b445f4ec0ba278848f3685ded9c2d8774696a949854e name: notification-service @@ -5881,7 +5902,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.316251-05:00" + created: "2026-01-23T06:27:46.993159-05:00" description: A Helm chart for Kubernetes digest: c36b7776f7b771e057eb26e36b8b4bf2fc9e4bf5ff111d06e01e630314946b01 name: notification-service @@ -5891,7 +5912,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.316103-05:00" + created: "2026-01-23T06:27:46.993001-05:00" description: A Helm chart for Kubernetes digest: 5cc5a4acb9d076ef7ed819333621d3b03bf40936ac841404ad893deca89cc161 name: notification-service @@ -5901,7 +5922,7 @@ entries: version: 0.3.2 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.315955-05:00" + created: "2026-01-23T06:27:46.992844-05:00" description: A Helm chart for Kubernetes digest: eee2988f0dee5ff21464c287b68a79f63215039839be16ac84ba80ad1c02d3a1 name: notification-service @@ -5911,7 +5932,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.315808-05:00" + created: "2026-01-23T06:27:46.992686-05:00" description: A Helm chart for Kubernetes digest: 016147722f3cffc2046db1309e5a91f1a95c8cbdf49d3c2c631bb5a290e63d94 name: notification-service @@ -5921,7 +5942,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.315662-05:00" + created: "2026-01-23T06:27:46.992522-05:00" description: A Helm chart for Kubernetes digest: 5a8bf11206d77f9f7ed20904ea97bb6eaa469c9c4761f09570d2f86c902d68ac name: notification-service @@ -5931,7 +5952,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "103" - created: "2026-01-20T15:24:03.315515-05:00" + created: "2026-01-23T06:27:46.992354-05:00" description: A Helm chart for Kubernetes digest: 05c1a628ea8f558421f4eb949c75ce8ff66101df5a1dcd0b6ccedd7f24eecb66 name: notification-service @@ -5942,7 +5963,7 @@ entries: opencost: - apiVersion: v2 appVersion: 1.105.0 - created: "2026-01-20T15:24:03.318684-05:00" + created: "2026-01-23T06:27:46.996595-05:00" description: OpenCost and OpenCost UI digest: e521c49e1ef08036e07d10329c018e74de4b61dc082e2f4cc5317cf767a02551 keywords: @@ -5962,7 +5983,7 @@ entries: version: 1.18.0 - apiVersion: v2 appVersion: 1.104.4 - created: "2026-01-20T15:24:03.318384-05:00" + created: "2026-01-23T06:27:46.996236-05:00" description: OpenCost and OpenCost UI digest: 82e7bd4cbd0e5926b307e8fffb2180b6c3fc458f383a1fcce43bae26e7f6ef0f keywords: @@ -5983,7 +6004,7 @@ entries: pact-broker: - apiVersion: v2 appVersion: 2.105.0.1 - created: "2026-01-20T15:24:03.321209-05:00" + created: "2026-01-23T06:27:46.999513-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -6007,7 +6028,7 @@ entries: pipelinewatch-service: - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.322033-05:00" + created: "2026-01-23T06:27:47.000449-05:00" description: A Helm chart for Kubernetes digest: 313b0473c296adcf53f3aa088e85036f60f5b0ae9293118b12b247b01ded6ec8 name: pipelinewatch-service @@ -6017,7 +6038,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.321903-05:00" + created: "2026-01-23T06:27:47.000304-05:00" description: A Helm chart for Kubernetes digest: ecc86c291435e01a9be8e2503fbd495f9311458cb6057051d25500febe9646ef name: pipelinewatch-service @@ -6027,7 +6048,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.321774-05:00" + created: "2026-01-23T06:27:47.000151-05:00" description: A Helm chart for Kubernetes digest: 99b1ac7e5ea94aabb555dbb76b9eb9da5ed1c76bfd51d83f66904ebd340cfa39 name: pipelinewatch-service @@ -6037,7 +6058,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.321637-05:00" + created: "2026-01-23T06:27:46.999999-05:00" description: A Helm chart for Kubernetes digest: 004e7fe0c7dbfb4a4fa176fc6dacb5d217a4057c291ffdc45704f560602ab1e8 name: pipelinewatch-service @@ -6047,7 +6068,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.321497-05:00" + created: "2026-01-23T06:27:46.999837-05:00" description: A Helm chart for Kubernetes digest: 5f2ec7b518ff097d35bb85c37fcfbda4e3b7af47977c3611931210ff226e4060 name: pipelinewatch-service @@ -6057,7 +6078,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "242" - created: "2026-01-20T15:24:03.321359-05:00" + created: "2026-01-23T06:27:46.999684-05:00" description: A Helm chart for Kubernetes digest: 44524d6c988167fb7e6e30ddcaf0fce6324f495b7599f56816efb37f1e686c5e name: pipelinewatch-service @@ -6068,7 +6089,7 @@ entries: portal: - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.323712-05:00" + created: "2026-01-23T06:27:47.002055-05:00" description: A Helm chart for Kubernetes digest: b2d7661a0fe47cb90fc4533c98bfbdca655e1cc37b4c8ae1517b0ba3bd5f7059 name: portal @@ -6078,7 +6099,7 @@ entries: version: 2.1.2 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.323491-05:00" + created: "2026-01-23T06:27:47.001835-05:00" description: A Helm chart for Kubernetes digest: da5ada53e7aa09e2e189b499ff26796ff1cb3f0bd46be16e4f3cc9c0c97088de name: portal @@ -6088,7 +6109,7 @@ entries: version: 2.1.1 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.323283-05:00" + created: "2026-01-23T06:27:47.001496-05:00" description: A Helm chart for Kubernetes digest: a9a92bf26b232abdaaae9d9debe99769056e88169655ea4b02295edc59ced7c8 name: portal @@ -6098,7 +6119,7 @@ entries: version: 2.1.0 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.323077-05:00" + created: "2026-01-23T06:27:47.001297-05:00" description: A Helm chart for Kubernetes digest: fb0887fb623858b80edd93b981c8af466f1b1621fd06168f5985eb0a999c3daf name: portal @@ -6108,7 +6129,7 @@ entries: version: 2.0.0 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.322688-05:00" + created: "2026-01-23T06:27:47.001086-05:00" description: A Helm chart for Kubernetes digest: ed795796b09a1433d36e08b02254e457490a4c1a37e4ad30a6213f96ce428aa2 name: portal @@ -6118,7 +6139,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.32244-05:00" + created: "2026-01-23T06:27:47.000923-05:00" description: A Helm chart for Kubernetes digest: c662b9e88a19f69e0c018ac441396ff990e6b04e9413fe82e4212b750bd26f20 name: portal @@ -6128,7 +6149,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.322301-05:00" + created: "2026-01-23T06:27:47.000759-05:00" description: A Helm chart for Kubernetes digest: 43aa83c9bd351808a06cca40bd2d8d5604c240d467c03fadd28d3c46d5464d48 name: portal @@ -6138,7 +6159,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1465" - created: "2026-01-20T15:24:03.322164-05:00" + created: "2026-01-23T06:27:47.000595-05:00" description: A Helm chart for Kubernetes digest: 65414f048688e3f21630a2164176e004943474a51cec332c4f5d3e161dc02067 name: portal @@ -6159,7 +6180,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 16.3.0 - created: "2026-01-20T15:24:03.332853-05:00" + created: "2026-01-23T06:27:47.011696-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6200,7 +6221,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 15.4.0 - created: "2026-01-20T15:24:03.328933-05:00" + created: "2026-01-23T06:27:47.007808-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6234,7 +6255,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 15.2.0 - created: "2026-01-20T15:24:03.33049-05:00" + created: "2026-01-23T06:27:47.009637-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -6269,7 +6290,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 15.2.0 - created: "2026-01-20T15:24:03.32716-05:00" + created: "2026-01-23T06:27:47.005721-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -6303,7 +6324,7 @@ entries: category: Database apiVersion: v2 appVersion: 14.3.0 - created: "2026-01-20T15:24:03.32523-05:00" + created: "2026-01-23T06:27:47.004026-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -6348,7 +6369,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 15.4.0 - created: "2026-01-20T15:24:03.337391-05:00" + created: "2026-01-23T06:27:47.016783-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6385,7 +6406,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 15.2.0 - created: "2026-01-20T15:24:03.334742-05:00" + created: "2026-01-23T06:27:47.013896-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6421,7 +6442,7 @@ entries: postgresql-operator: - apiVersion: v2 appVersion: 0.1.0-3603fa9 - created: "2026-01-20T15:24:03.337886-05:00" + created: "2026-01-23T06:27:47.017482-05:00" description: A Helm chart for Kubernetes digest: 26ef3af5c184c66000b69da3dbfa1729a876bfe0fb8994684a71b0ebd3d5c797 name: postgresql-operator @@ -6431,7 +6452,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.0-3603fa9 - created: "2026-01-20T15:24:03.337734-05:00" + created: "2026-01-23T06:27:47.017291-05:00" description: A Helm chart for Kubernetes digest: 10332d3da5054ba6f56cc18ae5709e08d36baa52cf80153868455d43090588f5 name: postgresql-operator @@ -6441,7 +6462,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 0.1.0-3603fa9 - created: "2026-01-20T15:24:03.337573-05:00" + created: "2026-01-23T06:27:47.0171-05:00" description: A Helm chart for Kubernetes digest: 81120f257cf739f8271d7daa9ba1838cbcd6d116b0d5b7e112de7c000c465de3 name: postgresql-operator @@ -6452,7 +6473,7 @@ entries: project-service: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.340612-05:00" + created: "2026-01-23T06:27:47.020577-05:00" description: A Helm chart for Kubernetes digest: c651e587c1a587dd5b1e40c7fcbe69a1fd281c41bce4fc5ebf69f2fe44153d3d name: project-service @@ -6462,7 +6483,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.340396-05:00" + created: "2026-01-23T06:27:47.020346-05:00" description: A Helm chart for Kubernetes digest: 62771d674122c27fa3ec3dd1927279fab656c535ee4d42a5a085d32da40445cd name: project-service @@ -6472,7 +6493,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.340177-05:00" + created: "2026-01-23T06:27:47.020114-05:00" description: A Helm chart for Kubernetes digest: 7103878cb2fed49558308170626aaadba0df72efdcf193258de6bc52237f42b0 name: project-service @@ -6482,7 +6503,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.339953-05:00" + created: "2026-01-23T06:27:47.019869-05:00" description: A Helm chart for Kubernetes digest: 367908ca0e4b8fc06d6a237bc5f5c545005e2b321b8b36b30006655dbcaf5ce5 name: project-service @@ -6492,7 +6513,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.339626-05:00" + created: "2026-01-23T06:27:47.019608-05:00" description: A Helm chart for Kubernetes digest: 2f7b30138bf32d87b83af69cc5c39cd2afa5c2b36ecb4afd03cc1d9fa9982c13 name: project-service @@ -6502,7 +6523,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.339106-05:00" + created: "2026-01-23T06:27:47.019324-05:00" description: A Helm chart for Kubernetes digest: ec01c714139823b8dd16d42ce85e59a65f5cf7f4871b7946008c5d2f7eb4b73c name: project-service @@ -6512,7 +6533,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338889-05:00" + created: "2026-01-23T06:27:47.01907-05:00" description: A Helm chart for Kubernetes digest: f6e2a8f079e7ae9c59b5e8bd7381c806768310452c3865f653eb530152efbe57 name: project-service @@ -6522,7 +6543,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338711-05:00" + created: "2026-01-23T06:27:47.018835-05:00" description: A Helm chart for Kubernetes digest: a2551692318e36fba141bcc2d490ff8a26132e74290c6b012a087f8174e3d405 name: project-service @@ -6532,7 +6553,7 @@ entries: version: 0.3.2 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338576-05:00" + created: "2026-01-23T06:27:47.018664-05:00" description: A Helm chart for Kubernetes digest: 655ad7b20353a63e58c7e30cc37364da54a412ac317fdeedb4ed0776572da971 name: project-service @@ -6542,7 +6563,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338442-05:00" + created: "2026-01-23T06:27:47.018493-05:00" description: A Helm chart for Kubernetes digest: 5d68206d2f35c59f55838076c76b40d5d034dc5b0970ea0fe02917fa737650ba name: project-service @@ -6552,7 +6573,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338297-05:00" + created: "2026-01-23T06:27:47.018317-05:00" description: A Helm chart for Kubernetes digest: 974c75ae8cc886119d7ee3144361a894bc73460687aec2abade9ac22a78217a4 name: project-service @@ -6562,7 +6583,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338164-05:00" + created: "2026-01-23T06:27:47.018132-05:00" description: A Helm chart for Kubernetes digest: 108728a2a51952abcf21fb796dcae581edc591318b3b2747df81f6e2d01031e2 name: project-service @@ -6572,7 +6593,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.338029-05:00" + created: "2026-01-23T06:27:47.017879-05:00" description: A Helm chart for Kubernetes digest: 6690358e6a38f6e8616b213d0b873abb94bdaa3e8c1d6f875a8282491ebf4fb9 name: project-service @@ -6583,7 +6604,7 @@ entries: prometheus-blackbox-exporter: - apiVersion: v2 appVersion: v0.25.0 - created: "2026-01-20T15:24:03.341128-05:00" + created: "2026-01-23T06:27:47.021444-05:00" description: Prometheus Blackbox Exporter digest: 248e6be1893b9cc4c407d09b1cc18cdc26837028b634c80c6d58aee7696dd11c home: https://github.com/prometheus/blackbox_exporter @@ -6617,7 +6638,7 @@ entries: url: https://github.com/prometheus-community/helm-charts apiVersion: v2 appVersion: v1.9.0 - created: "2026-01-20T15:24:03.34149-05:00" + created: "2026-01-23T06:27:47.022104-05:00" description: A Helm chart for prometheus pushgateway digest: e8483abe5a5548041140899b8f443f6f348cfcce84fee15ea3453d37e9b2b2d3 home: https://github.com/prometheus/pushgateway @@ -6641,7 +6662,7 @@ entries: provenance-service: - apiVersion: v2 appVersion: "64" - created: "2026-01-20T15:24:03.341914-05:00" + created: "2026-01-23T06:27:47.02259-05:00" description: A Helm chart for Kubernetes digest: f88e552d4277adfa23d0bb7fcc8df55046534d1940385c2fbc364cadb4f5dbee name: provenance-service @@ -6651,7 +6672,7 @@ entries: version: 0.2.1 - apiVersion: v1 appVersion: "64" - created: "2026-01-20T15:24:03.341777-05:00" + created: "2026-01-23T06:27:47.02244-05:00" description: A Helm chart for Kubernetes digest: 1ee30d913fb464d2b0befe7565eb7c4c67a9748cbdce51af76d5e70222a59c2e name: provenance-service @@ -6661,7 +6682,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "64" - created: "2026-01-20T15:24:03.341636-05:00" + created: "2026-01-23T06:27:47.022292-05:00" description: A Helm chart for Kubernetes digest: fb622970d6fec12f906f2063f7f70d1f68975c46d52fd99ae5b4d5da86e4a691 name: provenance-service @@ -6672,7 +6693,7 @@ entries: queue-consumer-service: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.343866-05:00" + created: "2026-01-23T06:27:47.024851-05:00" description: A Helm chart for Kubernetes digest: e1e03a0ab33ea95a041af236e3238a4231025b32cfc64bcd3c65d0941fb113a5 name: queue-consumer-service @@ -6682,7 +6703,7 @@ entries: version: 1.0.9 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.343704-05:00" + created: "2026-01-23T06:27:47.024577-05:00" description: A Helm chart for Kubernetes digest: b142a07924658cde2a8457bdd7b533328f951e4ffe05e6ee4f78efe9047fa8f9 name: queue-consumer-service @@ -6692,7 +6713,7 @@ entries: version: 1.0.8 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.343531-05:00" + created: "2026-01-23T06:27:47.024413-05:00" description: A Helm chart for Kubernetes digest: 5e5fc91c29797a0ab3b20592f8c91e84f57d6b8db20868d9dcb4f1eba8ffed20 name: queue-consumer-service @@ -6702,7 +6723,7 @@ entries: version: 1.0.7 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.343133-05:00" + created: "2026-01-23T06:27:47.024147-05:00" description: A Helm chart for Kubernetes digest: 4e18ec4970b37b24a5dd30426495c19c9d980a0d6ce15c8164cf63603b0de3ad name: queue-consumer-service @@ -6712,7 +6733,7 @@ entries: version: 1.0.6 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.342848-05:00" + created: "2026-01-23T06:27:47.023964-05:00" description: A Helm chart for Kubernetes digest: 5c28ae427bd69487b455700cb5f4efe00a75e9270e6f4f4da0679b146880bb82 name: queue-consumer-service @@ -6722,7 +6743,7 @@ entries: version: 1.0.5 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.342702-05:00" + created: "2026-01-23T06:27:47.023789-05:00" description: A Helm chart for Kubernetes digest: 67c25e1425bcea935a3b6622a885436e18373b61accb1e8785d3614c4245b7af name: queue-consumer-service @@ -6732,7 +6753,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.34255-05:00" + created: "2026-01-23T06:27:47.023627-05:00" description: A Helm chart for Kubernetes digest: 51fbbda72a2d331b3bc80827178a4a1431fff80d071bec0fa17fa28ffc4638a6 name: queue-consumer-service @@ -6742,7 +6763,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.342391-05:00" + created: "2026-01-23T06:27:47.023448-05:00" description: A Helm chart for Kubernetes digest: 65029d03eb723f835f0107e4851aa13c166f2977c84ab2bcd07dd60f996ba41c name: queue-consumer-service @@ -6752,7 +6773,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.342226-05:00" + created: "2026-01-23T06:27:47.023258-05:00" description: A Helm chart for Kubernetes digest: 1db233fdb50ec83fde394914d26b68796db2c130ac605ad8cc1262e2c7aaa47b name: queue-consumer-service @@ -6762,7 +6783,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.342074-05:00" + created: "2026-01-23T06:27:47.022873-05:00" description: A Helm chart for Kubernetes digest: ae652cedcc058671400ed37d68e6ba6a5b39de194b7a590b0a7221d4aad6feae name: queue-consumer-service @@ -6773,7 +6794,7 @@ entries: queue-service: - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344877-05:00" + created: "2026-01-23T06:27:47.026405-05:00" description: A Helm chart for Kubernetes digest: a015a1d13c915ede3d8f4e42bd1d114b8ddd2b66e6f6d603ca47251c7a2122ef name: queue-service @@ -6783,7 +6804,7 @@ entries: version: 0.5.1 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344758-05:00" + created: "2026-01-23T06:27:47.026231-05:00" description: A Helm chart for Kubernetes digest: d6f070d04d99c0beffe36bef02cbfcc13ad0f927687481fa5eb0ca31f708d916 name: queue-service @@ -6793,7 +6814,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.34464-05:00" + created: "2026-01-23T06:27:47.026045-05:00" description: A Helm chart for Kubernetes digest: 0e545a908f1c9036ac66762a7867f946553fabf95aca8756081d0c415edb599c name: queue-service @@ -6803,7 +6824,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344518-05:00" + created: "2026-01-23T06:27:47.025737-05:00" description: A Helm chart for Kubernetes digest: 3bb9f720248a41c72a3a68fc9c90ad3788761a054db011c7b97579a081cbf748 name: queue-service @@ -6813,7 +6834,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344396-05:00" + created: "2026-01-23T06:27:47.025488-05:00" description: A Helm chart for Kubernetes digest: f06353e63bbc0f055dfcec97278bfa7e9a5c5c4e5dc68bc6cb4ec70eb061ca81 name: queue-service @@ -6823,7 +6844,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344269-05:00" + created: "2026-01-23T06:27:47.025341-05:00" description: A Helm chart for Kubernetes digest: feb578b9ec4cccb871dcab87c8a7c55d822686309d3347ddbdadd25340c26f31 name: queue-service @@ -6833,7 +6854,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344138-05:00" + created: "2026-01-23T06:27:47.025179-05:00" description: A Helm chart for Kubernetes digest: 3a6054a1eda3e8bd5a544739b5062f468d359965fe05d3311437858e6e5188e9 name: queue-service @@ -6843,7 +6864,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "97" - created: "2026-01-20T15:24:03.344003-05:00" + created: "2026-01-23T06:27:47.025016-05:00" description: A Helm chart for Kubernetes digest: 3264ada17bfabac0cc876b952b89c63574bb49ce44575fee8fec35ed477b171a name: queue-service @@ -6862,7 +6883,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 3.12.12 - created: "2026-01-20T15:24:03.348144-05:00" + created: "2026-01-23T06:27:47.030358-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6892,7 +6913,7 @@ entries: category: Infrastructure apiVersion: v2 appVersion: 3.10.5 - created: "2026-01-20T15:24:03.346213-05:00" + created: "2026-01-23T06:27:47.028176-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -6936,7 +6957,7 @@ entries: licenses: Apache-2.0 apiVersion: v2 appVersion: 7.2.5 - created: "2026-01-20T15:24:03.352789-05:00" + created: "2026-01-23T06:27:47.035573-05:00" dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts @@ -6966,7 +6987,7 @@ entries: category: Database apiVersion: v2 appVersion: 6.2.7 - created: "2026-01-20T15:24:03.350051-05:00" + created: "2026-01-23T06:27:47.032712-05:00" dependencies: - name: common repository: https://charts.bitnami.com/bitnami @@ -6997,7 +7018,7 @@ entries: robusta: - apiVersion: v2 appVersion: 0.10.25 - created: "2026-01-20T15:24:03.363768-05:00" + created: "2026-01-23T06:27:47.04686-05:00" dependencies: - condition: enablePrometheusStack name: kube-prometheus-stack @@ -7013,7 +7034,7 @@ entries: search-service: - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.367076-05:00" + created: "2026-01-23T06:27:47.051283-05:00" description: A Helm chart for Kubernetes digest: 213c0021c315914fa30418d4e73cd3d4ab077ec5867066fc52cccac4a98dc2c6 name: search-service @@ -7023,7 +7044,7 @@ entries: version: 1.1.6 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.36694-05:00" + created: "2026-01-23T06:27:47.051106-05:00" description: A Helm chart for Kubernetes digest: eeb8456ab9d8b6a3d9630ed436dff8ba6031405c060871610ef4d61b72f731fb name: search-service @@ -7033,7 +7054,7 @@ entries: version: 1.1.5 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.366794-05:00" + created: "2026-01-23T06:27:47.050922-05:00" description: A Helm chart for Kubernetes digest: 88e16dba36c2187e1cb060f5f730895414b358cccdbd5af4be314ac00a7f7a48 name: search-service @@ -7043,7 +7064,7 @@ entries: version: 1.1.4 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.366659-05:00" + created: "2026-01-23T06:27:47.050706-05:00" description: A Helm chart for Kubernetes digest: c7925fba2db727ec5ca68e2a635da455c6ed4a5cd881d12cb7e5e3354a8d9eb7 name: search-service @@ -7053,7 +7074,7 @@ entries: version: 1.1.3 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.36651-05:00" + created: "2026-01-23T06:27:47.050514-05:00" description: A Helm chart for Kubernetes digest: f6d4425c576b272083b98b2eb15972abc541e10e0e20c563233ca4faa0c8bf7c name: search-service @@ -7063,7 +7084,7 @@ entries: version: 1.1.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.366361-05:00" + created: "2026-01-23T06:27:47.050331-05:00" description: A Helm chart for Kubernetes digest: 0aa2f639de742c020b8cc55993d0fbc797a677d891cb445a021fe88b1345a0da name: search-service @@ -7073,7 +7094,7 @@ entries: version: 1.1.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.36622-05:00" + created: "2026-01-23T06:27:47.050149-05:00" description: A Helm chart for Kubernetes digest: a79f1c55a9cac2554eb1219c1ec15887ba2c2fb596e8f8e9d2b268a0d2d3dc6c name: search-service @@ -7083,7 +7104,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.36608-05:00" + created: "2026-01-23T06:27:47.049949-05:00" description: A Helm chart for Kubernetes digest: f87e6392491bc6139b3782fa37c548698ad7553cb91374f3f3e296d279c8273c name: search-service @@ -7093,7 +7114,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365936-05:00" + created: "2026-01-23T06:27:47.049754-05:00" description: A Helm chart for Kubernetes digest: 99f6eb060637e683bf8bc3b6fcc46e0665c74eadfbdf86ea901fc5757523ef18 name: search-service @@ -7103,7 +7124,7 @@ entries: version: 0.4.5 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365785-05:00" + created: "2026-01-23T06:27:47.049554-05:00" description: A Helm chart for Kubernetes digest: ec6df2b752b4aa3799b0a502fa46b609ea260732699294b010dd7313507aca3a name: search-service @@ -7113,7 +7134,7 @@ entries: version: 0.4.4 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.36564-05:00" + created: "2026-01-23T06:27:47.049354-05:00" description: A Helm chart for Kubernetes digest: dc23dc5e759a2550a369e2f598873a5453c52255a0eaaa9c371732ac7111f612 name: search-service @@ -7123,7 +7144,7 @@ entries: version: 0.4.3 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365489-05:00" + created: "2026-01-23T06:27:47.048679-05:00" description: A Helm chart for Kubernetes digest: 99d70228b22e6878aae7ea488b3db6b2b29b4261c2632c346aa871f8970b7baa name: search-service @@ -7133,7 +7154,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365339-05:00" + created: "2026-01-23T06:27:47.048501-05:00" description: A Helm chart for Kubernetes digest: 379d8f13612899eb32fc185301483a13f75dc423ac4a872ee385846900a6c06e name: search-service @@ -7143,7 +7164,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365188-05:00" + created: "2026-01-23T06:27:47.048311-05:00" description: A Helm chart for Kubernetes digest: 7ceac50bb4abd58e2cc2fca6349a54da1ae5edfa9d76022a5bed2f9df6102d3c name: search-service @@ -7153,7 +7174,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.365031-05:00" + created: "2026-01-23T06:27:47.048119-05:00" description: A Helm chart for Kubernetes digest: a9cd38b56a9d1cbf056bdea5708ca86e6fb596aee2452367ac88c2d03ff4f624 name: search-service @@ -7163,7 +7184,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.364882-05:00" + created: "2026-01-23T06:27:47.047947-05:00" description: A Helm chart for Kubernetes digest: 22606c2d028cc3199b0793c64a78700cd7d6ba1fb48bc85fbbc8f6c950113009 name: search-service @@ -7173,7 +7194,7 @@ entries: version: 0.2.2 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.364722-05:00" + created: "2026-01-23T06:27:47.047789-05:00" description: A Helm chart for Kubernetes digest: bae6f2dca4b4874896e950668aca3844277651f6abff0bde5de2e898d09a3848 name: search-service @@ -7183,7 +7204,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.3642-05:00" + created: "2026-01-23T06:27:47.047625-05:00" description: A Helm chart for Kubernetes digest: 07a04c706f79611ac92a2a50b4806c75b56915a123da103b40b278b4a279185c name: search-service @@ -7193,7 +7214,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.364064-05:00" + created: "2026-01-23T06:27:47.047449-05:00" description: A Helm chart for Kubernetes digest: eb491c16cab3764c814fb57afa6a0710bc6b2643cb2b92d1b438ad5544013eb5 name: search-service @@ -7203,7 +7224,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: "131" - created: "2026-01-20T15:24:03.363918-05:00" + created: "2026-01-23T06:27:47.047169-05:00" description: A Helm chart for Kubernetes digest: 05f00a10ed4b50d4bc98b955d225e250d7c1e1fb02137d21478b89691d4301a8 name: search-service @@ -7214,7 +7235,7 @@ entries: secret: - apiVersion: v2 appVersion: v1.0.0 - created: "2026-01-20T15:24:03.367152-05:00" + created: "2026-01-23T06:27:47.051386-05:00" description: Helm Chart representing a single Secret Kubernetes API object digest: 69a6e44e59ccfafdbb31d24f1ecfa207ee8f59d3964693c92f91b7801561a583 home: https://github.com/ameijer/k8s-as-helm @@ -7232,7 +7253,7 @@ entries: skiff-service: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.36862-05:00" + created: "2026-01-23T06:27:47.053498-05:00" description: A Helm chart for Kubernetes digest: 82cd41e048c37211f249ec83662af38ead710c5124ce8be6fe6d382453cfe572 name: skiff-service @@ -7242,7 +7263,7 @@ entries: version: 0.7.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.368475-05:00" + created: "2026-01-23T06:27:47.053325-05:00" description: A Helm chart for Kubernetes digest: 525113a137a448a2b5b275b5835abc10f9203f0243a935fcc0275d8bfce26476 name: skiff-service @@ -7252,7 +7273,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.368334-05:00" + created: "2026-01-23T06:27:47.053149-05:00" description: A Helm chart for Kubernetes digest: df3e5c6a83945b90edd6d7371febc57541437d291b832a672a18b807ef664899 name: skiff-service @@ -7262,7 +7283,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.368188-05:00" + created: "2026-01-23T06:27:47.052895-05:00" description: A Helm chart for Kubernetes digest: d1bb20f64d6a2ec8d544f91f2d283a016d702dca9b4a16450e2049cddb5e412d name: skiff-service @@ -7272,7 +7293,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.368033-05:00" + created: "2026-01-23T06:27:47.052614-05:00" description: A Helm chart for Kubernetes digest: a06038547eb549b6a968a4fce8c0742571b7dd3decb477d3f1151fbe9c2e9d75 name: skiff-service @@ -7282,7 +7303,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.367889-05:00" + created: "2026-01-23T06:27:47.052285-05:00" description: A Helm chart for Kubernetes digest: bee743fe4714cc47c044f25fa63dff17354cf27bcdb4b985e572ccca39ad5581 name: skiff-service @@ -7292,7 +7313,7 @@ entries: version: 0.2.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.367548-05:00" + created: "2026-01-23T06:27:47.051824-05:00" description: A Helm chart for Kubernetes digest: 4b82b5f77cbfefe46ed27d98c8a8f423bc3dab4cddb32654ad1126285fd3305b name: skiff-service @@ -7302,7 +7323,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.367275-05:00" + created: "2026-01-23T06:27:47.051658-05:00" description: A Helm chart for Kubernetes digest: 6e64584e72ba62f323b48fde1ddcaace3c1d52ebca15f04b242460de8e240d69 name: skiff-service @@ -7313,7 +7334,7 @@ entries: storage-alert: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.368725-05:00" + created: "2026-01-23T06:27:47.053618-05:00" description: A Helm chart for Kubernetes digest: ce1c178fe9972ba240e7839f9e03e7473c2c7b343d07a68baaa1fe08e473d7ef name: storage-alert @@ -7324,7 +7345,7 @@ entries: superset: - apiVersion: v2 appVersion: 4.1.2 - created: "2026-01-20T15:24:03.378662-05:00" + created: "2026-01-23T06:27:47.063961-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7354,7 +7375,7 @@ entries: version: 0.14.2 - apiVersion: v2 appVersion: 4.1.1 - created: "2026-01-20T15:24:03.373879-05:00" + created: "2026-01-23T06:27:47.0588-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7384,7 +7405,7 @@ entries: version: 0.14.1 - apiVersion: v2 appVersion: 2.0.1 - created: "2026-01-20T15:24:03.397027-05:00" + created: "2026-01-23T06:27:47.083408-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7414,7 +7435,7 @@ entries: version: 0.8.8 - apiVersion: v2 appVersion: 2.0.1 - created: "2026-01-20T15:24:03.38784-05:00" + created: "2026-01-23T06:27:47.07386-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7444,7 +7465,7 @@ entries: version: 0.8.7+1 - apiVersion: v2 appVersion: 2.0.1 - created: "2026-01-20T15:24:03.392364-05:00" + created: "2026-01-23T06:27:47.07888-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7474,7 +7495,7 @@ entries: version: 0.8.7 - apiVersion: v2 appVersion: 2.0.1 - created: "2026-01-20T15:24:03.383214-05:00" + created: "2026-01-23T06:27:47.068885-05:00" dependencies: - condition: postgresql.enabled name: postgresql @@ -7505,7 +7526,7 @@ entries: tempo-distributed: - apiVersion: v2 appVersion: 2.6.0 - created: "2026-01-20T15:24:03.400747-05:00" + created: "2026-01-23T06:27:47.087684-05:00" dependencies: - alias: minio condition: minio.enabled @@ -7558,7 +7579,7 @@ entries: tanzuCategory: application apiVersion: v2 appVersion: 0.39.2 - created: "2026-01-20T15:24:03.407578-05:00" + created: "2026-01-23T06:27:47.094945-05:00" dependencies: - condition: minio.enabled name: minio @@ -7592,7 +7613,7 @@ entries: trivy-operator: - apiVersion: v2 appVersion: 0.27.1 - created: "2026-01-20T15:24:03.410344-05:00" + created: "2026-01-23T06:27:47.097905-05:00" description: Keeps security report resources updated digest: c9e98830b3e11a0950a54009a96207203cc1e0d8c328ff53f583f8e9fb01bf0f keywords: @@ -7608,7 +7629,7 @@ entries: version: 0.29.1 - apiVersion: v2 appVersion: 0.22.0 - created: "2026-01-20T15:24:03.408751-05:00" + created: "2026-01-23T06:27:47.096289-05:00" description: Keeps security report resources updated digest: 6d83258cccf09aea2d1a74a02268847a720831dfd4fbaab2a16370c90709fcbd keywords: @@ -7625,7 +7646,7 @@ entries: upload-service: - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411773-05:00" + created: "2026-01-23T06:27:47.100387-05:00" description: A Helm chart for Kubernetes digest: 8659abc83d6c06c4cd2968bbd09d43758521de5fa5eea385f107b0c9de2310fa name: upload-service @@ -7635,7 +7656,7 @@ entries: version: 1.0.4 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411634-05:00" + created: "2026-01-23T06:27:47.1002-05:00" description: A Helm chart for Kubernetes digest: b865f6fc0c7c124b83acf48a98aeb644ac993a6755c888fcf2f5ac8f0be8cb58 name: upload-service @@ -7645,7 +7666,7 @@ entries: version: 1.0.3 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411492-05:00" + created: "2026-01-23T06:27:47.099998-05:00" description: A Helm chart for Kubernetes digest: 0c0b131c60805f94de22e427374f32f810778b031228824ac267852518982c62 name: upload-service @@ -7655,7 +7676,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411347-05:00" + created: "2026-01-23T06:27:47.099664-05:00" description: A Helm chart for Kubernetes digest: 07d0f639dde553f519515aa6e2314ddec54feb4c1c6e8cfcdd43920e77088ae0 name: upload-service @@ -7665,7 +7686,7 @@ entries: version: 1.0.1 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411197-05:00" + created: "2026-01-23T06:27:47.099281-05:00" description: A Helm chart for Kubernetes digest: 49f1ab2f6d224f248954a717a3e95c6918ebf79de803b7e151c249c445ad3f57 name: upload-service @@ -7675,7 +7696,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.411039-05:00" + created: "2026-01-23T06:27:47.098997-05:00" description: A Helm chart for Kubernetes digest: db5a57e4861ec93d3a34434b0b85bd531948f946a12d60555eed9445b65bfd8d name: upload-service @@ -7685,7 +7706,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.410904-05:00" + created: "2026-01-23T06:27:47.098817-05:00" description: A Helm chart for Kubernetes digest: 2e73aa87665549e452941aef0e18fdfa61b05ac735d035a6d7ab94bf8252458f name: upload-service @@ -7695,7 +7716,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.410771-05:00" + created: "2026-01-23T06:27:47.098637-05:00" description: A Helm chart for Kubernetes digest: ba48d40052bf0495ead400a6b96003c60de7dcab4dec191d9232116f797e1b55 name: upload-service @@ -7705,7 +7726,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.410633-05:00" + created: "2026-01-23T06:27:47.098449-05:00" description: A Helm chart for Kubernetes digest: cad57cd14841619ceef27b0221a02fc2125d0719603dbee95ec253910fb903d9 name: upload-service @@ -7715,7 +7736,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "251" - created: "2026-01-20T15:24:03.4105-05:00" + created: "2026-01-23T06:27:47.098186-05:00" description: A Helm chart for Kubernetes digest: 21eda6907aed2f0cc60fb4727faa190b542ac17e602a6d0e15404901d59ea7b4 name: upload-service @@ -7728,7 +7749,7 @@ entries: charts.openshift.io/name: HashiCorp Vault apiVersion: v2 appVersion: 1.20.4 - created: "2026-01-20T15:24:03.415278-05:00" + created: "2026-01-23T06:27:47.104763-05:00" description: Official HashiCorp Vault Chart digest: fe80fae6a8838c75da9fbde1398f2c10bb4b5c31c425e559507ba99373297de2 home: https://www.vaultproject.io @@ -7753,7 +7774,7 @@ entries: version: 0.31.0 - apiVersion: v2 appVersion: 1.9.2 - created: "2026-01-20T15:24:03.412747-05:00" + created: "2026-01-23T06:27:47.101548-05:00" description: Official HashiCorp Vault Chart digest: 01d2da896146578ec9ade858083167da4084cc99c96a94a0745ec4fd38fe1a69 home: https://www.vaultproject.io @@ -7778,7 +7799,7 @@ entries: version: 0.19.0+pdp - apiVersion: v2 appVersion: 1.9.2 - created: "2026-01-20T15:24:03.413711-05:00" + created: "2026-01-23T06:27:47.102941-05:00" description: Official HashiCorp Vault Chart digest: fb7a99fc3d29ccb387fcf741a304124ae0c665a1d3a238024b4a54593f1fa464 home: https://www.vaultproject.io @@ -7804,7 +7825,7 @@ entries: vault-backup: - apiVersion: v2 appVersion: v0.1 - created: "2026-01-20T15:24:03.415348-05:00" + created: "2026-01-23T06:27:47.104908-05:00" description: A Helm chart for Kubernetes digest: a0ede706e52723b0acb7a580dd75e65dd6d3de103d9e14abee4357960ed0e768 name: vault-backup @@ -7815,7 +7836,7 @@ entries: vault-backup-openstack: - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.415486-05:00" + created: "2026-01-23T06:27:47.105253-05:00" description: A Helm chart for Kubernetes digest: e27784a3725cc9a12a84c72d2667483c5ead065af47241db57ca61059f0d109b name: vault-backup-openstack @@ -7826,7 +7847,7 @@ entries: velero: - apiVersion: v2 appVersion: 1.10.0 - created: "2026-01-20T15:24:03.416187-05:00" + created: "2026-01-23T06:27:47.106446-05:00" description: A Helm chart for velero digest: 9ed11c9c7ed16f96c0bf72cb53f41855415da11634b6b9c2fe4a9f89792e32dc home: https://github.com/vmware-tanzu/velero @@ -7850,7 +7871,7 @@ entries: version-checker: - apiVersion: v2 appVersion: v0.8.3 - created: "2026-01-20T15:24:03.416732-05:00" + created: "2026-01-23T06:27:47.107147-05:00" description: A Helm chart for version-checker digest: 426237e44362bfb9ebfb95b24a5f5408d4764fea3f9155f972806521202da448 home: https://github.com/jetstack/version-checker @@ -7862,7 +7883,7 @@ entries: version: v0.8.3 - apiVersion: v1 appVersion: v0.5.5 - created: "2026-01-20T15:24:03.416442-05:00" + created: "2026-01-23T06:27:47.106745-05:00" description: A Helm chart for version-checker digest: 1e1760d5aa99b43252cc0861d4a8ebc3f73f7f526fd7a875e4132198b425715a home: https://github.com/jetstack/version-checker @@ -7875,7 +7896,7 @@ entries: workflow-manager: - apiVersion: v2 appVersion: 2.2.1 - created: "2026-01-20T15:24:03.418147-05:00" + created: "2026-01-23T06:27:47.108901-05:00" description: A Helm chart for Kubernetes digest: c5a6ff471552be19edc5cfa91ba4f4483d6b9349bd6b92f944fa80004f410802 name: workflow-manager @@ -7885,7 +7906,7 @@ entries: version: 0.1.7 - apiVersion: v2 appVersion: 2.2.1 - created: "2026-01-20T15:24:03.417572-05:00" + created: "2026-01-23T06:27:47.108664-05:00" description: A Helm chart for Kubernetes digest: 057914db2674a56fae818f80b6241a396d52b3b4c040991b5d5c8d8026688d18 name: workflow-manager @@ -7895,7 +7916,7 @@ entries: version: 0.1.6 - apiVersion: v2 appVersion: 2.2.1 - created: "2026-01-20T15:24:03.417403-05:00" + created: "2026-01-23T06:27:47.108395-05:00" description: A Helm chart for Kubernetes digest: b76460f9b46655ba3493f7be08272dcc9732ba5985fb0a1507761a2f35bd186c name: workflow-manager @@ -7905,7 +7926,7 @@ entries: version: 0.1.5 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.417228-05:00" + created: "2026-01-23T06:27:47.108074-05:00" description: A Helm chart for Kubernetes digest: ade5a0ca9d62a88b769ed029cd7f4583733e7b73d392e31c591ad599a82c3aff name: workflow-manager @@ -7915,7 +7936,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.417065-05:00" + created: "2026-01-23T06:27:47.107743-05:00" description: A Helm chart for Kubernetes digest: 218ad1ce129cf83663863febd11a7b9505884c84c9425d7dfe06560d703e0eb2 name: workflow-manager @@ -7925,7 +7946,7 @@ entries: version: 0.1.1 - apiVersion: v2 appVersion: 1.16.0 - created: "2026-01-20T15:24:03.416891-05:00" + created: "2026-01-23T06:27:47.107445-05:00" description: A Helm chart for Kubernetes digest: 6f77488c574f6e76fba84f524361009e9c50258213b60e9647b6fb0fb1a7ce1d name: workflow-manager @@ -7936,7 +7957,7 @@ entries: workspace-operator: - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.419024-05:00" + created: "2026-01-23T06:27:47.109894-05:00" description: A Helm chart for Kubernetes digest: 4aabbcc79b5435dbb83680d6e0668fa468433f82fe6a9919c9e9a8ec9c9def28 name: workspace-operator @@ -7946,7 +7967,7 @@ entries: version: 0.11.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.418823-05:00" + created: "2026-01-23T06:27:47.109628-05:00" description: A Helm chart for Kubernetes digest: b45bb08ad22cd81e8e7fc391f8f826feec75c467c872fd80843ae694774b002f name: workspace-operator @@ -7956,7 +7977,7 @@ entries: version: 0.10.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.422885-05:00" + created: "2026-01-23T06:27:47.114392-05:00" description: A Helm chart for Kubernetes digest: 3a5efdafe234606c8c820ed44c689167b6b1c145bb3dc7b3a229a7dccb5c5903 name: workspace-operator @@ -7966,7 +7987,7 @@ entries: version: 0.9.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.422703-05:00" + created: "2026-01-23T06:27:47.114191-05:00" description: A Helm chart for Kubernetes digest: 9795ed61aa91092be0c5a56f280e827c127b224350eeb18a4dd2ac98a6b7167c name: workspace-operator @@ -7976,7 +7997,7 @@ entries: version: 0.8.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.422522-05:00" + created: "2026-01-23T06:27:47.113842-05:00" description: A Helm chart for Kubernetes digest: 5d5e2d4974bc31e4fba13bdbbfdb94a7eb33aca78a62f4d1080c8b1074fb69d4 name: workspace-operator @@ -7986,7 +8007,7 @@ entries: version: 0.7.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.42234-05:00" + created: "2026-01-23T06:27:47.113654-05:00" description: A Helm chart for Kubernetes digest: 51417e3741be819bc74765ed8c996ef51186b2ab9d1613bc3580b386b05488e7 name: workspace-operator @@ -7996,7 +8017,7 @@ entries: version: 0.6.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.422148-05:00" + created: "2026-01-23T06:27:47.113465-05:00" description: A Helm chart for Kubernetes digest: a88079d3bfcb9cefe15d91c8f80d41e46b99a2737e5ccefdd3fcf2e749dbbfd9 name: workspace-operator @@ -8006,7 +8027,7 @@ entries: version: 0.5.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.421954-05:00" + created: "2026-01-23T06:27:47.113257-05:00" description: A Helm chart for Kubernetes digest: 02b2ca28c37dc413f07ca0d6e2a8ef908740d1429b96315eee3b479d6794ef8a name: workspace-operator @@ -8016,7 +8037,7 @@ entries: version: 0.4.7 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.421754-05:00" + created: "2026-01-23T06:27:47.113043-05:00" description: A Helm chart for Kubernetes digest: 01cf8a413d89f3a9bd6023be44295b70e242f9d033210539a2d5041f3454bf2f name: workspace-operator @@ -8026,7 +8047,7 @@ entries: version: 0.4.6 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.421562-05:00" + created: "2026-01-23T06:27:47.112831-05:00" description: A Helm chart for Kubernetes digest: 56124f0ea62862eb2f3dd2264be1878e7db4808d7b370384e5091698e16a0afa name: workspace-operator @@ -8036,7 +8057,7 @@ entries: version: 0.4.5 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.421213-05:00" + created: "2026-01-23T06:27:47.112618-05:00" description: A Helm chart for Kubernetes digest: cd27dbbab4bef66cdcdc23036632420dac783f28b3ae89c8360f4c76b2c1a261 name: workspace-operator @@ -8046,7 +8067,7 @@ entries: version: 0.4.4 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.420773-05:00" + created: "2026-01-23T06:27:47.112411-05:00" description: A Helm chart for Kubernetes digest: d4f46b039d5ec0266cf1aaa2fe9ef867631d0abe6487d610fd230be9abbc7189 name: workspace-operator @@ -8056,7 +8077,7 @@ entries: version: 0.4.3 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.420594-05:00" + created: "2026-01-23T06:27:47.112203-05:00" description: A Helm chart for Kubernetes digest: fff61a1467b9be207c8466f1bd60e0283cd9cf0238c82b6e201d8fa9bcd066d1 name: workspace-operator @@ -8066,7 +8087,7 @@ entries: version: 0.4.2 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.420417-05:00" + created: "2026-01-23T06:27:47.111981-05:00" description: A Helm chart for Kubernetes digest: 1d2f1075f166baad8741501aa1da49f72683df9a95e38456cbe8654da31fdea3 name: workspace-operator @@ -8076,7 +8097,7 @@ entries: version: 0.4.1 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.420232-05:00" + created: "2026-01-23T06:27:47.111769-05:00" description: A Helm chart for Kubernetes digest: f283eb1627aa0cf09e419df7f948f17fce2148b2a233a867648385525625699c name: workspace-operator @@ -8086,7 +8107,7 @@ entries: version: 0.4.0 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.420053-05:00" + created: "2026-01-23T06:27:47.111564-05:00" description: A Helm chart for Kubernetes digest: 7dbc49763358717da24df3b18110a24488076172dd77619a143a443854cd6db6 name: workspace-operator @@ -8096,7 +8117,7 @@ entries: version: 0.3.4 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.419887-05:00" + created: "2026-01-23T06:27:47.11123-05:00" description: A Helm chart for Kubernetes digest: 77a01a808f9202fe5cb56d11d48f21b51f567deec44c8ab0e819212aa1cb5c4e name: workspace-operator @@ -8106,7 +8127,7 @@ entries: version: 0.3.3 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.41971-05:00" + created: "2026-01-23T06:27:47.111022-05:00" description: A Helm chart for Kubernetes digest: e7588cd38bb1458a2d11b30d9dd2071dc682abc86eb85bf22e78d6d77e2733c3 name: workspace-operator @@ -8116,7 +8137,7 @@ entries: version: 0.3.2 - apiVersion: v2 appVersion: 0.1.28-4e9505d - created: "2026-01-20T15:24:03.419533-05:00" + created: "2026-01-23T06:27:47.110794-05:00" description: A Helm chart for Kubernetes digest: d2e5804c8648cd2c0769b299041d9bfe8f1ec8df9728a4bf8d7c6ac86caede32 name: workspace-operator @@ -8126,7 +8147,7 @@ entries: version: 0.3.1 - apiVersion: v2 appVersion: 0.1.27-7c966b5 - created: "2026-01-20T15:24:03.419354-05:00" + created: "2026-01-23T06:27:47.110228-05:00" description: A Helm chart for Kubernetes digest: c75500bbd5b1adfac699fb08f635dae18d0308a5a88ef9248e2daa831518a209 name: workspace-operator @@ -8136,7 +8157,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: 0.1.27-7c966b5 - created: "2026-01-20T15:24:03.419174-05:00" + created: "2026-01-23T06:27:47.110048-05:00" description: A Helm chart for Kubernetes digest: 42c001371404804cc8014fd74a11ae9fa2e2f5c47c3945d8f0fc87474893fe42 name: workspace-operator @@ -8146,7 +8167,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: 0.1.27-7c966b5 - created: "2026-01-20T15:24:03.418625-05:00" + created: "2026-01-23T06:27:47.109406-05:00" description: A Helm chart for Kubernetes digest: 4c4211301cf8d63bcc695f8ad0a95676d480b0577efa1a82b9055ed55de5ee87 name: workspace-operator @@ -8156,7 +8177,7 @@ entries: version: 0.1.3 - apiVersion: v2 appVersion: 0.1.27-7c966b5 - created: "2026-01-20T15:24:03.418479-05:00" + created: "2026-01-23T06:27:47.109222-05:00" description: A Helm chart for Kubernetes digest: 6782e99ba5fead624708e99c19527a3a38c4169aed1b35a5cd0850a5d6bf83ca name: workspace-operator @@ -8166,7 +8187,7 @@ entries: version: 0.1.2 - apiVersion: v2 appVersion: 0.1.27-7c966b5 - created: "2026-01-20T15:24:03.418325-05:00" + created: "2026-01-23T06:27:47.109061-05:00" description: A Helm chart for Kubernetes digest: 64612716be395af216c00552580a3a5ae93a196e2ebb5b39eb95159ccde755d6 name: workspace-operator @@ -8177,7 +8198,7 @@ entries: workspace-service: - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425578-05:00" + created: "2026-01-23T06:27:47.117715-05:00" description: A Helm chart for Kubernetes digest: 9a2cb2bacabb44e795a758881bdecce1c8fd3a13d5827e1a7dde0bfe614da10a name: workspace-service @@ -8187,7 +8208,7 @@ entries: version: 1.2.15 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425386-05:00" + created: "2026-01-23T06:27:47.117501-05:00" description: A Helm chart for Kubernetes digest: c977bad575edc935c7da905b8f5b99c3607aadec7a400be610f503119ef81a4b name: workspace-service @@ -8197,7 +8218,7 @@ entries: version: 1.2.14 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425208-05:00" + created: "2026-01-23T06:27:47.117298-05:00" description: A Helm chart for Kubernetes digest: 2b6337041b62165d4e20c4c585df5042e184cd056474ad540bb6b54862029eb9 name: workspace-service @@ -8207,7 +8228,7 @@ entries: version: 1.2.13 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425027-05:00" + created: "2026-01-23T06:27:47.117007-05:00" description: A Helm chart for Kubernetes digest: d0770d664f15c2115e649c118bdd8294c9b38d82eb475addb44ffe92649351bd name: workspace-service @@ -8217,7 +8238,7 @@ entries: version: 1.2.12 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.424841-05:00" + created: "2026-01-23T06:27:47.116803-05:00" description: A Helm chart for Kubernetes digest: 3a9d8bc64b0ff4d62ef603734602c857d4768e14cf576df1bb165a1196591492 name: workspace-service @@ -8227,7 +8248,7 @@ entries: version: 1.2.11 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.42465-05:00" + created: "2026-01-23T06:27:47.116589-05:00" description: A Helm chart for Kubernetes digest: 399238264c9d11f0931f540cd6ad1baadc66cf892717d444d1d1e521b1c10f97 name: workspace-service @@ -8237,7 +8258,7 @@ entries: version: 1.2.10 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.426997-05:00" + created: "2026-01-23T06:27:47.119736-05:00" description: A Helm chart for Kubernetes digest: d8810416abd52d644a4deec3c242cee219216319dfb6c426e22013034b3d4046 name: workspace-service @@ -8247,7 +8268,7 @@ entries: version: 1.2.9 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.42682-05:00" + created: "2026-01-23T06:27:47.119502-05:00" description: A Helm chart for Kubernetes digest: 1eef33eb10fac4fb33b45bb997884434cda7d2186301886d3ff9c8188ca0d1e4 name: workspace-service @@ -8257,7 +8278,7 @@ entries: version: 1.2.8 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.426643-05:00" + created: "2026-01-23T06:27:47.119268-05:00" description: A Helm chart for Kubernetes digest: 64897cf85dd818ac049092e86ae58c11217ba1872b10bb71023000aa95f42c18 name: workspace-service @@ -8267,7 +8288,7 @@ entries: version: 1.2.7 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.426463-05:00" + created: "2026-01-23T06:27:47.118739-05:00" description: A Helm chart for Kubernetes digest: 3c13305f2c024a63d62e70dca30270428f710f194cc8b7940627e4405de198cb name: workspace-service @@ -8277,7 +8298,7 @@ entries: version: 1.2.6 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.426289-05:00" + created: "2026-01-23T06:27:47.118532-05:00" description: A Helm chart for Kubernetes digest: d3a1c55211a8f198801db0c847943ab0226907ea6b815f5be066ec6fccb867ed name: workspace-service @@ -8287,7 +8308,7 @@ entries: version: 1.2.5 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.426118-05:00" + created: "2026-01-23T06:27:47.118322-05:00" description: A Helm chart for Kubernetes digest: 5b9abbe243a0a540bcda2fa0368de236f57c1bf377edc4afb0826281b7ecc6d6 name: workspace-service @@ -8297,7 +8318,7 @@ entries: version: 1.2.4 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425943-05:00" + created: "2026-01-23T06:27:47.118124-05:00" description: A Helm chart for Kubernetes digest: 48613b5b2fd80e6a6da15ffec37b453b6ad3dc7fb347c58fe55d8ab0a226455e name: workspace-service @@ -8307,7 +8328,7 @@ entries: version: 1.2.3 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.425757-05:00" + created: "2026-01-23T06:27:47.117927-05:00" description: A Helm chart for Kubernetes digest: d6dab6542135a0c705e2ffa9b2b3bb4b7c777b16c083195ce2e8e53adc0a4e98 name: workspace-service @@ -8317,7 +8338,7 @@ entries: version: 1.2.2 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.424255-05:00" + created: "2026-01-23T06:27:47.116379-05:00" description: A Helm chart for Kubernetes digest: 8613bd87f4a1a36f817d516c7342ef34f0d482087d7e2a200a3da6e8b7957111 name: workspace-service @@ -8327,7 +8348,7 @@ entries: version: 1.2.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423981-05:00" + created: "2026-01-23T06:27:47.116173-05:00" description: A Helm chart for Kubernetes digest: c5b0d5ace60720075f6da0ec911fc343c3c3d67fb5c5692c86df8490d39a147e name: workspace-service @@ -8337,7 +8358,7 @@ entries: version: 1.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423808-05:00" + created: "2026-01-23T06:27:47.115966-05:00" description: A Helm chart for Kubernetes digest: ef45bd1dabe08a2cc08dc573477d832cbe581ca30851c8cd4356f0ee668ddc0a name: workspace-service @@ -8347,7 +8368,7 @@ entries: version: 1.1.1 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423636-05:00" + created: "2026-01-23T06:27:47.115768-05:00" description: A Helm chart for Kubernetes digest: 862a8e919d10d4ea1bf7246aa6f357c49582f55f13b341942e1d465c1686740d name: workspace-service @@ -8357,7 +8378,7 @@ entries: version: 1.1.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423467-05:00" + created: "2026-01-23T06:27:47.115533-05:00" description: A Helm chart for Kubernetes digest: d7500bf05f60e2923e6ac6800bfd703a1a4262c007c28e4c868688915365093c name: workspace-service @@ -8367,7 +8388,7 @@ entries: version: 1.0.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423301-05:00" + created: "2026-01-23T06:27:47.115315-05:00" description: A Helm chart for Kubernetes digest: d3bdcd5951efe84b4e7221d62199fcb93c83da3b070a7929c6a16e8d812a8b90 name: workspace-service @@ -8377,7 +8398,7 @@ entries: version: 0.3.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423167-05:00" + created: "2026-01-23T06:27:47.115122-05:00" description: A Helm chart for Kubernetes digest: 1cde473fbf4745c54425ffbaf40b52d79ca6c4bdce35ebe1acb57d5c5f7ff1dc name: workspace-service @@ -8387,7 +8408,7 @@ entries: version: 0.2.0 - apiVersion: v2 appVersion: "1" - created: "2026-01-20T15:24:03.423027-05:00" + created: "2026-01-23T06:27:47.114873-05:00" description: A Helm chart for Kubernetes digest: 70ed4cda0862c97b192f8575156ff355967ba6b17bc8eb15bbb111928fb97620 name: workspace-service @@ -8398,7 +8419,7 @@ entries: xwiki: - apiVersion: v1 appVersion: 11.10.4 - created: "2026-01-20T15:24:03.432056-05:00" + created: "2026-01-23T06:27:47.125663-05:00" dependencies: - condition: mysql.enabled name: mysql @@ -8433,7 +8454,7 @@ entries: version: 1.0-SNAPSHOT - apiVersion: v1 appVersion: 11.10.4 - created: "2026-01-20T15:24:03.430936-05:00" + created: "2026-01-23T06:27:47.124197-05:00" dependencies: - condition: mysql.enabled name: mysql @@ -8468,7 +8489,7 @@ entries: version: 0.2.1 - apiVersion: v1 appVersion: 11.10.4 - created: "2026-01-20T15:24:03.429746-05:00" + created: "2026-01-23T06:27:47.122682-05:00" dependencies: - condition: mysql.enabled name: mysql @@ -8503,7 +8524,7 @@ entries: version: 0.2.0 - apiVersion: v1 appVersion: 11.10.4 - created: "2026-01-20T15:24:03.428518-05:00" + created: "2026-01-23T06:27:47.121389-05:00" dependencies: - condition: mysql.enabled name: mysql @@ -8536,4 +8557,4 @@ entries: urls: - https://pilotdataplatform.github.io/helm-charts/xwiki-0.1.0.tgz version: 0.1.0 -generated: "2026-01-20T15:24:03.071466-05:00" +generated: "2026-01-23T06:27:46.722757-05:00" diff --git a/external-dns-9.0.3/.helmignore b/external-dns-9.0.3/.helmignore deleted file mode 100644 index 207983f3..00000000 --- a/external-dns-9.0.3/.helmignore +++ /dev/null @@ -1,25 +0,0 @@ -# Patterns to ignore when building packages. -# This supports shell glob matching, relative path matching, and -# negation (prefixed with !). Only one pattern per line. -.DS_Store -# Common VCS dirs -.git/ -.gitignore -.bzr/ -.bzrignore -.hg/ -.hgignore -.svn/ -# Common backup files -*.swp -*.bak -*.tmp -*~ -# Various IDEs -.project -.idea/ -*.tmproj -# img folder -img/ -# Changelog -CHANGELOG.md diff --git a/external-dns-9.0.3/Chart.lock b/external-dns-9.0.3/Chart.lock deleted file mode 100644 index 4700805c..00000000 --- a/external-dns-9.0.3/Chart.lock +++ /dev/null @@ -1,6 +0,0 @@ -dependencies: -- name: common - repository: oci://registry-1.docker.io/bitnamicharts - version: 2.31.4 -digest: sha256:fc442e77200e1914dd46fe26490dcf62f44caa51db673c2f8e67d5319cd4c163 -generated: "2025-08-13T14:51:56.613207941Z" diff --git a/external-dns-9.0.3/Chart.yaml b/external-dns-9.0.3/Chart.yaml deleted file mode 100644 index 8dbff7fb..00000000 --- a/external-dns-9.0.3/Chart.yaml +++ /dev/null @@ -1,30 +0,0 @@ -annotations: - category: DeveloperTools - images: | - - name: external-dns - image: docker.io/bitnami/external-dns:0.18.0-debian-12-r4 - licenses: Apache-2.0 - tanzuCategory: clusterUtility -apiVersion: v2 -appVersion: 0.18.0 -dependencies: -- name: common - repository: oci://registry-1.docker.io/bitnamicharts - tags: - - bitnami-common - version: 2.x.x -description: ExternalDNS is a Kubernetes addon that configures public DNS servers - with information about exposed Kubernetes services to make them discoverable. -home: https://bitnami.com -icon: https://dyltqmyl993wv.cloudfront.net/assets/stacks/external-dns/img/external-dns-stack-220x234.png -keywords: -- external-dns -- network -- dns -maintainers: -- name: Broadcom, Inc. All Rights Reserved. - url: https://github.com/bitnami/charts -name: external-dns -sources: -- https://github.com/bitnami/charts/tree/main/bitnami/external-dns -version: 9.0.3 diff --git a/external-dns-9.0.3/README.md b/external-dns-9.0.3/README.md deleted file mode 100644 index 6438502a..00000000 --- a/external-dns-9.0.3/README.md +++ /dev/null @@ -1,614 +0,0 @@ - - -# Bitnami package for ExternalDNS - -ExternalDNS is a Kubernetes addon that configures public DNS servers with information about exposed Kubernetes services to make them discoverable. - -[Overview of ExternalDNS](https://github.com/kubernetes-incubator/external-dns) - -Trademarks: This software listing is packaged by Bitnami. The respective trademarks mentioned in the offering are owned by the respective companies, and use of them does not imply any affiliation or endorsement. - -## TL;DR - -```console -helm install my-release oci://registry-1.docker.io/bitnamicharts/external-dns -``` - -Looking to use ExternalDNS in production? Try [VMware Tanzu Application Catalog](https://bitnami.com/enterprise), the commercial edition of the Bitnami catalog. - -## ⚠️ Important Notice: Upcoming changes to the Bitnami Catalog - -Beginning August 28th, 2025, Bitnami will evolve its public catalog to offer a curated set of hardened, security-focused images under the new [Bitnami Secure Images initiative](https://news.broadcom.com/app-dev/broadcom-introduces-bitnami-secure-images-for-production-ready-containerized-applications). As part of this transition: - -- Granting community users access for the first time to security-optimized versions of popular container images. -- Bitnami will begin deprecating support for non-hardened, Debian-based software images in its free tier and will gradually remove non-latest tags from the public catalog. As a result, community users will have access to a reduced number of hardened images. These images are published only under the “latest” tag and are intended for development purposes -- Starting August 28th, over two weeks, all existing container images, including older or versioned tags (e.g., 2.50.0, 10.6), will be migrated from the public catalog (docker.io/bitnami) to the “Bitnami Legacy” repository (docker.io/bitnamilegacy), where they will no longer receive updates. -- For production workloads and long-term support, users are encouraged to adopt Bitnami Secure Images, which include hardened containers, smaller attack surfaces, CVE transparency (via VEX/KEV), SBOMs, and enterprise support. - -These changes aim to improve the security posture of all Bitnami users by promoting best practices for software supply chain integrity and up-to-date deployments. For more details, visit the [Bitnami Secure Images announcement](https://github.com/bitnami/containers/issues/83267). - -## Introduction - -This chart bootstraps a [ExternalDNS](https://github.com/bitnami/containers/tree/main/bitnami/external-dns) deployment on a [Kubernetes](https://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. - -## Prerequisites - -- Kubernetes 1.23+ -- Helm 3.8.0+ - -## Installing the Chart - -To install the chart with the release name `my-release`: - -```console -helm install my-release oci://REGISTRY_NAME/REPOSITORY_NAME/external-dns -``` - -> Note: You need to substitute the placeholders `REGISTRY_NAME` and `REPOSITORY_NAME` with a reference to your Helm chart registry and repository. For example, in the case of Bitnami, you need to use `REGISTRY_NAME=registry-1.docker.io` and `REPOSITORY_NAME=bitnamicharts`. - -The command deploys ExternalDNS on the Kubernetes cluster in the default configuration. The [Parameters](#parameters) section lists the parameters that can be configured during installation. - -> **Tip**: List all releases using `helm list` - -## Configuration and installation details - -### Resource requests and limits - -Bitnami charts allow setting resource requests and limits for all containers inside the chart deployment. These are inside the `resources` value (check parameter table). Setting requests is essential for production workloads and these should be adapted to your specific use case. - -To make this process easier, the chart contains the `resourcesPreset` values, which automatically sets the `resources` section according to different presets. Check these presets in [the bitnami/common chart](https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15). However, in production workloads using `resourcesPreset` is discouraged as it may not fully adapt to your specific needs. Find more information on container resource management in the [official Kubernetes documentation](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/). - -### [Rolling VS Immutable tags](https://techdocs.broadcom.com/us/en/vmware-tanzu/application-catalog/tanzu-application-catalog/services/tac-doc/apps-tutorials-understand-rolling-tags-containers-index.html) - -It is strongly recommended to use immutable tags in a production environment. This ensures your deployment does not change automatically if the same tag is updated with a different image. - -Bitnami will release a new chart updating its containers if a new version of the main container, significant changes, or critical vulnerabilities exist. - -### Prometheus metrics - -This chart can be integrated with Prometheus by setting `metrics.enabled` to `true`. This will expose external-dns native Prometheus endpoint in the service. It will have the necessary annotations to be automatically scraped by Prometheus. - -#### Prometheus requirements - -It is necessary to have a working installation of Prometheus or Prometheus Operator for the integration to work. Install the [Bitnami Prometheus helm chart](https://github.com/bitnami/charts/tree/main/bitnami/prometheus) or the [Bitnami Kube Prometheus helm chart](https://github.com/bitnami/charts/tree/main/bitnami/kube-prometheus) to easily have a working Prometheus in your cluster. - -#### Integration with Prometheus Operator - -The chart can deploy `ServiceMonitor` objects for integration with Prometheus Operator installations. To do so, set the value `metrics.serviceMonitor.enabled=true`. Ensure that the Prometheus Operator `CustomResourceDefinitions` are installed in the cluster or it will fail with the following error: - -```text -no matches for kind "ServiceMonitor" in version "monitoring.coreos.com/v1" -``` - -Install the [Bitnami Kube Prometheus helm chart](https://github.com/bitnami/charts/tree/main/bitnami/kube-prometheus) for having the necessary CRDs and the Prometheus Operator. - -### Backup and restore - -To back up and restore Helm chart deployments on Kubernetes, you need to back up the persistent volumes from the source deployment and attach them to a new deployment using [Velero](https://velero.io/), a Kubernetes backup/restore tool. Find the instructions for using Velero in [this guide](https://techdocs.broadcom.com/us/en/vmware-tanzu/application-catalog/tanzu-application-catalog/services/tac-doc/apps-tutorials-backup-restore-deployments-velero-index.html). - -### Setting Pod's affinity - -This chart allows you to set your custom affinity using the `affinity` parameter. Find more information about Pod's affinity in the [kubernetes documentation](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity). - -As an alternative, you can use of the preset configurations for pod affinity, pod anti-affinity, and node affinity available at the [bitnami/common](https://github.com/bitnami/charts/tree/main/bitnami/common#affinities) chart. To do so, set the `podAffinityPreset`, `podAntiAffinityPreset`, or `nodeAffinityPreset` parameters. - -### Using IRSA - -If you are deploying to AWS EKS and you want to leverage [IRSA](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html). You will need to override `fsGroup` and `runAsUser` with `65534`(nfsnobody) and `0` respectively. Otherwise service account token will not be properly mounted. -You can use the following arguments: - -```console ---set podSecurityContext.fsGroup=65534 --set podSecurityContext.runAsUser=0 -``` - -### Webhook Providers - -Webhook providers allow integrating ExternalDNS with DNS providers through an HTTP interface. This approach decouples ExternalDNS and the Providers code which can be running in separate processes. - -With the Bitnami ExternalDNS chart, you can deploy Webhook Providers and configure ExternalDNS easely using `sidecars` and `extraArgs` values: - -```yaml -provider: webhook - -extraArgs: - webhook-provider-url: http://localhost:8080 - txt-prefix: reg- - -sidecars: - - name: my-webhook - image: - ports: - - containerPort: 8080 - name: http - livenessProbe: - httpGet: - path: / - port: http - initialDelaySeconds: 10 - timeoutSeconds: 5 - readinessProbe: - tcpSocket: - port: http - initialDelaySeconds: 10 - timeoutSeconds: 5 - env: - - name: - value: TEST - ... -``` - -More information about these new providers can be found in the [ExternalDNS documentation](https://github.com/kubernetes-sigs/external-dns/tree/master#new-providers) - -## Tutorials - -Find information about the requirements for each DNS provider on the link below: - -- [ExternalDNS Tutorials](https://github.com/kubernetes-sigs/external-dns/tree/master/docs/tutorials) - -For instance, to install ExternalDNS on AWS, you need to: - -- Provide the K8s worker node which runs the cluster autoscaler with a minimum IAM policy (check [IAM permissions docs](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/aws.md#iam-permissions) for more information). -- Setup a hosted zone on Route53 and annotate the Hosted Zone ID and its associated "nameservers" as described on [these docs](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/aws.md#set-up-a-hosted-zone). -- Install ExternalDNS chart using the command below: - -> Note: replace the placeholder HOSTED_ZONE_IDENTIFIER and HOSTED_ZONE_NAME, with your hosted zoned identifier and name, respectively. - -```console -helm install my-release \ - --set provider=aws \ - --set aws.zoneType=public \ - --set txtOwnerId=HOSTED_ZONE_IDENTIFIER \ - --set domainFilters[0]=HOSTED_ZONE_NAME \ - oci://REGISTRY_NAME/REPOSITORY_NAME/external-dns -``` - -> Note: You need to substitute the placeholders `REGISTRY_NAME` and `REPOSITORY_NAME` with a reference to your Helm chart registry and repository. For example, in the case of Bitnami, you need to use `REGISTRY_NAME=registry-1.docker.io` and `REPOSITORY_NAME=bitnamicharts`. - -## Parameters - -### Global parameters - -| Name | Description | Value | -| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- | -| `global.imageRegistry` | Global Docker image registry | `""` | -| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` | -| `global.security.allowInsecureImages` | Allows skipping image verification | `false` | -| `global.compatibility.openshift.adaptSecurityContext` | Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation) | `auto` | - -### Common parameters - -| Name | Description | Value | -| ------------------- | -------------------------------------------------------------------------------------------- | --------------- | -| `nameOverride` | String to partially override common.names.fullname template (will maintain the release name) | `""` | -| `fullnameOverride` | String to fully override common.names.fullname template | `""` | -| `namespaceOverride` | String to fully override common.names.namespace | `""` | -| `clusterDomain` | Kubernetes Cluster Domain | `cluster.local` | -| `commonLabels` | Labels to add to all deployed objects | `{}` | -| `commonAnnotations` | Annotations to add to all deployed objects | `{}` | -| `extraDeploy` | Array of extra objects to deploy with the release (evaluated as a template). | `[]` | -| `kubeVersion` | Force target Kubernetes version (using Helm capabilities if not set) | `""` | - -### external-dns parameters - -| Name | Description | Value | -| --------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------ | -| `image.registry` | ExternalDNS image registry | `REGISTRY_NAME` | -| `image.repository` | ExternalDNS image repository | `REPOSITORY_NAME/external-dns` | -| `image.digest` | ExternalDNS image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag | `""` | -| `image.pullPolicy` | ExternalDNS image pull policy | `IfNotPresent` | -| `image.pullSecrets` | ExternalDNS image pull secrets | `[]` | -| `revisionHistoryLimit` | sets number of replicaset to keep in k8s | `10` | -| `automountServiceAccountToken` | Mount Service Account token in pod | `true` | -| `hostAliases` | Deployment pod host aliases | `[]` | -| `updateStrategy` | update strategy type | `{}` | -| `command` | Override kiam default command | `[]` | -| `args` | Override kiam default args | `[]` | -| `sources` | K8s resources type to be observed for new DNS entries by ExternalDNS | `[]` | -| `provider` | DNS provider where the DNS records will be created. | `aws` | -| `initContainers` | Attach additional init containers to the pod (evaluated as a template) | `[]` | -| `dnsPolicy` | Specifies the DNS policy for the external-dns deployment | `""` | -| `dnsConfig` | allows users more control on the DNS settings for a Pod. Required if `dnsPolicy` is set to `None` | `{}` | -| `sidecars` | Attach additional containers to the pod (evaluated as a template) | `[]` | -| `namespace` | Limit sources of endpoints to a specific namespace (default: all namespaces) | `""` | -| `watchReleaseNamespace` | Watch only namespace used for the release | `false` | -| `fqdnTemplates` | Templated strings that are used to generate DNS names from sources that don't define a hostname themselves | `[]` | -| `containerPorts.http` | HTTP Container port | `7979` | -| `combineFQDNAnnotation` | Combine FQDN template and annotations instead of overwriting | `false` | -| `ignoreHostnameAnnotation` | Ignore hostname annotation when generating DNS names, valid only when fqdn-template is set | `false` | -| `publishInternalServices` | Allow external-dns to publish DNS records for ClusterIP services | `false` | -| `publishHostIP` | Allow external-dns to publish host-ip for headless services | `false` | -| `serviceTypeFilter` | The service types to take care about (default: all, options: ClusterIP, NodePort, LoadBalancer, ExternalName) | `[]` | -| `validation.enabled` | Enable chart validation | `true` | -| `akamai.host` | Hostname to use for EdgeGrid auth | `""` | -| `akamai.accessToken` | Access Token to use for EdgeGrid auth | `""` | -| `akamai.clientToken` | Client Token to use for EdgeGrid auth | `""` | -| `akamai.clientSecret` | When using the Akamai provider, `AKAMAI_CLIENT_SECRET` to set (optional) | `""` | -| `akamai.secretName` | Use an existing secret with key "akamai_api_seret" defined. | `""` | -| `alibabacloud.accessKeyId` | When using the Alibaba Cloud provider, set `accessKeyId` in the Alibaba Cloud configuration file (optional) | `""` | -| `alibabacloud.accessKeySecret` | When using the Alibaba Cloud provider, set `accessKeySecret` in the Alibaba Cloud configuration file (optional) | `""` | -| `alibabacloud.regionId` | When using the Alibaba Cloud provider, set `regionId` in the Alibaba Cloud configuration file (optional) | `""` | -| `alibabacloud.vpcId` | Alibaba Cloud VPC Id | `""` | -| `alibabacloud.secretName` | Use an existing secret with key "alibaba-cloud.json" defined. | `""` | -| `alibabacloud.zoneType` | Zone Filter. Available values are: public, private, or no value for both | `""` | -| `aws.credentials.secretKey` | When using the AWS provider, set `aws_secret_access_key` in the AWS credentials (optional) | `""` | -| `aws.credentials.accessKey` | When using the AWS provider, set `aws_access_key_id` in the AWS credentials (optional) | `""` | -| `aws.credentials.mountPath` | When using the AWS provider, determine `mountPath` for `credentials` secret | `/.aws` | -| `aws.credentials.secretName` | Use an existing secret with key "credentials" defined. | `""` | -| `aws.credentials.accessKeyIDSecretRef.name` | Define the name of the secret that stores aws_access_key_id. | `""` | -| `aws.credentials.accessKeyIDSecretRef.key` | Define the key of the secret that stores aws_access_key_id. | `""` | -| `aws.credentials.secretAccessKeySecretRef.name` | Define the name of the secret that stores aws_secret_access_key | `""` | -| `aws.credentials.secretAccessKeySecretRef.key` | Define the key of the secret that stores aws_secret_access_key | `""` | -| `aws.region` | When using the AWS provider, `AWS_DEFAULT_REGION` to set in the environment (optional) | `us-east-1` | -| `aws.zoneType` | When using the AWS provider, filter for zones of this type (optional, options: public, private) | `""` | -| `aws.assumeRoleArn` | When using the AWS provider, assume role by specifying --aws-assume-role to the external-dns daemon | `""` | -| `aws.roleArn` | Specify role ARN to the external-dns daemon | `""` | -| `aws.apiRetries` | Maximum number of retries for AWS API calls before giving up | `3` | -| `aws.batchChangeSize` | When using the AWS provider, set the maximum number of changes that will be applied in each batch | `1000` | -| `aws.zonesCacheDuration` | If the list of Route53 zones managed by ExternalDNS doesn't change frequently, cache it by setting a TTL | `0` | -| `aws.zoneTags` | When using the AWS provider, filter for zones with these tags | `[]` | -| `aws.preferCNAME` | When using the AWS provider, replaces Alias records with CNAME (options: true, false) | `""` | -| `aws.evaluateTargetHealth` | When using the AWS provider, sets the evaluate target health flag (options: true, false) | `""` | -| `aws.dynamodbTable` | When using the AWS provider, sets the DynamoDB table name to use for dynamodb registry | `""` | -| `aws.dynamodbRegion` | When using the AWS provider, sets the DynamoDB table region to use for dynamodb registry | `""` | -| `aws.zoneMatchParent` | When using the AWS provider, lets a domain filter match subdomains within the same zone by using their parent domain | `false` | -| `azure.secretName` | When using the Azure provider, set the secret containing the `azure.json` file | `""` | -| `azure.cloud` | When using the Azure provider, set the Azure Cloud | `""` | -| `azure.resourceGroup` | When using the Azure provider, set the Azure Resource Group | `""` | -| `azure.tenantId` | When using the Azure provider, set the Azure Tenant ID | `""` | -| `azure.subscriptionId` | When using the Azure provider, set the Azure Subscription ID | `""` | -| `azure.aadClientId` | When using the Azure provider, set the Azure AAD Client ID | `""` | -| `azure.aadClientSecret` | When using the Azure provider, set the Azure AAD Client Secret | `""` | -| `azure.useWorkloadIdentityExtension` | When using the Azure provider, set if you use Workload Identity extension. | `false` | -| `azure.useManagedIdentityExtension` | When using the Azure provider, set if you use Azure MSI | `false` | -| `azure.userAssignedIdentityID` | When using the Azure provider with Azure MSI, set Client ID of Azure user-assigned managed identity (optional, otherwise system-assigned managed identity is used) | `""` | -| `civo.apiToken` | When using the Civo provider, `CIVO_TOKEN` to set (optional) | `""` | -| `civo.secretName` | Use an existing secret with key "apiToken" defined. | `""` | -| `cloudflare.apiToken` | When using the Cloudflare provider, `CF_API_TOKEN` to set (optional) | `""` | -| `cloudflare.apiKey` | When using the Cloudflare provider, `CF_API_KEY` to set (optional) | `""` | -| `cloudflare.secretName` | When using the Cloudflare provider, it's the name of the secret containing cloudflare_api_token or cloudflare_api_key. | `""` | -| `cloudflare.email` | When using the Cloudflare provider, `CF_API_EMAIL` to set (optional). Needed when using CF_API_KEY | `""` | -| `cloudflare.proxied` | When using the Cloudflare provider, enable the proxy feature (DDOS protection, CDN...) (optional) | `true` | -| `cloudflare.dnsRecordsPerPage` | Number of DNS records to fetch per page. (optional) | `100` | -| `cloudflare.regionalServices` | Enable configuration of Cloudflare Regional Services. (optional) | `false` | -| `cloudflare.regionKey` | Set default region, when Cloudflare Regional Services are enabled. (optional) | `""` | -| `coredns.etcdEndpoints` | When using the CoreDNS provider, set etcd backend endpoints (comma-separated list) | `http://etcd-extdns:2379` | -| `coredns.etcdTLS.enabled` | When using the CoreDNS provider, enable secure communication with etcd | `false` | -| `coredns.etcdTLS.autoGenerated` | Generate automatically self-signed TLS certificates | `false` | -| `coredns.etcdTLS.secretName` | When using the CoreDNS provider, specify a name of existing Secret with etcd certs and keys | `etcd-client-certs` | -| `coredns.etcdTLS.mountPath` | When using the CoreDNS provider, set destination dir to mount data from `coredns.etcdTLS.secretName` to | `/etc/coredns/tls/etcd` | -| `coredns.etcdTLS.caFilename` | When using the CoreDNS provider, specify CA PEM file name from the `coredns.etcdTLS.secretName` | `ca.crt` | -| `coredns.etcdTLS.certFilename` | When using the CoreDNS provider, specify cert PEM file name from the `coredns.etcdTLS.secretName` | `cert.pem` | -| `coredns.etcdTLS.keyFilename` | When using the CoreDNS provider, specify private key PEM file name from the `coredns.etcdTLS.secretName` | `key.pem` | -| `exoscale.apiKey` | When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APIKEY` to set (optional) | `""` | -| `exoscale.apiToken` | When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APISECRET` to set (optional) | `""` | -| `exoscale.secretName` | Use an existing secret with keys "exoscale_api_key" and "exoscale_api_token" defined. | `""` | -| `digitalocean.apiToken` | When using the DigitalOcean provider, `DO_TOKEN` to set (optional) | `""` | -| `digitalocean.secretName` | Use an existing secret with key "digitalocean_api_token" defined. | `""` | -| `google.project` | When using the Google provider, specify the Google project (required when provider=google) | `""` | -| `google.batchChangeSize` | When using the google provider, set the maximum number of changes that will be applied in each batch | `1000` | -| `google.serviceAccountSecret` | When using the Google provider, specify the existing secret which contains credentials.json (optional) | `""` | -| `google.serviceAccountSecretKey` | When using the Google provider with an existing secret, specify the key name (optional) | `credentials.json` | -| `google.serviceAccountKey` | When using the Google provider, specify the service account key JSON file. In this case a new secret will be created holding this service account (optional) | `""` | -| `google.zoneVisibility` | When using the Google provider, fiter for zones of a specific visibility (private or public) | `""` | -| `linode.apiToken` | When using the Linode provider, `LINODE_TOKEN` to set (optional) | `""` | -| `linode.secretName` | Use an existing secret with key "linode_api_token" defined. | `""` | -| `ns1.minTTL` | When using the ns1 provider, specify minimal TTL, as an integer, for records | `10` | -| `ns1.apiKey` | When using the ns1 provider, specify the API key to use | `""` | -| `ns1.secretName` | Use an existing secret with key "ns1-api-key" defined. | `""` | -| `pihole.server` | When using the Pi-hole provider, specify The address of the Pi-hole web server | `""` | -| `pihole.tlsSkipVerify` | When using the Pi-hole provider, specify wheter to skip verification of any TLS certificates served by the Pi-hole web server | `""` | -| `pihole.password` | When using the Pi-hole provider, specify a password to use | `""` | -| `pihole.secretName` | Use an existing secret with key "pihole_password" defined. | `""` | -| `traefik.disableNew` | Disable listeners on Resources under traefik.io | `false` | -| `traefik.disableLegacy` | Disable listeners on Resources under traefik.containo.us | `false` | -| `oci.region` | When using the OCI provider, specify the region, where your zone is located in. | `""` | -| `oci.tenancyOCID` | When using the OCI provider, specify your Tenancy OCID | `""` | -| `oci.userOCID` | When using the OCI provider, specify your User OCID | `""` | -| `oci.compartmentOCID` | When using the OCI provider, specify your Compartment OCID where your DNS Zone is located in. | `""` | -| `oci.privateKey` | When using the OCI provider, paste in your RSA private key file for the Oracle API | `""` | -| `oci.privateKeyFingerprint` | When using the OCI provider, put in the fingerprint of your privateKey | `""` | -| `oci.privateKeyPassphrase` | When using the OCI provider and your privateKey has a passphrase, put it in here. (optional) | `""` | -| `oci.secretName` | When using the OCI provider, it's the name of the secret containing `oci.yaml` file. | `""` | -| `oci.useInstancePrincipal` | When using the OCI provider, enable IAM Instance Principal | `false` | -| `oci.useWorkloadIdentity` | When using the OCI provider, enable IAM Workload Identity | `false` | -| `ovh.consumerKey` | When using the OVH provider, specify the existing consumer key. (required when provider=ovh and `ovh.secretName` is not provided.) | `""` | -| `ovh.applicationKey` | When using the OVH provider with an existing application, specify the application key. (required when provider=ovh and `ovh.secretName` is not provided.) | `""` | -| `ovh.applicationSecret` | When using the OVH provider with an existing application, specify the application secret. (required when provider=ovh and `ovh.secretName` is not provided.) | `""` | -| `ovh.secretName` | When using the OVH provider, it's the name of the secret containing `ovh_consumer_key`, `ovh_application_key` and `ovh_application_secret`. Disables usage of other `ovh`. | `""` | -| `scaleway.scwAccessKey` | When using the Scaleway provider, specify an existing access key. (required when provider=scaleway) | `""` | -| `scaleway.scwSecretKey` | When using the Scaleway provider, specify an existing secret key. (required when provider=scaleway) | `""` | -| `scaleway.secretName` | Use an existing secret with keys "scaleway_access_key" and "scaleway_secret_key" defined (optional). | `""` | -| `rfc2136.host` | When using the rfc2136 provider, specify the RFC2136 host (required when provider=rfc2136) | `""` | -| `rfc2136.port` | When using the rfc2136 provider, specify the RFC2136 port (optional) | `53` | -| `rfc2136.zone` | DEPRECATED: use rfc2136.zones instead. | `""` | -| `rfc2136.zones` | When using the rfc2136 provider, specify the zones (required when provider=rfc2136 and `rfc2136.zone` is not provided.) | `[]` | -| `rfc2136.tsigSecret` | When using the rfc2136 provider, specify the tsig secret to enable security. (do not specify if `rfc2136.secretName` is provided.) (optional) | `""` | -| `rfc2136.secretName` | When using the rfc2136 provider, specify the existing secret which contains your tsig secret in the key "rfc2136_tsig_secret". Disables the usage of `rfc2136.tsigSecret` (optional) | `""` | -| `rfc2136.tsigSecretAlg` | When using the rfc2136 provider, specify the tsig secret to enable security (optional) | `hmac-sha256` | -| `rfc2136.tsigKeyname` | When using the rfc2136 provider, specify the tsig keyname to enable security (optional) | `rfc2136_tsig_secret` | -| `rfc2136.tsigAxfr` | When using the rfc2136 provider, enable AFXR to enable security (optional) | `true` | -| `rfc2136.minTTL` | When using the rfc2136 provider, specify minimal TTL (in duration format) for records[ns, us, ms, s, m, h], see more | `0s` | -| `rfc2136.rfc3645Enabled` | When using the rfc2136 provider, extend using RFC3645 to support secure updates over Kerberos with GSS-TSIG | `false` | -| `rfc2136.kerberosConfig` | When using the rfc2136 provider with rfc3645Enabled, the contents of a configuration file for krb5 (optional) | `""` | -| `rfc2136.kerberosUsername` | When using the rfc2136 provider with rfc3645Enabled, specify the username to authenticate with (optional) | `""` | -| `rfc2136.kerberosPassword` | When using the rfc2136 provider with rfc3645Enabled, specify the password to authenticate with (optional) | `""` | -| `rfc2136.kerberosRealm` | When using the rfc2136 provider with rfc3645Enabled, specify the realm to authenticate to (required when provider=rfc2136 and rfc2136.rfc3645Enabled=true) | `""` | -| `pdns.apiUrl` | When using the PowerDNS provider, specify the API URL of the server. | `""` | -| `pdns.apiPort` | When using the PowerDNS provider, specify the API port of the server. | `8081` | -| `pdns.apiKey` | When using the PowerDNS provider, specify the API key of the server. | `""` | -| `pdns.secretName` | When using the PowerDNS provider, specify as secret name containing the API Key | `""` | -| `transip.account` | When using the TransIP provider, specify the account name. | `""` | -| `transip.apiKey` | When using the TransIP provider, specify the API key to use. | `""` | -| `domainFilters` | Limit possible target zones by domain suffixes (optional) | `[]` | -| `excludeDomains` | Exclude subdomains (optional) | `[]` | -| `regexDomainFilter` | Limit possible target zones by regex domain suffixes (optional) | `""` | -| `regexDomainExclusion` | Exclude subdomains by using regex pattern (optional) | `""` | -| `zoneNameFilters` | Filter target zones by zone domain (optional) | `[]` | -| `zoneIdFilters` | Limit possible target zones by zone id (optional) | `[]` | -| `annotationFilter` | Filter sources managed by external-dns via annotation using label selector (optional) | `""` | -| `labelFilter` | Select sources managed by external-dns using label selector (optional) | `""` | -| `ingressClassFilters` | Filter sources managed by external-dns via IngressClass (optional) | `[]` | -| `managedRecordTypesFilters` | Filter record types managed by external-dns (optional) | `[]` | -| `dryRun` | When enabled, prints DNS record changes rather than actually performing them (optional) | `false` | -| `triggerLoopOnEvent` | When enabled, triggers run loop on create/update/delete events in addition to regular interval (optional) | `false` | -| `interval` | Interval update period to use | `1m` | -| `logLevel` | Verbosity of the logs (options: panic, debug, info, warning, error, fatal, trace) | `info` | -| `logFormat` | Which format to output logs in (options: text, json) | `text` | -| `policy` | Modify how DNS records are synchronized between sources and providers (options: sync, upsert-only ) | `upsert-only` | -| `registry` | Registry method to use (options: txt, aws-sd, dynamodb, noop) | `txt` | -| `txtPrefix` | When using the TXT registry, a prefix for ownership records that avoids collision with CNAME entries (optional) (Mutual exclusive with txt-suffix) | `""` | -| `txtSuffix` | When using the TXT registry, a suffix for ownership records that avoids collision with CNAME entries (optional).suffix (Mutual exclusive with txt-prefix) | `""` | -| `txtNewFormatOnly` | When using the TXT registry, use only the new format for ownership records (optional) | `false` | -| `txtOwnerId` | A name that identifies this instance of ExternalDNS. Currently used by registry types: txt & aws-sd (optional) | `""` | -| `forceTxtOwnerId` | (backward compatibility) When using the non-TXT registry, it will pass the value defined by `txtOwnerId` down to the application (optional) | `false` | -| `txtEncrypt.enabled` | Enable TXT record encryption | `false` | -| `txtEncrypt.aesKey` | 32-byte AES-256-GCM encryption key. | `""` | -| `txtEncrypt.secretName` | Use an existing secret with key "txt_aes_encryption_key" defined. | `""` | -| `extraArgs` | Extra arguments to be passed to external-dns | `{}` | -| `extraEnvVars` | An array to add extra env vars | `[]` | -| `extraEnvVarsCM` | ConfigMap containing extra env vars | `""` | -| `extraEnvVarsSecret` | Secret containing extra env vars (in case of sensitive data) | `""` | -| `lifecycleHooks` | Override default etcd container hooks | `{}` | -| `schedulerName` | Alternative scheduler | `""` | -| `topologySpreadConstraints` | Topology Spread Constraints for pod assignment | `[]` | -| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` | -| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` | -| `nodeAffinityPreset.key` | Node label key to match Ignored if `affinity` is set. | `""` | -| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set. | `[]` | -| `affinity` | Affinity for pod assignment | `{}` | -| `nodeSelector` | Node labels for pod assignment | `{}` | -| `tolerations` | Tolerations for pod assignment | `[]` | -| `podAnnotations` | Additional annotations to apply to the pod. | `{}` | -| `podLabels` | Additional labels to be added to pods | `{}` | -| `priorityClassName` | priorityClassName | `""` | -| `secretAnnotations` | Additional annotations to apply to the secret | `{}` | -| `crd.create` | Install and use the integrated DNSEndpoint CRD | `false` | -| `crd.apiversion` | Sets the API version for the CRD to watch | `""` | -| `crd.kind` | Sets the kind for the CRD to watch | `""` | -| `service.enabled` | Whether to create Service resource or not | `true` | -| `service.type` | Kubernetes Service type | `ClusterIP` | -| `service.ports.http` | ExternalDNS client port | `7979` | -| `service.nodePorts.http` | Port to bind to for NodePort service type (client port) | `""` | -| `service.clusterIP` | IP address to assign to service | `""` | -| `service.externalIPs` | Service external IP addresses | `[]` | -| `service.externalName` | Service external name | `""` | -| `service.loadBalancerIP` | IP address to assign to load balancer (if supported) | `""` | -| `service.loadBalancerSourceRanges` | List of IP CIDRs allowed access to load balancer (if supported) | `[]` | -| `service.externalTrafficPolicy` | Enable client source IP preservation | `Cluster` | -| `service.extraPorts` | Extra ports to expose in the service (normally used with the `sidecar` value) | `[]` | -| `service.annotations` | Annotations to add to service | `{}` | -| `service.labels` | Provide any additional labels which may be required. | `{}` | -| `service.sessionAffinity` | Session Affinity for Kubernetes service, can be "None" or "ClientIP" | `None` | -| `service.sessionAffinityConfig` | Additional settings for the sessionAffinity | `{}` | -| `networkPolicy.enabled` | Specifies whether a NetworkPolicy should be created | `true` | -| `networkPolicy.allowExternal` | Don't require server label for connections | `true` | -| `networkPolicy.allowExternalEgress` | Allow the pod to access any range of port and all destinations. | `true` | -| `networkPolicy.kubeAPIServerPorts` | List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security) | `[]` | -| `networkPolicy.extraIngress` | Add extra ingress rules to the NetworkPolicy | `[]` | -| `networkPolicy.extraEgress` | Add extra ingress rules to the NetworkPolicy | `[]` | -| `networkPolicy.ingressNSMatchLabels` | Labels to match to allow traffic from other namespaces | `{}` | -| `networkPolicy.ingressNSPodMatchLabels` | Pod labels to match to allow traffic from other namespaces | `{}` | -| `serviceAccount.create` | Determine whether a Service Account should be created or it should reuse a exiting one. | `true` | -| `serviceAccount.name` | ServiceAccount to use. A name is generated using the common.names.fullname template if it is not set | `""` | -| `serviceAccount.annotations` | Additional Service Account annotations | `{}` | -| `serviceAccount.automountServiceAccountToken` | Automount API credentials for a service account. | `false` | -| `serviceAccount.labels` | Additional labels to be included on the service account | `{}` | -| `rbac.create` | Whether to create & use RBAC resources or not | `true` | -| `rbac.clusterRole` | Whether to create Cluster Role. When set to false creates a Role in `namespace` | `true` | -| `rbac.apiVersion` | Version of the RBAC API | `v1` | -| `rbac.pspEnabled` | Whether to create a PodSecurityPolicy. WARNING: PodSecurityPolicy is deprecated in Kubernetes v1.21 or later, unavailable in v1.25 or later | `false` | -| `containerSecurityContext.enabled` | Enabled Apache Server containers' Security Context | `true` | -| `containerSecurityContext.seLinuxOptions` | Set SELinux options in container | `{}` | -| `containerSecurityContext.runAsUser` | Set ExternalDNS containers' Security Context runAsUser | `1001` | -| `containerSecurityContext.runAsGroup` | Set ExternalDNS containers' Security Context runAsGroup | `1001` | -| `containerSecurityContext.runAsNonRoot` | Set ExternalDNS container's Security Context runAsNonRoot | `true` | -| `containerSecurityContext.privileged` | Set primary container's Security Context privileged | `false` | -| `containerSecurityContext.allowPrivilegeEscalation` | Set primary container's Security Context allowPrivilegeEscalation | `false` | -| `containerSecurityContext.capabilities.drop` | List of capabilities to be dropped | `["ALL"]` | -| `containerSecurityContext.readOnlyRootFilesystem` | Set container readonlyRootFilesystem | `true` | -| `containerSecurityContext.seccompProfile.type` | Set container's Security Context seccomp profile | `RuntimeDefault` | -| `podSecurityContext.enabled` | Enable pod security context | `true` | -| `podSecurityContext.fsGroupChangePolicy` | Set filesystem group change policy | `Always` | -| `podSecurityContext.sysctls` | Set kernel settings using the sysctl interface | `[]` | -| `podSecurityContext.supplementalGroups` | Set filesystem extra groups | `[]` | -| `podSecurityContext.fsGroup` | Group ID for the container | `1001` | -| `resourcesPreset` | Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). | `nano` | -| `resources` | Set container requests and limits for different resources like CPU or memory (essential for production workloads) | `{}` | -| `livenessProbe.enabled` | Enable livenessProbe | `true` | -| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `10` | -| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `10` | -| `livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` | -| `livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `2` | -| `livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` | -| `readinessProbe.enabled` | Enable readinessProbe | `true` | -| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` | -| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `10` | -| `readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` | -| `readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `6` | -| `readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` | -| `startupProbe.enabled` | Enable startupProbe | `false` | -| `startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `5` | -| `startupProbe.periodSeconds` | Period seconds for startupProbe | `10` | -| `startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `5` | -| `startupProbe.failureThreshold` | Failure threshold for startupProbe | `6` | -| `startupProbe.successThreshold` | Success threshold for startupProbe | `1` | -| `customLivenessProbe` | Override default liveness probe | `{}` | -| `customReadinessProbe` | Override default readiness probe | `{}` | -| `customStartupProbe` | Override default startup probe | `{}` | -| `extraVolumes` | A list of volumes to be added to the pod | `[]` | -| `extraVolumeMounts` | A list of volume mounts to be added to the pod | `[]` | -| `pdb.create` | Enable/disable a Pod Disruption Budget creation | `true` | -| `pdb.minAvailable` | Minimum number/percentage of pods that should remain scheduled | `""` | -| `pdb.maxUnavailable` | Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `pdb.minAvailable` and `pdb.maxUnavailable` are empty. | `""` | -| `metrics.enabled` | Enable prometheus to access external-dns metrics endpoint | `false` | -| `metrics.podAnnotations` | Annotations for enabling prometheus to access the metrics endpoint | `{}` | -| `metrics.serviceMonitor.enabled` | Create ServiceMonitor object | `false` | -| `metrics.serviceMonitor.namespace` | Namespace in which Prometheus is running | `""` | -| `metrics.serviceMonitor.interval` | Interval at which metrics should be scraped | `""` | -| `metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended | `""` | -| `metrics.serviceMonitor.selector` | Additional labels for ServiceMonitor object | `{}` | -| `metrics.serviceMonitor.metricRelabelings` | Specify Metric Relabelings to add to the scrape endpoint | `[]` | -| `metrics.serviceMonitor.relabelings` | Prometheus relabeling rules | `[]` | -| `metrics.serviceMonitor.honorLabels` | Specify honorLabels parameter to add the scrape endpoint | `false` | -| `metrics.serviceMonitor.labels` | Used to pass Labels that are required by the installed Prometheus Operator | `{}` | -| `metrics.serviceMonitor.targetLabels` | Labels from the Kubernetes service to be transferred to the created metrics | `[]` | -| `metrics.serviceMonitor.podTargetLabels` | Labels from the Kubernetes pod to be transferred to the created metrics | `[]` | -| `metrics.serviceMonitor.annotations` | Additional custom annotations for the ServiceMonitor | `{}` | -| `metrics.serviceMonitor.jobLabel` | The name of the label on the target service to use as the job name in prometheus. | `""` | -| `metrics.googlePodMonitor.enabled` | Create Google Managed Prometheus PodMonitoring object | `false` | -| `metrics.googlePodMonitor.namespace` | Namespace in which PodMonitoring created | `""` | -| `metrics.googlePodMonitor.interval` | Interval at which metrics should be scraped by Google Managed Prometheus | `60s` | -| `metrics.googlePodMonitor.endpoint` | The endpoint for Google Managed Prometheus scraping the metrics | `/metrics` | - -Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`. For example, - -```console -helm install my-release \ - --set provider=aws oci://REGISTRY_NAME/REPOSITORY_NAME/external-dns -``` - -> Note: You need to substitute the placeholders `REGISTRY_NAME` and `REPOSITORY_NAME` with a reference to your Helm chart registry and repository. For example, in the case of Bitnami, you need to use `REGISTRY_NAME=registry-1.docker.io` and `REPOSITORY_NAME=bitnamicharts`. - -Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example, - -```console -helm install my-release -f values.yaml oci://REGISTRY_NAME/REPOSITORY_NAME/external-dns -``` - -> Note: You need to substitute the placeholders `REGISTRY_NAME` and `REPOSITORY_NAME` with a reference to your Helm chart registry and repository. For example, in the case of Bitnami, you need to use `REGISTRY_NAME=registry-1.docker.io` and `REPOSITORY_NAME=bitnamicharts`. -> **Tip**: You can use the default [values.yaml](https://github.com/bitnami/charts/tree/main/bitnami/external-dns/values.yaml) - -## Troubleshooting - -Find more information about how to deal with common errors related to Bitnami's Helm charts in [this troubleshooting guide](https://docs.bitnami.com/general/how-to/troubleshoot-helm-chart-issues). - -## Upgrading - -### To 9.0.0 - -Unsupported in-tree providers have been removed: OpenStack Designate, Hetzner, Infoblox, VinylDNS - -### To 8.7.0 - -This version introduces image verification for security purposes. To disable it, set `global.security.allowInsecureImages` to `true`. More details at [GitHub issue](https://github.com/bitnami/charts/issues/30850). - -### To 7.0.0 - -This major bump changes the following security defaults: - -- `runAsGroup` is changed from `0` to `1001` -- `readOnlyRootFilesystem` is set to `true` -- `resourcesPreset` is changed from `none` to the minimum size working in our test suites (NOTE: `resourcesPreset` is not meant for production usage, but `resources` adapted to your use case). -- `global.compatibility.openshift.adaptSecurityContext` is changed from `disabled` to `auto`. - -This could potentially break any customization or init scripts used in your deployment. If this is the case, change the default values to the previous ones. - -### To 6.0.0 - -Some of the chart values were changed to adapt to the latest Bitnami standards. More specifically: - -- `containerPort` was changed to `containerPorts.http` -- `service.port` was changed to `service.ports.http` - -No issues should be expected when upgrading. - -### To 5.0.0 - -The CRD was updated according to the latest changes in the upstream project. As a consequence, the CRD API version was moved from `apiextensions.k8s.io/v1beta1` to `apiextensions.k8s.io/v1`. If you deployed the Helm Chart using `crd.create=true` you need to manually delete the old CRD before upgrading the release. - -```console -kubectl delete crd dnsendpoints.externaldns.k8s.io -helm upgrade my-release -f my-values.yaml -``` - -### To 4.3.0 - -This version also introduces `bitnami/common`, a [library chart](https://helm.sh/docs/topics/library_charts/#helm) as a dependency. More documentation about this new utility could be found [here](https://github.com/bitnami/charts/tree/main/bitnami/common#bitnami-common-library-chart). Please, make sure that you have updated thechart dependencies before executing any upgrade. - -### To 4.0.0 - -[On November 13, 2020, Helm v2 support was formally finished](https://github.com/helm/charts#status-of-the-project), this major version is the result of the required changes applied to the Helm Chart to be able to incorporate the different features added in Helm v3 and to be consistent with the Helm project itself regarding the Helm v2 EOL. - -#### What changes were introduced in this major version? - -- Previous versions of this Helm Chart use `apiVersion: v1` (installable by both Helm 2 and 3), this Helm Chart was updated to `apiVersion: v2` (installable by Helm 3 only). [Here](https://helm.sh/docs/topics/charts/#the-apiversion-field) you can find more information about the `apiVersion` field. -- The different fields present in the *Chart.yaml* file has been ordered alphabetically in a homogeneous way for all the Bitnami Helm Charts - -#### Considerations when upgrading to this version - -- If you want to upgrade to this version from a previous one installed with Helm v3, you shouldn't face any issues -- If you want to upgrade to this version using Helm v2, this scenario is not supported as this version doesn't support Helm v2 anymore -- If you installed the previous version with Helm v2 and wants to upgrade to this version with Helm v3, please refer to the [official Helm documentation](https://helm.sh/docs/topics/v2_v3_migration/#migration-use-cases) about migrating from Helm v2 to v3 - -#### Useful links - -- -- -- - -### To 3.0.0 - -- The parameters below are renamed: - - `rbac.serviceAccountCreate` -> `serviceAccount.create` - - `rbac.serviceAccountName` -> `serviceAccount.name` - - `rbac.serviceAccountAnnotations` -> `serviceAccount.annotations` -- It is now possible to create serviceAccount, clusterRole and clusterRoleBinding manually and give the serviceAccount to the chart. - -### To 2.0.0 - -Backwards compatibility is not guaranteed unless you modify the labels used on the chart's deployments. -Use the workaround below to upgrade from versions previous to 1.0.0. The following example assumes that the release name is `my-release`: - -```console -kubectl delete deployment my-release-external-dns -helm upgrade my-release oci://REGISTRY_NAME/REPOSITORY_NAME/external-dns -``` - -> Note: You need to substitute the placeholders `REGISTRY_NAME` and `REPOSITORY_NAME` with a reference to your Helm chart registry and repository. For example, in the case of Bitnami, you need to use `REGISTRY_NAME=registry-1.docker.io` and `REPOSITORY_NAME=bitnamicharts`. - -Other mayor changes included in this major version are: - -- Default image changes from `registry.opensource.zalan.do/teapot/external-dns` to `bitnami/external-dns`. -- The parameters below are renamed: - - `aws.secretKey` -> `aws.credentials.secretKey` - - `aws.accessKey` -> `aws.credentials.accessKey` - - `aws.credentialsPath` -> `aws.credentials.mountPath` - - `designate.customCA.directory` -> `designate.customCA.mountPath` -- Support to Prometheus metrics is added. - -## License - -Copyright © 2025 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. \ No newline at end of file diff --git a/external-dns-9.0.3/charts/common/Chart.yaml b/external-dns-9.0.3/charts/common/Chart.yaml deleted file mode 100644 index fb04f761..00000000 --- a/external-dns-9.0.3/charts/common/Chart.yaml +++ /dev/null @@ -1,23 +0,0 @@ -annotations: - category: Infrastructure - licenses: Apache-2.0 -apiVersion: v2 -appVersion: 2.31.4 -description: A Library Helm Chart for grouping common logic between bitnami charts. - This chart is not deployable by itself. -home: https://bitnami.com -icon: https://dyltqmyl993wv.cloudfront.net/downloads/logos/bitnami-mark.png -keywords: -- common -- helper -- template -- function -- bitnami -maintainers: -- name: Broadcom, Inc. All Rights Reserved. - url: https://github.com/bitnami/charts -name: common -sources: -- https://github.com/bitnami/charts/tree/main/bitnami/common -type: library -version: 2.31.4 diff --git a/external-dns-9.0.3/charts/common/README.md b/external-dns-9.0.3/charts/common/README.md deleted file mode 100644 index 71368aa7..00000000 --- a/external-dns-9.0.3/charts/common/README.md +++ /dev/null @@ -1,387 +0,0 @@ -# Bitnami Common Library Chart - -A [Helm Library Chart](https://helm.sh/docs/topics/library_charts/#helm) for grouping common logic between Bitnami charts. - -## TL;DR - -```yaml -dependencies: - - name: common - version: 2.x.x - repository: oci://registry-1.docker.io/bitnamicharts -``` - -```console -helm dependency update -``` - -```yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ include "common.names.fullname" . }} -data: - myvalue: "Hello World" -``` - -Looking to use our applications in production? Try [VMware Tanzu Application Catalog](https://bitnami.com/enterprise), the commercial edition of the Bitnami catalog. - -## ⚠️ Important Notice: Upcoming changes to the Bitnami Catalog - -Beginning August 28th, 2025, Bitnami will evolve its public catalog to offer a curated set of hardened, security-focused images under the new [Bitnami Secure Images initiative](https://news.broadcom.com/app-dev/broadcom-introduces-bitnami-secure-images-for-production-ready-containerized-applications). As part of this transition: - -- Granting community users access for the first time to security-optimized versions of popular container images. -- Bitnami will begin deprecating support for non-hardened, Debian-based software images in its free tier and will gradually remove non-latest tags from the public catalog. As a result, community users will have access to a reduced number of hardened images. These images are published only under the “latest” tag and are intended for development purposes -- Starting August 28th, over two weeks, all existing container images, including older or versioned tags (e.g., 2.50.0, 10.6), will be migrated from the public catalog (docker.io/bitnami) to the “Bitnami Legacy” repository (docker.io/bitnamilegacy), where they will no longer receive updates. -- For production workloads and long-term support, users are encouraged to adopt Bitnami Secure Images, which include hardened containers, smaller attack surfaces, CVE transparency (via VEX/KEV), SBOMs, and enterprise support. - -These changes aim to improve the security posture of all Bitnami users by promoting best practices for software supply chain integrity and up-to-date deployments. For more details, visit the [Bitnami Secure Images announcement](https://github.com/bitnami/containers/issues/83267). - -## Introduction - -This chart provides a common template helpers which can be used to develop new charts using [Helm](https://helm.sh) package manager. - -## Prerequisites - -- Kubernetes 1.23+ -- Helm 3.8.0+ - -## Parameters - -The following table lists the helpers available in the library which are scoped in different sections. - -### Affinities - -| Helper identifier | Description | Expected Input | -| ------------------------------- | ---------------------------------------------------- | ------------------------------------------------------------ | -| `common.affinities.nodes.soft` | Return a soft nodeAffinity definition | `dict "key" "FOO" "values" (list "BAR" "BAZ")` | -| `common.affinities.nodes.hard` | Return a hard nodeAffinity definition | `dict "key" "FOO" "values" (list "BAR" "BAZ")` | -| `common.affinities.nodes` | Return a nodeAffinity definition | `dict "type" "soft" "key" "FOO" "values" (list "BAR" "BAZ")` | -| `common.affinities.topologyKey` | Return a topologyKey definition | `dict "topologyKey" "FOO"` | -| `common.affinities.pods.soft` | Return a soft podAffinity/podAntiAffinity definition | `dict "component" "FOO" "context" $` | -| `common.affinities.pods.hard` | Return a hard podAffinity/podAntiAffinity definition | `dict "component" "FOO" "context" $` | -| `common.affinities.pods` | Return a podAffinity/podAntiAffinity definition | `dict "type" "soft" "key" "FOO" "values" (list "BAR" "BAZ")` | - -### Capabilities - -| Helper identifier | Description | Expected Input | -| --------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | --------------------------------------- | -| `common.capabilities.kubeVersion` | Return the target Kubernetes version (using client default if .Values.kubeVersion is not set). | `.` Chart context | -| `common.capabilities.apiVersions.has` | Return true if the apiVersion is supported | `dict "version" "batch/v1" "context" $` | -| `common.capabilities.job.apiVersion` | Return the appropriate apiVersion for job. | `.` Chart context | -| `common.capabilities.cronjob.apiVersion` | Return the appropriate apiVersion for cronjob. | `.` Chart context | -| `common.capabilities.daemonset.apiVersion` | Return the appropriate apiVersion for daemonset. | `.` Chart context | -| `common.capabilities.deployment.apiVersion` | Return the appropriate apiVersion for deployment. | `.` Chart context | -| `common.capabilities.statefulset.apiVersion` | Return the appropriate apiVersion for statefulset. | `.` Chart context | -| `common.capabilities.ingress.apiVersion` | Return the appropriate apiVersion for ingress. | `.` Chart context | -| `common.capabilities.rbac.apiVersion` | Return the appropriate apiVersion for RBAC resources. | `.` Chart context | -| `common.capabilities.crd.apiVersion` | Return the appropriate apiVersion for CRDs. | `.` Chart context | -| `common.capabilities.policy.apiVersion` | Return the appropriate apiVersion for podsecuritypolicy. | `.` Chart context | -| `common.capabilities.networkPolicy.apiVersion` | Return the appropriate apiVersion for networkpolicy. | `.` Chart context | -| `common.capabilities.apiService.apiVersion` | Return the appropriate apiVersion for APIService. | `.` Chart context | -| `common.capabilities.hpa.apiVersion` | Return the appropriate apiVersion for Horizontal Pod Autoscaler | `.` Chart context | -| `common.capabilities.vpa.apiVersion` | Return the appropriate apiVersion for Vertical Pod Autoscaler. | `.` Chart context | -| `common.capabilities.psp.supported` | Returns true if PodSecurityPolicy is supported | `.` Chart context | -| `common.capabilities.supportsHelmVersion` | Returns true if the used Helm version is 3.3+ | `.` Chart context | -| `common.capabilities.admissionConfiguration.supported` | Returns true if AdmissionConfiguration is supported | `.` Chart context | -| `common.capabilities.admissionConfiguration.apiVersion` | Return the appropriate apiVersion for AdmissionConfiguration. | `.` Chart context | -| `common.capabilities.podSecurityConfiguration.apiVersion` | Return the appropriate apiVersion for PodSecurityConfiguration. | `.` Chart context | - -### Compatibility - -| Helper identifier | Description | Expected Input | -| -------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------- | -| `common.compatibility.isOpenshift` | Return true if the detected platform is Openshift | `.` Chart context | -| `common.compatibility.renderSecurityContext` | Render a compatible securityContext depending on the platform. By default it is maintained as it is. In other platforms like Openshift we remove default user/group values that do not work out of the box with the restricted-v1 SCC | `dict "secContext" .Values.containerSecurityContext "context" $` | - -### Errors - -| Helper identifier | Description | Expected Input | -| --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | -| `common.errors.upgrade.passwords.empty` | It will ensure required passwords are given when we are upgrading a chart. If `validationErrors` is not empty it will throw an error and will stop the upgrade action. | `dict "validationErrors" (list $validationError00 $validationError01) "context" $` | -| `common.errors.insecureImages` | Throw error when original container images are replaced. The error can be bypassed by setting the `global.security.allowInsecureImages` to true. | `dict "images" (list .Values.path.to.the.imageRoot) "context" $` | - -### Images - -| Helper identifier | Description | Expected Input | -| --------------------------------- | -------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ | -| `common.images.image` | Return the proper and full image name | `dict "imageRoot" .Values.path.to.the.image "global" $`, see [ImageRoot](#imageroot) for the structure. | -| `common.images.pullSecrets` | Return the proper Docker Image Registry Secret Names (deprecated: use common.images.renderPullSecrets instead) | `dict "images" (list .Values.path.to.the.image1, .Values.path.to.the.image2) "global" .Values.global` | -| `common.images.renderPullSecrets` | Return the proper Docker Image Registry Secret Names (evaluates values as templates) | `dict "images" (list .Values.path.to.the.image1, .Values.path.to.the.image2) "context" $` | -| `common.images.version` | Return the proper image version | `dict "imageRoot" .Values.path.to.the.image "chart" .Chart` , see [ImageRoot](#imageroot) for the structure. | - -### Ingress - -| Helper identifier | Description | Expected Input | -| ----------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `common.ingress.backend` | Generate a proper Ingress backend entry depending on the API version | `dict "serviceName" "foo" "servicePort" "bar"`, see the [Ingress deprecation notice](https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/) for the syntax differences | -| `common.ingress.certManagerRequest` | Prints "true" if required cert-manager annotations for TLS signed certificates are set in the Ingress annotations | `dict "annotations" .Values.path.to.the.ingress.annotations` | - -### Labels - -| Helper identifier | Description | Expected Input | -| --------------------------- | --------------------------------------------------------------------------- | ----------------- | -| `common.labels.standard` | Return Kubernetes standard labels | `.` Chart context | -| `common.labels.matchLabels` | Labels to use on `deploy.spec.selector.matchLabels` and `svc.spec.selector` | `.` Chart context | - -### Names - -| Helper identifier | Description | Expected Input | -| ---------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | -| `common.names.name` | Expand the name of the chart or use `.Values.nameOverride` | `.` Chart context | -| `common.names.fullname` | Create a default fully qualified app name. | `.` Chart context | -| `common.names.namespace` | Allow the release namespace to be overridden | `.` Chart context | -| `common.names.fullname.namespace` | Create a fully qualified app name adding the installation's namespace | `.` Chart context | -| `common.names.chart` | Chart name plus version | `.` Chart context | -| `common.names.dependency.fullname` | Create a default fully qualified dependency name. | `dict "chartName" "dependency-chart-name" "chartValues" .Values.dependency-chart "context" $` | - -### Resources - -| Helper identifier | Description | Expected Input | -| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------- | -| `common.resources.preset` | Return a resource request/limit object based on a given preset. These presets are for basic testing and not meant to be used in production. | `dict "type" "nano"` | - -### Secrets - -| Helper identifier | Description | Expected Input | -| --------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `common.secrets.name` | Generate the name of the secret. | `dict "existingSecret" .Values.path.to.the.existingSecret "defaultNameSuffix" "mySuffix" "context" $` see [ExistingSecret](#existingsecret) for the structure. | -| `common.secrets.key` | Generate secret key. | `dict "existingSecret" .Values.path.to.the.existingSecret "key" "keyName"` see [ExistingSecret](#existingsecret) for the structure. | -| `common.secrets.passwords.manage` | Generate secret password or retrieve one if already created. | `dict "secret" "secret-name" "key" "keyName" "providedValues" (list "path.to.password1" "path.to.password2") "length" 10 "strong" false "chartName" "chartName" "honorProvidedValues" false "context" $`, length, strong, honorProvidedValues and chartName fields are optional. | -| `common.secrets.exists` | Returns whether a previous generated secret already exists. | `dict "secret" "secret-name" "context" $` | -| `common.secrets.lookup` | Reuses the value from an existing secret, otherwise sets its value to a default value. | `dict "secret" "secret-name" "key" "keyName" "defaultValue" .Values.myValue "context" $` | - -### Storage - -| Helper identifier | Description | Expected Input | -| ---------------------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -| `common.storage.class` | Return the proper Storage Class | `dict "persistence" .Values.path.to.the.persistence "global" $`, see [Persistence](#persistence) for the structure. | - -### TplValues - -| Helper identifier | Description | Expected Input | -| ---------------------------------- | ------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `common.tplvalues.render` | Renders a value that contains template | `dict "value" .Values.path.to.the.Value "context" $`, value is the value should rendered as template, context frequently is the chart context `$` or `.` | -| `common.tplvalues.merge` | Merge a list of values that contains template after rendering them. | `dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $` | -| `common.tplvalues.merge-overwrite` | Merge a list of values that contains template after rendering them. | `dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $` | - -### Utils - -| Helper identifier | Description | Expected Input | -| ------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------- | -| `common.utils.fieldToEnvVar` | Build environment variable name given a field. | `dict "field" "my-password"` | -| `common.utils.secret.getvalue` | Print instructions to get a secret value. | `dict "secret" "secret-name" "field" "secret-value-field" "context" $` | -| `common.utils.getValueFromKey` | Gets a value from `.Values` object given its key path | `dict "key" "path.to.key" "context" $` | -| `common.utils.getKeyFromList` | Returns first `.Values` key with a defined value or first of the list if all non-defined | `dict "keys" (list "path.to.key1" "path.to.key2") "context" $` | -| `common.utils.checksumTemplate` | Checksum a template at "path" containing a *single* resource (ConfigMap,Secret) for use in pod annotations, excluding the metadata (see #18376) | `dict "path" "/configmap.yaml" "context" $` | - -### Validations - -| Helper identifier | Description | Expected Input | -| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `common.validations.values.single.empty` | Validate a value must not be empty. | `dict "valueKey" "path.to.value" "secret" "secret.name" "field" "my-password" "subchart" "subchart" "context" $` secret, field and subchart are optional. In case they are given, the helper will generate a how to get instruction. See [ValidateValue](#validatevalue) | -| `common.validations.values.multiple.empty` | Validate a multiple values must not be empty. It returns a shared error for all the values. | `dict "required" (list $validateValueConf00 $validateValueConf01) "context" $`. See [ValidateValue](#validatevalue) | -| `common.validations.values.mariadb.passwords` | This helper will ensure required password for MariaDB are not empty. It returns a shared error for all the values. | `dict "secret" "mariadb-secret" "subchart" "true" "context" $` subchart field is optional and could be true or false it depends on where you will use mariadb chart and the helper. | - -### Warnings - -| Helper identifier | Description | Expected Input | -| -------------------------------- | ----------------------------------------------------------------- | ---------------------------------------------------------- | -| `common.warnings.rollingTag` | Warning about using rolling tag. | `ImageRoot` see [ImageRoot](#imageroot) for the structure. | -| `common.warnings.modifiedImages` | Warning about replaced images from the original. | `ImageRoot` see [ImageRoot](#imageroot) for the structure. | -| `common.warnings.resources` | Warning about not setting the resource object in all deployments. | `dict "sections" (list "path1" "path2") context $` | - -## Special input schemas - -### ImageRoot - -```yaml -registry: - type: string - description: Docker registry where the image is located - example: docker.io - -repository: - type: string - description: Repository and image name - example: bitnami/nginx - -tag: - type: string - description: image tag - example: 1.16.1-debian-10-r63 - -pullPolicy: - type: string - description: Specify a imagePullPolicy.' - -pullSecrets: - type: array - items: - type: string - description: Optionally specify an array of imagePullSecrets (evaluated as templates). - -debug: - type: boolean - description: Set to true if you would like to see extra information on logs - example: false - -## An instance would be: -# registry: docker.io -# repository: bitnami/nginx -# tag: 1.16.1-debian-10-r63 -# pullPolicy: IfNotPresent -# debug: false -``` - -### Persistence - -```yaml -enabled: - type: boolean - description: Whether enable persistence. - example: true - -storageClass: - type: string - description: Ghost data Persistent Volume Storage Class, If set to "-", storageClassName: "" which disables dynamic provisioning. - example: "-" - -accessMode: - type: string - description: Access mode for the Persistent Volume Storage. - example: ReadWriteOnce - -size: - type: string - description: Size the Persistent Volume Storage. - example: 8Gi - -path: - type: string - description: Path to be persisted. - example: /bitnami - -## An instance would be: -# enabled: true -# storageClass: "-" -# accessMode: ReadWriteOnce -# size: 8Gi -# path: /bitnami -``` - -### ExistingSecret - -```yaml -name: - type: string - description: Name of the existing secret. - example: mySecret -keyMapping: - description: Mapping between the expected key name and the name of the key in the existing secret. - type: object - -## An instance would be: -# name: mySecret -# keyMapping: -# password: myPasswordKey -``` - -#### Example of use - -When we store sensitive data for a deployment in a secret, some times we want to give to users the possibility of using theirs existing secrets. - -```yaml -# templates/secret.yaml ---- -apiVersion: v1 -kind: Secret -metadata: - name: {{ include "common.names.fullname" . }} - labels: - app: {{ include "common.names.fullname" . }} -type: Opaque -data: - password: {{ .Values.password | b64enc | quote }} - -# templates/dpl.yaml ---- -... - env: - - name: PASSWORD - valueFrom: - secretKeyRef: - name: {{ include "common.secrets.name" (dict "existingSecret" .Values.existingSecret "context" $) }} - key: {{ include "common.secrets.key" (dict "existingSecret" .Values.existingSecret "key" "password") }} -... - -# values.yaml ---- -name: mySecret -keyMapping: - password: myPasswordKey -``` - -### ValidateValue - -#### NOTES.txt - -```console -{{- $validateValueConf00 := (dict "valueKey" "path.to.value00" "secret" "secretName" "field" "password-00") -}} -{{- $validateValueConf01 := (dict "valueKey" "path.to.value01" "secret" "secretName" "field" "password-01") -}} - -{{ include "common.validations.values.multiple.empty" (dict "required" (list $validateValueConf00 $validateValueConf01) "context" $) }} -``` - -If we force those values to be empty we will see some alerts - -```console -helm install test mychart --set path.to.value00="",path.to.value01="" - 'path.to.value00' must not be empty, please add '--set path.to.value00=$PASSWORD_00' to the command. To get the current value: - - export PASSWORD_00=$(kubectl get secret --namespace default secretName -o jsonpath="{.data.password-00}" | base64 -d) - - 'path.to.value01' must not be empty, please add '--set path.to.value01=$PASSWORD_01' to the command. To get the current value: - - export PASSWORD_01=$(kubectl get secret --namespace default secretName -o jsonpath="{.data.password-01}" | base64 -d) -``` - -## Upgrading - -### To 1.0.0 - -[On November 13, 2020, Helm v2 support was formally finished](https://github.com/helm/charts#status-of-the-project), this major version is the result of the required changes applied to the Helm Chart to be able to incorporate the different features added in Helm v3 and to be consistent with the Helm project itself regarding the Helm v2 EOL. - -#### What changes were introduced in this major version? - -- Previous versions of this Helm Chart use `apiVersion: v1` (installable by both Helm 2 and 3), this Helm Chart was updated to `apiVersion: v2` (installable by Helm 3 only). [Here](https://helm.sh/docs/topics/charts/#the-apiversion-field) you can find more information about the `apiVersion` field. -- Use `type: library`. [Here](https://v3.helm.sh/docs/faq/#library-chart-support) you can find more information. -- The different fields present in the *Chart.yaml* file has been ordered alphabetically in a homogeneous way for all the Bitnami Helm Charts - -#### Considerations when upgrading to this version - -- If you want to upgrade to this version from a previous one installed with Helm v3, you shouldn't face any issues -- If you want to upgrade to this version using Helm v2, this scenario is not supported as this version doesn't support Helm v2 anymore -- If you installed the previous version with Helm v2 and wants to upgrade to this version with Helm v3, please refer to the [official Helm documentation](https://helm.sh/docs/topics/v2_v3_migration/#migration-use-cases) about migrating from Helm v2 to v3 - -#### Useful links - -- -- -- - -## License - -Copyright © 2025 Broadcom. The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. diff --git a/external-dns-9.0.3/charts/common/templates/_affinities.tpl b/external-dns-9.0.3/charts/common/templates/_affinities.tpl deleted file mode 100644 index c6ccc62e..00000000 --- a/external-dns-9.0.3/charts/common/templates/_affinities.tpl +++ /dev/null @@ -1,169 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return a soft nodeAffinity definition -{{ include "common.affinities.nodes.soft" (dict "key" "FOO" "values" (list "BAR" "BAZ")) -}} -*/}} -{{- define "common.affinities.nodes.soft" -}} -preferredDuringSchedulingIgnoredDuringExecution: - - preference: - matchExpressions: - - key: {{ .key }} - operator: In - values: - {{- range .values }} - - {{ . | quote }} - {{- end }} - weight: 1 -{{- end -}} - -{{/* -Return a hard nodeAffinity definition -{{ include "common.affinities.nodes.hard" (dict "key" "FOO" "values" (list "BAR" "BAZ")) -}} -*/}} -{{- define "common.affinities.nodes.hard" -}} -requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: {{ .key }} - operator: In - values: - {{- range .values }} - - {{ . | quote }} - {{- end }} -{{- end -}} - -{{/* -Return a nodeAffinity definition -{{ include "common.affinities.nodes" (dict "type" "soft" "key" "FOO" "values" (list "BAR" "BAZ")) -}} -*/}} -{{- define "common.affinities.nodes" -}} - {{- if eq .type "soft" }} - {{- include "common.affinities.nodes.soft" . -}} - {{- else if eq .type "hard" }} - {{- include "common.affinities.nodes.hard" . -}} - {{- end -}} -{{- end -}} - -{{/* -Return a topologyKey definition -{{ include "common.affinities.topologyKey" (dict "topologyKey" "BAR") -}} -*/}} -{{- define "common.affinities.topologyKey" -}} -{{ .topologyKey | default "kubernetes.io/hostname" -}} -{{- end -}} - -{{/* -Return a soft podAffinity/podAntiAffinity definition -{{ include "common.affinities.pods.soft" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "extraNamespaces" (list "namespace1" "namespace2") "context" $) -}} -*/}} -{{- define "common.affinities.pods.soft" -}} -{{- $component := default "" .component -}} -{{- $customLabels := default (dict) .customLabels -}} -{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} -{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}} -{{- $extraNamespaces := default (list) .extraNamespaces -}} -preferredDuringSchedulingIgnoredDuringExecution: - - podAffinityTerm: - labelSelector: - matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 10 }} - {{- if not (empty $component) }} - {{ printf "app.kubernetes.io/component: %s" $component }} - {{- end }} - {{- range $key, $value := $extraMatchLabels }} - {{ $key }}: {{ $value | quote }} - {{- end }} - {{- if $extraNamespaces }} - namespaces: - - {{ .context.Release.Namespace }} - {{- with $extraNamespaces }} - {{- include "common.tplvalues.render" (dict "value" . "context" $) | nindent 8 }} - {{- end }} - {{- end }} - topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} - weight: 1 - {{- range $extraPodAffinityTerms }} - - podAffinityTerm: - labelSelector: - matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 10 }} - {{- if not (empty $component) }} - {{ printf "app.kubernetes.io/component: %s" $component }} - {{- end }} - {{- range $key, $value := .extraMatchLabels }} - {{ $key }}: {{ $value | quote }} - {{- end }} - {{- if .namespaces }} - namespaces: - - {{ $.context.Release.Namespace }} - {{- with .namespaces }} - {{- include "common.tplvalues.render" (dict "value" . "context" $) | nindent 8 }} - {{- end }} - {{- end }} - topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} - weight: {{ .weight | default 1 -}} - {{- end -}} -{{- end -}} - -{{/* -Return a hard podAffinity/podAntiAffinity definition -{{ include "common.affinities.pods.hard" (dict "component" "FOO" "customLabels" .Values.podLabels "extraMatchLabels" .Values.extraMatchLabels "topologyKey" "BAR" "extraPodAffinityTerms" .Values.extraPodAffinityTerms "extraNamespaces" (list "namespace1" "namespace2") "context" $) -}} -*/}} -{{- define "common.affinities.pods.hard" -}} -{{- $component := default "" .component -}} -{{- $customLabels := default (dict) .customLabels -}} -{{- $extraMatchLabels := default (dict) .extraMatchLabels -}} -{{- $extraPodAffinityTerms := default (list) .extraPodAffinityTerms -}} -{{- $extraNamespaces := default (list) .extraNamespaces -}} -requiredDuringSchedulingIgnoredDuringExecution: - - labelSelector: - matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" .context )) | nindent 8 }} - {{- if not (empty $component) }} - {{ printf "app.kubernetes.io/component: %s" $component }} - {{- end }} - {{- range $key, $value := $extraMatchLabels }} - {{ $key }}: {{ $value | quote }} - {{- end }} - {{- if $extraNamespaces }} - namespaces: - - {{ .context.Release.Namespace }} - {{- with $extraNamespaces }} - {{- include "common.tplvalues.render" (dict "value" . "context" $) | nindent 6 }} - {{- end }} - {{- end }} - topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} - {{- range $extraPodAffinityTerms }} - - labelSelector: - matchLabels: {{- (include "common.labels.matchLabels" ( dict "customLabels" $customLabels "context" $.context )) | nindent 8 }} - {{- if not (empty $component) }} - {{ printf "app.kubernetes.io/component: %s" $component }} - {{- end }} - {{- range $key, $value := .extraMatchLabels }} - {{ $key }}: {{ $value | quote }} - {{- end }} - {{- if .namespaces }} - namespaces: - - {{ $.context.Release.Namespace }} - {{- with .namespaces }} - {{- include "common.tplvalues.render" (dict "value" . "context" $) | nindent 6 }} - {{- end }} - {{- end }} - topologyKey: {{ include "common.affinities.topologyKey" (dict "topologyKey" .topologyKey) }} - {{- end -}} -{{- end -}} - -{{/* -Return a podAffinity/podAntiAffinity definition -{{ include "common.affinities.pods" (dict "type" "soft" "key" "FOO" "values" (list "BAR" "BAZ")) -}} -*/}} -{{- define "common.affinities.pods" -}} - {{- if eq .type "soft" }} - {{- include "common.affinities.pods.soft" . -}} - {{- else if eq .type "hard" }} - {{- include "common.affinities.pods.hard" . -}} - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_capabilities.tpl b/external-dns-9.0.3/charts/common/templates/_capabilities.tpl deleted file mode 100644 index 58f58c1c..00000000 --- a/external-dns-9.0.3/charts/common/templates/_capabilities.tpl +++ /dev/null @@ -1,178 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return the target Kubernetes version -*/}} -{{- define "common.capabilities.kubeVersion" -}} -{{- default (default .Capabilities.KubeVersion.Version .Values.kubeVersion) ((.Values.global).kubeVersion) -}} -{{- end -}} - -{{/* -Return true if the apiVersion is supported -Usage: -{{ include "common.capabilities.apiVersions.has" (dict "version" "batch/v1" "context" $) }} -*/}} -{{- define "common.capabilities.apiVersions.has" -}} -{{- $providedAPIVersions := default .context.Values.apiVersions ((.context.Values.global).apiVersions) -}} -{{- if and (empty $providedAPIVersions) (.context.Capabilities.APIVersions.Has .version) -}} - {{- true -}} -{{- else if has .version $providedAPIVersions -}} - {{- true -}} -{{- end -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for poddisruptionbudget. -*/}} -{{- define "common.capabilities.policy.apiVersion" -}} -{{- print "policy/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for networkpolicy. -*/}} -{{- define "common.capabilities.networkPolicy.apiVersion" -}} -{{- print "networking.k8s.io/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for job. -*/}} -{{- define "common.capabilities.job.apiVersion" -}} -{{- print "batch/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for cronjob. -*/}} -{{- define "common.capabilities.cronjob.apiVersion" -}} -{{- print "batch/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for daemonset. -*/}} -{{- define "common.capabilities.daemonset.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for deployment. -*/}} -{{- define "common.capabilities.deployment.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for statefulset. -*/}} -{{- define "common.capabilities.statefulset.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for ingress. -*/}} -{{- define "common.capabilities.ingress.apiVersion" -}} -{{- print "networking.k8s.io/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for RBAC resources. -*/}} -{{- define "common.capabilities.rbac.apiVersion" -}} -{{- print "rbac.authorization.k8s.io/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for CRDs. -*/}} -{{- define "common.capabilities.crd.apiVersion" -}} -{{- print "apiextensions.k8s.io/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for APIService. -*/}} -{{- define "common.capabilities.apiService.apiVersion" -}} -{{- print "apiregistration.k8s.io/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for Horizontal Pod Autoscaler. -*/}} -{{- define "common.capabilities.hpa.apiVersion" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" .context -}} -{{- print "autoscaling/v2" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for Vertical Pod Autoscaler. -*/}} -{{- define "common.capabilities.vpa.apiVersion" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" . -}} -{{- if and (not (empty $kubeVersion)) (semverCompare "<1.25-0" $kubeVersion) -}} -{{- print "autoscaling/v1beta2" -}} -{{- else -}} -{{- print "autoscaling/v1" -}} -{{- end -}} -{{- end -}} - -{{/* -Returns true if PodSecurityPolicy is supported -*/}} -{{- define "common.capabilities.psp.supported" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" . -}} -{{- if or (empty $kubeVersion) (semverCompare "<1.25-0" $kubeVersion) -}} - {{- true -}} -{{- end -}} -{{- end -}} - -{{/* -Returns true if AdmissionConfiguration is supported -*/}} -{{- define "common.capabilities.admissionConfiguration.supported" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" . -}} - {{- true -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for AdmissionConfiguration. -*/}} -{{- define "common.capabilities.admissionConfiguration.apiVersion" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" . -}} -{{- if and (not (empty $kubeVersion)) (semverCompare "<1.25-0" $kubeVersion) -}} -{{- print "apiserver.config.k8s.io/v1beta1" -}} -{{- else -}} -{{- print "apiserver.config.k8s.io/v1" -}} -{{- end -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for PodSecurityConfiguration. -*/}} -{{- define "common.capabilities.podSecurityConfiguration.apiVersion" -}} -{{- $kubeVersion := include "common.capabilities.kubeVersion" . -}} -{{- if and (not (empty $kubeVersion)) (semverCompare "<1.25-0" $kubeVersion) -}} -{{- print "pod-security.admission.config.k8s.io/v1beta1" -}} -{{- else -}} -{{- print "pod-security.admission.config.k8s.io/v1" -}} -{{- end -}} -{{- end -}} - -{{/* -Returns true if the used Helm version is 3.3+. -A way to check the used Helm version was not introduced until version 3.3.0 with .Capabilities.HelmVersion, which contains an additional "{}}" structure. -This check is introduced as a regexMatch instead of {{ if .Capabilities.HelmVersion }} because checking for the key HelmVersion in <3.3 results in a "interface not found" error. -**To be removed when the catalog's minimun Helm version is 3.3** -*/}} -{{- define "common.capabilities.supportsHelmVersion" -}} -{{- if regexMatch "{(v[0-9])*[^}]*}}$" (.Capabilities | toString ) }} - {{- true -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_compatibility.tpl b/external-dns-9.0.3/charts/common/templates/_compatibility.tpl deleted file mode 100644 index 19c26dbd..00000000 --- a/external-dns-9.0.3/charts/common/templates/_compatibility.tpl +++ /dev/null @@ -1,46 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return true if the detected platform is Openshift -Usage: -{{- include "common.compatibility.isOpenshift" . -}} -*/}} -{{- define "common.compatibility.isOpenshift" -}} -{{- if .Capabilities.APIVersions.Has "security.openshift.io/v1" -}} -{{- true -}} -{{- end -}} -{{- end -}} - -{{/* -Render a compatible securityContext depending on the platform. By default it is maintained as it is. In other platforms like Openshift we remove default user/group values that do not work out of the box with the restricted-v1 SCC -Usage: -{{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.containerSecurityContext "context" $) -}} -*/}} -{{- define "common.compatibility.renderSecurityContext" -}} -{{- $adaptedContext := .secContext -}} - -{{- if (((.context.Values.global).compatibility).openshift) -}} - {{- if or (eq .context.Values.global.compatibility.openshift.adaptSecurityContext "force") (and (eq .context.Values.global.compatibility.openshift.adaptSecurityContext "auto") (include "common.compatibility.isOpenshift" .context)) -}} - {{/* Remove incompatible user/group values that do not work in Openshift out of the box */}} - {{- $adaptedContext = omit $adaptedContext "fsGroup" "runAsUser" "runAsGroup" -}} - {{- if not .secContext.seLinuxOptions -}} - {{/* If it is an empty object, we remove it from the resulting context because it causes validation issues */}} - {{- $adaptedContext = omit $adaptedContext "seLinuxOptions" -}} - {{- end -}} - {{- end -}} -{{- end -}} -{{/* Remove empty seLinuxOptions object if global.compatibility.omitEmptySeLinuxOptions is set to true */}} -{{- if and (((.context.Values.global).compatibility).omitEmptySeLinuxOptions) (not .secContext.seLinuxOptions) -}} - {{- $adaptedContext = omit $adaptedContext "seLinuxOptions" -}} -{{- end -}} -{{/* Remove fields that are disregarded when running the container in privileged mode */}} -{{- if $adaptedContext.privileged -}} - {{- $adaptedContext = omit $adaptedContext "capabilities" -}} -{{- end -}} -{{- omit $adaptedContext "enabled" | toYaml -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_errors.tpl b/external-dns-9.0.3/charts/common/templates/_errors.tpl deleted file mode 100644 index fb704c99..00000000 --- a/external-dns-9.0.3/charts/common/templates/_errors.tpl +++ /dev/null @@ -1,92 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Throw error when upgrading using empty passwords values that must not be empty. - -Usage: -{{- $validationError00 := include "common.validations.values.single.empty" (dict "valueKey" "path.to.password00" "secret" "secretName" "field" "password-00") -}} -{{- $validationError01 := include "common.validations.values.single.empty" (dict "valueKey" "path.to.password01" "secret" "secretName" "field" "password-01") -}} -{{ include "common.errors.upgrade.passwords.empty" (dict "validationErrors" (list $validationError00 $validationError01) "context" $) }} - -Required password params: - - validationErrors - String - Required. List of validation strings to be return, if it is empty it won't throw error. - - context - Context - Required. Parent context. -*/}} -{{- define "common.errors.upgrade.passwords.empty" -}} - {{- $validationErrors := join "" .validationErrors -}} - {{- if and $validationErrors .context.Release.IsUpgrade -}} - {{- $errorString := "\nPASSWORDS ERROR: You must provide your current passwords when upgrading the release." -}} - {{- $errorString = print $errorString "\n Note that even after reinstallation, old credentials may be needed as they may be kept in persistent volume claims." -}} - {{- $errorString = print $errorString "\n Further information can be obtained at https://docs.bitnami.com/general/how-to/troubleshoot-helm-chart-issues/#credential-errors-while-upgrading-chart-releases" -}} - {{- $errorString = print $errorString "\n%s" -}} - {{- printf $errorString $validationErrors | fail -}} - {{- end -}} -{{- end -}} - -{{/* -Throw error when original container images are replaced. -The error can be bypassed by setting the "global.security.allowInsecureImages" to true. In this case, -a warning message will be shown instead. - -Usage: -{{ include "common.errors.insecureImages" (dict "images" (list .Values.path.to.the.imageRoot) "context" $) }} -*/}} -{{- define "common.errors.insecureImages" -}} -{{- $relocatedImages := list -}} -{{- $replacedImages := list -}} -{{- $bitnamiLegacyImages := list -}} -{{- $retaggedImages := list -}} -{{- $globalRegistry := ((.context.Values.global).imageRegistry) -}} -{{- $originalImages := .context.Chart.Annotations.images -}} -{{- range .images -}} - {{- $registryName := default .registry $globalRegistry -}} - {{- $fullImageNameNoTag := printf "%s/%s" $registryName .repository -}} - {{- $fullImageName := printf "%s:%s" $fullImageNameNoTag .tag -}} - {{- if not (contains $fullImageNameNoTag $originalImages) -}} - {{- if not (contains $registryName $originalImages) -}} - {{- $relocatedImages = append $relocatedImages $fullImageName -}} - {{- else if not (contains .repository $originalImages) -}} - {{- $replacedImages = append $replacedImages $fullImageName -}} - {{- if contains "docker.io/bitnamilegacy/" $fullImageNameNoTag -}} - {{- $bitnamiLegacyImages = append $bitnamiLegacyImages $fullImageName -}} - {{- end -}} - {{- end -}} - {{- end -}} - {{- if not (contains (printf "%s:%s" .repository .tag) $originalImages) -}} - {{- $retaggedImages = append $retaggedImages $fullImageName -}} - {{- end -}} -{{- end -}} - -{{- if and (or (gt (len $relocatedImages) 0) (gt (len $replacedImages) 0)) (((.context.Values.global).security).allowInsecureImages) -}} - {{- print "\n\n⚠ SECURITY WARNING: Verifying original container images was skipped. Please note this Helm chart was designed, tested, and validated on multiple platforms using a specific set of Bitnami and Bitnami Secure Images containers. Substituting other containers is likely to cause degraded security and performance, broken chart features, and missing environment variables.\n" -}} -{{- else if (or (gt (len $relocatedImages) 0) (gt (len $replacedImages) 0)) -}} - {{- $errorString := "Original containers have been substituted for unrecognized ones. Deploying this chart with non-standard containers is likely to cause degraded security and performance, broken chart features, and missing environment variables." -}} - {{- $errorString = print $errorString "\n\nUnrecognized images:" -}} - {{- range (concat $relocatedImages $replacedImages) -}} - {{- $errorString = print $errorString "\n - " . -}} - {{- end -}} - {{- if and (eq (len $relocatedImages) 0) (eq (len $replacedImages) (len $bitnamiLegacyImages)) -}} - {{- $errorString = print "\n\n⚠ WARNING: " $errorString -}} - {{- print $errorString -}} - {{- else if or (contains "docker.io/bitnami/" $originalImages) (contains "docker.io/bitnamiprem/" $originalImages) (contains "docker.io/bitnamisecure/" $originalImages) -}} - {{- $errorString = print "\n\n⚠ ERROR: " $errorString -}} - {{- $errorString = print $errorString "\n\nIf you are sure you want to proceed with non-standard containers, you can skip container image verification by setting the global parameter 'global.security.allowInsecureImages' to true." -}} - {{- $errorString = print $errorString "\nFurther information can be obtained at https://github.com/bitnami/charts/issues/30850" -}} - {{- print $errorString | fail -}} - {{- else if gt (len $replacedImages) 0 -}} - {{- $errorString = print "\n\n⚠ WARNING: " $errorString -}} - {{- print $errorString -}} - {{- end -}} -{{- else if gt (len $retaggedImages) 0 -}} - {{- $warnString := "\n\n⚠ WARNING: Original containers have been retagged. Please note this Helm chart was tested, and validated on multiple platforms using a specific set of Bitnami and Bitnami Secure Images containers. Substituting original image tags could cause unexpected behavior." -}} - {{- $warnString = print $warnString "\n\nRetagged images:" -}} - {{- range $retaggedImages -}} - {{- $warnString = print $warnString "\n - " . -}} - {{- end -}} - {{- print $warnString -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_images.tpl b/external-dns-9.0.3/charts/common/templates/_images.tpl deleted file mode 100644 index 76bb7ce4..00000000 --- a/external-dns-9.0.3/charts/common/templates/_images.tpl +++ /dev/null @@ -1,115 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Return the proper image name. -If image tag and digest are not defined, termination fallbacks to chart appVersion. -{{ include "common.images.image" ( dict "imageRoot" .Values.path.to.the.image "global" .Values.global "chart" .Chart ) }} -*/}} -{{- define "common.images.image" -}} -{{- $registryName := default .imageRoot.registry ((.global).imageRegistry) -}} -{{- $repositoryName := .imageRoot.repository -}} -{{- $separator := ":" -}} -{{- $termination := .imageRoot.tag | toString -}} - -{{- if not .imageRoot.tag }} - {{- if .chart }} - {{- $termination = .chart.AppVersion | toString -}} - {{- end -}} -{{- end -}} -{{- if .imageRoot.digest }} - {{- $separator = "@" -}} - {{- $termination = .imageRoot.digest | toString -}} -{{- end -}} -{{- if $registryName }} - {{- printf "%s/%s%s%s" $registryName $repositoryName $separator $termination -}} -{{- else -}} - {{- printf "%s%s%s" $repositoryName $separator $termination -}} -{{- end -}} -{{- end -}} - -{{/* -Return the proper Docker Image Registry Secret Names (deprecated: use common.images.renderPullSecrets instead) -{{ include "common.images.pullSecrets" ( dict "images" (list .Values.path.to.the.image1, .Values.path.to.the.image2) "global" .Values.global) }} -*/}} -{{- define "common.images.pullSecrets" -}} - {{- $pullSecrets := list }} - - {{- range ((.global).imagePullSecrets) -}} - {{- if kindIs "map" . -}} - {{- $pullSecrets = append $pullSecrets .name -}} - {{- else -}} - {{- $pullSecrets = append $pullSecrets . -}} - {{- end }} - {{- end -}} - - {{- range .images -}} - {{- range .pullSecrets -}} - {{- if kindIs "map" . -}} - {{- $pullSecrets = append $pullSecrets .name -}} - {{- else -}} - {{- $pullSecrets = append $pullSecrets . -}} - {{- end -}} - {{- end -}} - {{- end -}} - - {{- if (not (empty $pullSecrets)) -}} -imagePullSecrets: - {{- range $pullSecrets | uniq }} - - name: {{ . }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* -Return the proper Docker Image Registry Secret Names evaluating values as templates -{{ include "common.images.renderPullSecrets" ( dict "images" (list .Values.path.to.the.image1, .Values.path.to.the.image2) "context" $) }} -*/}} -{{- define "common.images.renderPullSecrets" -}} - {{- $pullSecrets := list }} - {{- $context := .context }} - - {{- range (($context.Values.global).imagePullSecrets) -}} - {{- if kindIs "map" . -}} - {{- $pullSecrets = append $pullSecrets (include "common.tplvalues.render" (dict "value" .name "context" $context)) -}} - {{- else -}} - {{- $pullSecrets = append $pullSecrets (include "common.tplvalues.render" (dict "value" . "context" $context)) -}} - {{- end -}} - {{- end -}} - - {{- range .images -}} - {{- range .pullSecrets -}} - {{- if kindIs "map" . -}} - {{- $pullSecrets = append $pullSecrets (include "common.tplvalues.render" (dict "value" .name "context" $context)) -}} - {{- else -}} - {{- $pullSecrets = append $pullSecrets (include "common.tplvalues.render" (dict "value" . "context" $context)) -}} - {{- end -}} - {{- end -}} - {{- end -}} - - {{- if (not (empty $pullSecrets)) -}} -imagePullSecrets: - {{- range $pullSecrets | uniq }} - - name: {{ . }} - {{- end }} - {{- end }} -{{- end -}} - -{{/* -Return the proper image version (ingores image revision/prerelease info & fallbacks to chart appVersion) -{{ include "common.images.version" ( dict "imageRoot" .Values.path.to.the.image "chart" .Chart ) }} -*/}} -{{- define "common.images.version" -}} -{{- $imageTag := .imageRoot.tag | toString -}} -{{/* regexp from https://github.com/Masterminds/semver/blob/23f51de38a0866c5ef0bfc42b3f735c73107b700/version.go#L41-L44 */}} -{{- if regexMatch `^([0-9]+)(\.[0-9]+)?(\.[0-9]+)?(-([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?(\+([0-9A-Za-z\-]+(\.[0-9A-Za-z\-]+)*))?$` $imageTag -}} - {{- $version := semver $imageTag -}} - {{- printf "%d.%d.%d" $version.Major $version.Minor $version.Patch -}} -{{- else -}} - {{- print .chart.AppVersion -}} -{{- end -}} -{{- end -}} - diff --git a/external-dns-9.0.3/charts/common/templates/_ingress.tpl b/external-dns-9.0.3/charts/common/templates/_ingress.tpl deleted file mode 100644 index 2d0dbf1e..00000000 --- a/external-dns-9.0.3/charts/common/templates/_ingress.tpl +++ /dev/null @@ -1,41 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Generate backend entry that is compatible with all Kubernetes API versions. - -Usage: -{{ include "common.ingress.backend" (dict "serviceName" "backendName" "servicePort" "backendPort" "context" $) }} - -Params: - - serviceName - String. Name of an existing service backend - - servicePort - String/Int. Port name (or number) of the service. It will be translated to different yaml depending if it is a string or an integer. - - context - Dict - Required. The context for the template evaluation. -*/}} -{{- define "common.ingress.backend" -}} -service: - name: {{ .serviceName }} - port: - {{- if typeIs "string" .servicePort }} - name: {{ .servicePort }} - {{- else if or (typeIs "int" .servicePort) (typeIs "float64" .servicePort) }} - number: {{ .servicePort | int }} - {{- end }} -{{- end -}} - -{{/* -Return true if cert-manager required annotations for TLS signed -certificates are set in the Ingress annotations -Ref: https://cert-manager.io/docs/usage/ingress/#supported-annotations -Usage: -{{ include "common.ingress.certManagerRequest" ( dict "annotations" .Values.path.to.the.ingress.annotations ) }} -*/}} -{{- define "common.ingress.certManagerRequest" -}} -{{ if or (hasKey .annotations "cert-manager.io/cluster-issuer") (hasKey .annotations "cert-manager.io/issuer") (hasKey .annotations "kubernetes.io/tls-acme") }} - {{- true -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_labels.tpl b/external-dns-9.0.3/charts/common/templates/_labels.tpl deleted file mode 100644 index 0a0cc548..00000000 --- a/external-dns-9.0.3/charts/common/templates/_labels.tpl +++ /dev/null @@ -1,46 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Kubernetes standard labels -{{ include "common.labels.standard" (dict "customLabels" .Values.commonLabels "context" $) -}} -*/}} -{{- define "common.labels.standard" -}} -{{- if and (hasKey . "customLabels") (hasKey . "context") -}} -{{- $default := dict "app.kubernetes.io/name" (include "common.names.name" .context) "helm.sh/chart" (include "common.names.chart" .context) "app.kubernetes.io/instance" .context.Release.Name "app.kubernetes.io/managed-by" .context.Release.Service -}} -{{- with .context.Chart.AppVersion -}} -{{- $_ := set $default "app.kubernetes.io/version" . -}} -{{- end -}} -{{ template "common.tplvalues.merge" (dict "values" (list .customLabels $default) "context" .context) }} -{{- else -}} -app.kubernetes.io/name: {{ include "common.names.name" . }} -helm.sh/chart: {{ include "common.names.chart" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- with .Chart.AppVersion }} -app.kubernetes.io/version: {{ . | quote }} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Labels used on immutable fields such as deploy.spec.selector.matchLabels or svc.spec.selector -{{ include "common.labels.matchLabels" (dict "customLabels" .Values.podLabels "context" $) -}} - -We don't want to loop over custom labels appending them to the selector -since it's very likely that it will break deployments, services, etc. -However, it's important to overwrite the standard labels if the user -overwrote them on metadata.labels fields. -*/}} -{{- define "common.labels.matchLabels" -}} -{{- if and (hasKey . "customLabels") (hasKey . "context") -}} -{{ merge (pick (include "common.tplvalues.render" (dict "value" .customLabels "context" .context) | fromYaml) "app.kubernetes.io/name" "app.kubernetes.io/instance") (dict "app.kubernetes.io/name" (include "common.names.name" .context) "app.kubernetes.io/instance" .context.Release.Name ) | toYaml }} -{{- else -}} -app.kubernetes.io/name: {{ include "common.names.name" . }} -app.kubernetes.io/instance: {{ .Release.Name }} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_names.tpl b/external-dns-9.0.3/charts/common/templates/_names.tpl deleted file mode 100644 index d5d0ae43..00000000 --- a/external-dns-9.0.3/charts/common/templates/_names.tpl +++ /dev/null @@ -1,72 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Expand the name of the chart. -*/}} -{{- define "common.names.name" -}} -{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "common.names.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a default fully qualified app name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -*/}} -{{- define "common.names.fullname" -}} -{{- if .Values.fullnameOverride -}} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .Chart.Name .Values.nameOverride -}} -{{- $releaseName := regexReplaceAll "(-?[^a-z\\d\\-])+-?" (lower .Release.Name) "-" -}} -{{- if contains $name $releaseName -}} -{{- $releaseName | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" $releaseName $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Create a default fully qualified dependency name. -We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). -If release name contains chart name it will be used as a full name. -Usage: -{{ include "common.names.dependency.fullname" (dict "chartName" "dependency-chart-name" "chartValues" .Values.dependency-chart "context" $) }} -*/}} -{{- define "common.names.dependency.fullname" -}} -{{- if .chartValues.fullnameOverride -}} -{{- .chartValues.fullnameOverride | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $name := default .chartName .chartValues.nameOverride -}} -{{- if contains $name .context.Release.Name -}} -{{- .context.Release.Name | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- printf "%s-%s" .context.Release.Name $name | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Allow the release namespace to be overridden for multi-namespace deployments in combined charts. -*/}} -{{- define "common.names.namespace" -}} -{{- default .Release.Namespace .Values.namespaceOverride | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{/* -Create a fully qualified app name adding the installation's namespace. -*/}} -{{- define "common.names.fullname.namespace" -}} -{{- printf "%s-%s" (include "common.names.fullname" .) (include "common.names.namespace" .) | trunc 63 | trimSuffix "-" -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_resources.tpl b/external-dns-9.0.3/charts/common/templates/_resources.tpl deleted file mode 100644 index d8a43e1c..00000000 --- a/external-dns-9.0.3/charts/common/templates/_resources.tpl +++ /dev/null @@ -1,50 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return a resource request/limit object based on a given preset. -These presets are for basic testing and not meant to be used in production -{{ include "common.resources.preset" (dict "type" "nano") -}} -*/}} -{{- define "common.resources.preset" -}} -{{/* The limits are the requests increased by 50% (except ephemeral-storage and xlarge/2xlarge sizes)*/}} -{{- $presets := dict - "nano" (dict - "requests" (dict "cpu" "100m" "memory" "128Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "150m" "memory" "192Mi" "ephemeral-storage" "2Gi") - ) - "micro" (dict - "requests" (dict "cpu" "250m" "memory" "256Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "375m" "memory" "384Mi" "ephemeral-storage" "2Gi") - ) - "small" (dict - "requests" (dict "cpu" "500m" "memory" "512Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "750m" "memory" "768Mi" "ephemeral-storage" "2Gi") - ) - "medium" (dict - "requests" (dict "cpu" "500m" "memory" "1024Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "750m" "memory" "1536Mi" "ephemeral-storage" "2Gi") - ) - "large" (dict - "requests" (dict "cpu" "1.0" "memory" "2048Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "1.5" "memory" "3072Mi" "ephemeral-storage" "2Gi") - ) - "xlarge" (dict - "requests" (dict "cpu" "1.0" "memory" "3072Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "3.0" "memory" "6144Mi" "ephemeral-storage" "2Gi") - ) - "2xlarge" (dict - "requests" (dict "cpu" "1.0" "memory" "3072Mi" "ephemeral-storage" "50Mi") - "limits" (dict "cpu" "6.0" "memory" "12288Mi" "ephemeral-storage" "2Gi") - ) - }} -{{- if hasKey $presets .type -}} -{{- index $presets .type | toYaml -}} -{{- else -}} -{{- printf "ERROR: Preset key '%s' invalid. Allowed values are %s" .type (join "," (keys $presets)) | fail -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_secrets.tpl b/external-dns-9.0.3/charts/common/templates/_secrets.tpl deleted file mode 100644 index 7868c00a..00000000 --- a/external-dns-9.0.3/charts/common/templates/_secrets.tpl +++ /dev/null @@ -1,192 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Generate secret name. - -Usage: -{{ include "common.secrets.name" (dict "existingSecret" .Values.path.to.the.existingSecret "defaultNameSuffix" "mySuffix" "context" $) }} - -Params: - - existingSecret - ExistingSecret/String - Optional. The path to the existing secrets in the values.yaml given by the user - to be used instead of the default one. Allows for it to be of type String (just the secret name) for backwards compatibility. - +info: https://github.com/bitnami/charts/tree/main/bitnami/common#existingsecret - - defaultNameSuffix - String - Optional. It is used only if we have several secrets in the same deployment. - - context - Dict - Required. The context for the template evaluation. -*/}} -{{- define "common.secrets.name" -}} -{{- $name := (include "common.names.fullname" .context) -}} - -{{- if .defaultNameSuffix -}} -{{- $name = printf "%s-%s" $name .defaultNameSuffix | trunc 63 | trimSuffix "-" -}} -{{- end -}} - -{{- with .existingSecret -}} -{{- if not (typeIs "string" .) -}} -{{- with .name -}} -{{- $name = . -}} -{{- end -}} -{{- else -}} -{{- $name = . -}} -{{- end -}} -{{- end -}} - -{{- printf "%s" $name -}} -{{- end -}} - -{{/* -Generate secret key. - -Usage: -{{ include "common.secrets.key" (dict "existingSecret" .Values.path.to.the.existingSecret "key" "keyName") }} - -Params: - - existingSecret - ExistingSecret/String - Optional. The path to the existing secrets in the values.yaml given by the user - to be used instead of the default one. Allows for it to be of type String (just the secret name) for backwards compatibility. - +info: https://github.com/bitnami/charts/tree/main/bitnami/common#existingsecret - - key - String - Required. Name of the key in the secret. -*/}} -{{- define "common.secrets.key" -}} -{{- $key := .key -}} - -{{- if .existingSecret -}} - {{- if not (typeIs "string" .existingSecret) -}} - {{- if .existingSecret.keyMapping -}} - {{- $key = index .existingSecret.keyMapping $.key -}} - {{- end -}} - {{- end }} -{{- end -}} - -{{- printf "%s" $key -}} -{{- end -}} - -{{/* -Generate secret password or retrieve one if already created. - -Usage: -{{ include "common.secrets.passwords.manage" (dict "secret" "secret-name" "key" "keyName" "providedValues" (list "path.to.password1" "path.to.password2") "length" 10 "strong" false "chartName" "chartName" "honorProvidedValues" false "context" $) }} - -Params: - - secret - String - Required - Name of the 'Secret' resource where the password is stored. - - key - String - Required - Name of the key in the secret. - - providedValues - List - Required - The path to the validating value in the values.yaml, e.g: "mysql.password". Will pick first parameter with a defined value. - - length - int - Optional - Length of the generated random password. - - strong - Boolean - Optional - Whether to add symbols to the generated random password. - - chartName - String - Optional - Name of the chart used when said chart is deployed as a subchart. - - context - Context - Required - Parent context. - - failOnNew - Boolean - Optional - Default to true. If set to false, skip errors adding new keys to existing secrets. - - skipB64enc - Boolean - Optional - Default to false. If set to true, no the secret will not be base64 encrypted. - - skipQuote - Boolean - Optional - Default to false. If set to true, no quotes will be added around the secret. - - honorProvidedValues - Boolean - Optional - Default to false. If set to true, the values in providedValues have higher priority than an existing secret -The order in which this function returns a secret password: - 1. Password provided via the values.yaml if honorProvidedValues = true - (If one of the keys passed to the 'providedValues' parameter to this function is a valid path to a key in the values.yaml and has a value, the value of the first key with a value will be returned) - 2. Already existing 'Secret' resource - (If a 'Secret' resource is found under the name provided to the 'secret' parameter to this function and that 'Secret' resource contains a key with the name passed as the 'key' parameter to this function then the value of this existing secret password will be returned) - 3. Password provided via the values.yaml if honorProvidedValues = false - (If one of the keys passed to the 'providedValues' parameter to this function is a valid path to a key in the values.yaml and has a value, the value of the first key with a value will be returned) - 4. Randomly generated secret password - (A new random secret password with the length specified in the 'length' parameter will be generated and returned) - -*/}} -{{- define "common.secrets.passwords.manage" -}} - -{{- $password := "" }} -{{- $subchart := "" }} -{{- $chartName := default "" .chartName }} -{{- $passwordLength := default 10 .length }} -{{- $providedPasswordKey := include "common.utils.getKeyFromList" (dict "keys" .providedValues "context" $.context) }} -{{- $providedPasswordValue := include "common.utils.getValueFromKey" (dict "key" $providedPasswordKey "context" $.context) }} -{{- $secretData := (lookup "v1" "Secret" (include "common.names.namespace" .context) .secret).data }} -{{- if $secretData }} - {{- if hasKey $secretData .key }} - {{- $password = index $secretData .key | b64dec }} - {{- else if not (eq .failOnNew false) }} - {{- printf "\nPASSWORDS ERROR: The secret \"%s\" does not contain the key \"%s\"\n" .secret .key | fail -}} - {{- end -}} -{{- end }} - -{{- if and $providedPasswordValue .honorProvidedValues }} - {{- $password = tpl ($providedPasswordValue | toString) .context }} -{{- end }} - -{{- if not $password }} - {{- if $providedPasswordValue }} - {{- $password = tpl ($providedPasswordValue | toString) .context }} - {{- else }} - {{- if .context.Values.enabled }} - {{- $subchart = $chartName }} - {{- end -}} - - {{- if not (eq .failOnNew false) }} - {{- $requiredPassword := dict "valueKey" $providedPasswordKey "secret" .secret "field" .key "subchart" $subchart "context" $.context -}} - {{- $requiredPasswordError := include "common.validations.values.single.empty" $requiredPassword -}} - {{- $passwordValidationErrors := list $requiredPasswordError -}} - {{- include "common.errors.upgrade.passwords.empty" (dict "validationErrors" $passwordValidationErrors "context" $.context) -}} - {{- end }} - - {{- if .strong }} - {{- $subStr := list (lower (randAlpha 1)) (randNumeric 1) (upper (randAlpha 1)) | join "_" }} - {{- $password = randAscii $passwordLength }} - {{- $password = regexReplaceAllLiteral "\\W" $password "@" | substr 5 $passwordLength }} - {{- $password = printf "%s%s" $subStr $password | toString | shuffle }} - {{- else }} - {{- $password = randAlphaNum $passwordLength }} - {{- end }} - {{- end -}} -{{- end -}} -{{- if not .skipB64enc }} -{{- $password = $password | b64enc }} -{{- end -}} -{{- if .skipQuote -}} -{{- printf "%s" $password -}} -{{- else -}} -{{- printf "%s" $password | quote -}} -{{- end -}} -{{- end -}} - -{{/* -Reuses the value from an existing secret, otherwise sets its value to a default value. - -Usage: -{{ include "common.secrets.lookup" (dict "secret" "secret-name" "key" "keyName" "defaultValue" .Values.myValue "context" $) }} - -Params: - - secret - String - Required - Name of the 'Secret' resource where the password is stored. - - key - String - Required - Name of the key in the secret. - - defaultValue - String - Required - The path to the validating value in the values.yaml, e.g: "mysql.password". Will pick first parameter with a defined value. - - context - Context - Required - Parent context. - -*/}} -{{- define "common.secrets.lookup" -}} -{{- $value := "" -}} -{{- $secretData := (lookup "v1" "Secret" (include "common.names.namespace" .context) .secret).data -}} -{{- if and $secretData (hasKey $secretData .key) -}} - {{- $value = index $secretData .key -}} -{{- else if .defaultValue -}} - {{- $value = .defaultValue | toString | b64enc -}} -{{- end -}} -{{- if $value -}} -{{- printf "%s" $value -}} -{{- end -}} -{{- end -}} - -{{/* -Returns whether a previous generated secret already exists - -Usage: -{{ include "common.secrets.exists" (dict "secret" "secret-name" "context" $) }} - -Params: - - secret - String - Required - Name of the 'Secret' resource where the password is stored. - - context - Context - Required - Parent context. -*/}} -{{- define "common.secrets.exists" -}} -{{- $secret := (lookup "v1" "Secret" (include "common.names.namespace" .context) .secret) }} -{{- if $secret }} - {{- true -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_storage.tpl b/external-dns-9.0.3/charts/common/templates/_storage.tpl deleted file mode 100644 index aa75856c..00000000 --- a/external-dns-9.0.3/charts/common/templates/_storage.tpl +++ /dev/null @@ -1,21 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return the proper Storage Class -{{ include "common.storage.class" ( dict "persistence" .Values.path.to.the.persistence "global" $) }} -*/}} -{{- define "common.storage.class" -}} -{{- $storageClass := (.global).storageClass | default .persistence.storageClass | default (.global).defaultStorageClass | default "" -}} -{{- if $storageClass -}} - {{- if (eq "-" $storageClass) -}} - {{- printf "storageClassName: \"\"" -}} - {{- else -}} - {{- printf "storageClassName: %s" $storageClass -}} - {{- end -}} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_tplvalues.tpl b/external-dns-9.0.3/charts/common/templates/_tplvalues.tpl deleted file mode 100644 index a04f4c1e..00000000 --- a/external-dns-9.0.3/charts/common/templates/_tplvalues.tpl +++ /dev/null @@ -1,52 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Renders a value that contains template perhaps with scope if the scope is present. -Usage: -{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ ) }} -{{ include "common.tplvalues.render" ( dict "value" .Values.path.to.the.Value "context" $ "scope" $app ) }} -*/}} -{{- define "common.tplvalues.render" -}} -{{- $value := typeIs "string" .value | ternary .value (.value | toYaml) }} -{{- if contains "{{" (toJson .value) }} - {{- if .scope }} - {{- tpl (cat "{{- with $.RelativeScope -}}" $value "{{- end }}") (merge (dict "RelativeScope" .scope) .context) }} - {{- else }} - {{- tpl $value .context }} - {{- end }} -{{- else }} - {{- $value }} -{{- end }} -{{- end -}} - -{{/* -Merge a list of values that contains template after rendering them. -Merge precedence is consistent with http://masterminds.github.io/sprig/dicts.html#merge-mustmerge -Usage: -{{ include "common.tplvalues.merge" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }} -*/}} -{{- define "common.tplvalues.merge" -}} -{{- $dst := dict -}} -{{- range .values -}} -{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | merge $dst -}} -{{- end -}} -{{ $dst | toYaml }} -{{- end -}} - -{{/* -Merge a list of values that contains template after rendering them. -Merge precedence is consistent with https://masterminds.github.io/sprig/dicts.html#mergeoverwrite-mustmergeoverwrite -Usage: -{{ include "common.tplvalues.merge-overwrite" ( dict "values" (list .Values.path.to.the.Value1 .Values.path.to.the.Value2) "context" $ ) }} -*/}} -{{- define "common.tplvalues.merge-overwrite" -}} -{{- $dst := dict -}} -{{- range .values -}} -{{- $dst = include "common.tplvalues.render" (dict "value" . "context" $.context "scope" $.scope) | fromYaml | mergeOverwrite $dst -}} -{{- end -}} -{{ $dst | toYaml }} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_utils.tpl b/external-dns-9.0.3/charts/common/templates/_utils.tpl deleted file mode 100644 index d53c74aa..00000000 --- a/external-dns-9.0.3/charts/common/templates/_utils.tpl +++ /dev/null @@ -1,77 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Print instructions to get a secret value. -Usage: -{{ include "common.utils.secret.getvalue" (dict "secret" "secret-name" "field" "secret-value-field" "context" $) }} -*/}} -{{- define "common.utils.secret.getvalue" -}} -{{- $varname := include "common.utils.fieldToEnvVar" . -}} -export {{ $varname }}=$(kubectl get secret --namespace {{ include "common.names.namespace" .context | quote }} {{ .secret }} -o jsonpath="{.data.{{ .field }}}" | base64 -d) -{{- end -}} - -{{/* -Build env var name given a field -Usage: -{{ include "common.utils.fieldToEnvVar" dict "field" "my-password" }} -*/}} -{{- define "common.utils.fieldToEnvVar" -}} - {{- $fieldNameSplit := splitList "-" .field -}} - {{- $upperCaseFieldNameSplit := list -}} - - {{- range $fieldNameSplit -}} - {{- $upperCaseFieldNameSplit = append $upperCaseFieldNameSplit ( upper . ) -}} - {{- end -}} - - {{ join "_" $upperCaseFieldNameSplit }} -{{- end -}} - -{{/* -Gets a value from .Values given -Usage: -{{ include "common.utils.getValueFromKey" (dict "key" "path.to.key" "context" $) }} -*/}} -{{- define "common.utils.getValueFromKey" -}} -{{- $splitKey := splitList "." .key -}} -{{- $value := "" -}} -{{- $latestObj := $.context.Values -}} -{{- range $splitKey -}} - {{- if not $latestObj -}} - {{- printf "please review the entire path of '%s' exists in values" $.key | fail -}} - {{- end -}} - {{- $value = ( index $latestObj . ) -}} - {{- $latestObj = $value -}} -{{- end -}} -{{- printf "%v" (default "" $value) -}} -{{- end -}} - -{{/* -Returns first .Values key with a defined value or first of the list if all non-defined -Usage: -{{ include "common.utils.getKeyFromList" (dict "keys" (list "path.to.key1" "path.to.key2") "context" $) }} -*/}} -{{- define "common.utils.getKeyFromList" -}} -{{- $key := first .keys -}} -{{- $reverseKeys := reverse .keys }} -{{- range $reverseKeys }} - {{- $value := include "common.utils.getValueFromKey" (dict "key" . "context" $.context ) }} - {{- if $value -}} - {{- $key = . }} - {{- end -}} -{{- end -}} -{{- printf "%s" $key -}} -{{- end -}} - -{{/* -Checksum a template at "path" containing a *single* resource (ConfigMap,Secret) for use in pod annotations, excluding the metadata (see #18376). -Usage: -{{ include "common.utils.checksumTemplate" (dict "path" "/configmap.yaml" "context" $) }} -*/}} -{{- define "common.utils.checksumTemplate" -}} -{{- $obj := include (print .context.Template.BasePath .path) .context | fromYaml -}} -{{ omit $obj "apiVersion" "kind" "metadata" | toYaml | sha256sum }} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/_warnings.tpl b/external-dns-9.0.3/charts/common/templates/_warnings.tpl deleted file mode 100644 index 62c44dfc..00000000 --- a/external-dns-9.0.3/charts/common/templates/_warnings.tpl +++ /dev/null @@ -1,109 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Warning about using rolling tag. -Usage: -{{ include "common.warnings.rollingTag" .Values.path.to.the.imageRoot }} -*/}} -{{- define "common.warnings.rollingTag" -}} - -{{- if and (contains "bitnami/" .repository) (not (.tag | toString | regexFind "-r\\d+$|sha256:")) }} -WARNING: Rolling tag detected ({{ .repository }}:{{ .tag }}), please note that it is strongly recommended to avoid using rolling tags in a production environment. -+info https://techdocs.broadcom.com/us/en/vmware-tanzu/application-catalog/tanzu-application-catalog/services/tac-doc/apps-tutorials-understand-rolling-tags-containers-index.html -{{- end }} -{{- end -}} - -{{/* -Warning about replaced images from the original. -Usage: -{{ include "common.warnings.modifiedImages" (dict "images" (list .Values.path.to.the.imageRoot) "context" $) }} -*/}} -{{- define "common.warnings.modifiedImages" -}} -{{- $affectedImages := list -}} -{{- $printMessage := false -}} -{{- $originalImages := .context.Chart.Annotations.images -}} -{{- range .images -}} - {{- $fullImageName := printf (printf "%s/%s:%s" .registry .repository .tag) -}} - {{- if not (contains $fullImageName $originalImages) }} - {{- $affectedImages = append $affectedImages (printf "%s/%s:%s" .registry .repository .tag) -}} - {{- $printMessage = true -}} - {{- end -}} -{{- end -}} -{{- if $printMessage }} - -⚠ SECURITY WARNING: Original containers have been substituted. This Helm chart was designed, tested, and validated on multiple platforms using a specific set of Bitnami and Tanzu Application Catalog containers. Substituting other containers is likely to cause degraded security and performance, broken chart features, and missing environment variables. - -Substituted images detected: -{{- range $affectedImages }} - - {{ . }} -{{- end }} -{{- end -}} -{{- end -}} - -{{/* -Warning about not setting the resource object in all deployments. -Usage: -{{ include "common.warnings.resources" (dict "sections" (list "path1" "path2") context $) }} -Example: -{{- include "common.warnings.resources" (dict "sections" (list "csiProvider.provider" "server" "volumePermissions" "") "context" $) }} -The list in the example assumes that the following values exist: - - csiProvider.provider.resources - - server.resources - - volumePermissions.resources - - resources -*/}} -{{- define "common.warnings.resources" -}} -{{- $values := .context.Values -}} -{{- $printMessage := false -}} -{{ $affectedSections := list -}} -{{- range .sections -}} - {{- if eq . "" -}} - {{/* Case where the resources section is at the root (one main deployment in the chart) */}} - {{- if not (index $values "resources") -}} - {{- $affectedSections = append $affectedSections "resources" -}} - {{- $printMessage = true -}} - {{- end -}} - {{- else -}} - {{/* Case where the are multiple resources sections (more than one main deployment in the chart) */}} - {{- $keys := split "." . -}} - {{/* We iterate through the different levels until arriving to the resource section. Example: a.b.c.resources */}} - {{- $section := $values -}} - {{- range $keys -}} - {{- $section = index $section . -}} - {{- end -}} - {{- if not (index $section "resources") -}} - {{/* If the section has enabled=false or replicaCount=0, do not include it */}} - {{- if and (hasKey $section "enabled") -}} - {{- if index $section "enabled" -}} - {{/* enabled=true */}} - {{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}} - {{- $printMessage = true -}} - {{- end -}} - {{- else if and (hasKey $section "replicaCount") -}} - {{/* We need a casting to int because number 0 is not treated as an int by default */}} - {{- if (gt (index $section "replicaCount" | int) 0) -}} - {{/* replicaCount > 0 */}} - {{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}} - {{- $printMessage = true -}} - {{- end -}} - {{- else -}} - {{/* Default case, add it to the affected sections */}} - {{- $affectedSections = append $affectedSections (printf "%s.resources" .) -}} - {{- $printMessage = true -}} - {{- end -}} - {{- end -}} - {{- end -}} -{{- end -}} -{{- if $printMessage }} - -WARNING: There are "resources" sections in the chart not set. Using "resourcesPreset" is not recommended for production. For production installations, please set the following values according to your workload needs: -{{- range $affectedSections }} - - {{ . }} -{{- end }} -+info https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_cassandra.tpl b/external-dns-9.0.3/charts/common/templates/validations/_cassandra.tpl deleted file mode 100644 index f8fd213b..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_cassandra.tpl +++ /dev/null @@ -1,51 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Auxiliary function to get the right value for existingSecret. - -Usage: -{{ include "common.cassandra.values.existingSecret" (dict "context" $) }} -Params: - - subchart - Boolean - Optional. Whether Cassandra is used as subchart or not. Default: false -*/}} -{{- define "common.cassandra.values.existingSecret" -}} - {{- if .subchart -}} - {{- .context.Values.cassandra.dbUser.existingSecret | quote -}} - {{- else -}} - {{- .context.Values.dbUser.existingSecret | quote -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled cassandra. - -Usage: -{{ include "common.cassandra.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.cassandra.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.cassandra.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key dbUser - -Usage: -{{ include "common.cassandra.values.key.dbUser" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether Cassandra is used as subchart or not. Default: false -*/}} -{{- define "common.cassandra.values.key.dbUser" -}} - {{- if .subchart -}} - cassandra.dbUser - {{- else -}} - dbUser - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_mariadb.tpl b/external-dns-9.0.3/charts/common/templates/validations/_mariadb.tpl deleted file mode 100644 index 6ea8c0f4..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_mariadb.tpl +++ /dev/null @@ -1,108 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Validate MariaDB required passwords are not empty. - -Usage: -{{ include "common.validations.values.mariadb.passwords" (dict "secret" "secretName" "subchart" false "context" $) }} -Params: - - secret - String - Required. Name of the secret where MariaDB values are stored, e.g: "mysql-passwords-secret" - - subchart - Boolean - Optional. Whether MariaDB is used as subchart or not. Default: false -*/}} -{{- define "common.validations.values.mariadb.passwords" -}} - {{- $existingSecret := include "common.mariadb.values.auth.existingSecret" . -}} - {{- $enabled := include "common.mariadb.values.enabled" . -}} - {{- $architecture := include "common.mariadb.values.architecture" . -}} - {{- $authPrefix := include "common.mariadb.values.key.auth" . -}} - {{- $valueKeyRootPassword := printf "%s.rootPassword" $authPrefix -}} - {{- $valueKeyUsername := printf "%s.username" $authPrefix -}} - {{- $valueKeyPassword := printf "%s.password" $authPrefix -}} - {{- $valueKeyReplicationPassword := printf "%s.replicationPassword" $authPrefix -}} - - {{- if and (or (not $existingSecret) (eq $existingSecret "\"\"")) (eq $enabled "true") -}} - {{- $requiredPasswords := list -}} - - {{- $requiredRootPassword := dict "valueKey" $valueKeyRootPassword "secret" .secret "field" "mariadb-root-password" -}} - {{- $requiredPasswords = append $requiredPasswords $requiredRootPassword -}} - - {{- $valueUsername := include "common.utils.getValueFromKey" (dict "key" $valueKeyUsername "context" .context) }} - {{- if not (empty $valueUsername) -}} - {{- $requiredPassword := dict "valueKey" $valueKeyPassword "secret" .secret "field" "mariadb-password" -}} - {{- $requiredPasswords = append $requiredPasswords $requiredPassword -}} - {{- end -}} - - {{- if (eq $architecture "replication") -}} - {{- $requiredReplicationPassword := dict "valueKey" $valueKeyReplicationPassword "secret" .secret "field" "mariadb-replication-password" -}} - {{- $requiredPasswords = append $requiredPasswords $requiredReplicationPassword -}} - {{- end -}} - - {{- include "common.validations.values.multiple.empty" (dict "required" $requiredPasswords "context" .context) -}} - - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for existingSecret. - -Usage: -{{ include "common.mariadb.values.auth.existingSecret" (dict "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MariaDB is used as subchart or not. Default: false -*/}} -{{- define "common.mariadb.values.auth.existingSecret" -}} - {{- if .subchart -}} - {{- .context.Values.mariadb.auth.existingSecret | quote -}} - {{- else -}} - {{- .context.Values.auth.existingSecret | quote -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled mariadb. - -Usage: -{{ include "common.mariadb.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.mariadb.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.mariadb.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for architecture - -Usage: -{{ include "common.mariadb.values.architecture" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MariaDB is used as subchart or not. Default: false -*/}} -{{- define "common.mariadb.values.architecture" -}} - {{- if .subchart -}} - {{- .context.Values.mariadb.architecture -}} - {{- else -}} - {{- .context.Values.architecture -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key auth - -Usage: -{{ include "common.mariadb.values.key.auth" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MariaDB is used as subchart or not. Default: false -*/}} -{{- define "common.mariadb.values.key.auth" -}} - {{- if .subchart -}} - mariadb.auth - {{- else -}} - auth - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_mongodb.tpl b/external-dns-9.0.3/charts/common/templates/validations/_mongodb.tpl deleted file mode 100644 index e678a6de..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_mongodb.tpl +++ /dev/null @@ -1,67 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Auxiliary function to get the right value for existingSecret. - -Usage: -{{ include "common.mongodb.values.auth.existingSecret" (dict "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MongoDb is used as subchart or not. Default: false -*/}} -{{- define "common.mongodb.values.auth.existingSecret" -}} - {{- if .subchart -}} - {{- .context.Values.mongodb.auth.existingSecret | quote -}} - {{- else -}} - {{- .context.Values.auth.existingSecret | quote -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled mongodb. - -Usage: -{{ include "common.mongodb.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.mongodb.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.mongodb.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key auth - -Usage: -{{ include "common.mongodb.values.key.auth" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MongoDB® is used as subchart or not. Default: false -*/}} -{{- define "common.mongodb.values.key.auth" -}} - {{- if .subchart -}} - mongodb.auth - {{- else -}} - auth - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for architecture - -Usage: -{{ include "common.mongodb.values.architecture" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MongoDB® is used as subchart or not. Default: false -*/}} -{{- define "common.mongodb.values.architecture" -}} - {{- if .subchart -}} - {{- .context.Values.mongodb.architecture -}} - {{- else -}} - {{- .context.Values.architecture -}} - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_mysql.tpl b/external-dns-9.0.3/charts/common/templates/validations/_mysql.tpl deleted file mode 100644 index fbb65c33..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_mysql.tpl +++ /dev/null @@ -1,67 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Auxiliary function to get the right value for existingSecret. - -Usage: -{{ include "common.mysql.values.auth.existingSecret" (dict "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MySQL is used as subchart or not. Default: false -*/}} -{{- define "common.mysql.values.auth.existingSecret" -}} - {{- if .subchart -}} - {{- .context.Values.mysql.auth.existingSecret | quote -}} - {{- else -}} - {{- .context.Values.auth.existingSecret | quote -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled mysql. - -Usage: -{{ include "common.mysql.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.mysql.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.mysql.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for architecture - -Usage: -{{ include "common.mysql.values.architecture" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MySQL is used as subchart or not. Default: false -*/}} -{{- define "common.mysql.values.architecture" -}} - {{- if .subchart -}} - {{- .context.Values.mysql.architecture -}} - {{- else -}} - {{- .context.Values.architecture -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key auth - -Usage: -{{ include "common.mysql.values.key.auth" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether MySQL is used as subchart or not. Default: false -*/}} -{{- define "common.mysql.values.key.auth" -}} - {{- if .subchart -}} - mysql.auth - {{- else -}} - auth - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_postgresql.tpl b/external-dns-9.0.3/charts/common/templates/validations/_postgresql.tpl deleted file mode 100644 index 51d47162..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_postgresql.tpl +++ /dev/null @@ -1,105 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Auxiliary function to decide whether evaluate global values. - -Usage: -{{ include "common.postgresql.values.use.global" (dict "key" "key-of-global" "context" $) }} -Params: - - key - String - Required. Field to be evaluated within global, e.g: "existingSecret" -*/}} -{{- define "common.postgresql.values.use.global" -}} - {{- if .context.Values.global -}} - {{- if .context.Values.global.postgresql -}} - {{- index .context.Values.global.postgresql .key | quote -}} - {{- end -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for existingSecret. - -Usage: -{{ include "common.postgresql.values.existingSecret" (dict "context" $) }} -*/}} -{{- define "common.postgresql.values.existingSecret" -}} - {{- $globalValue := include "common.postgresql.values.use.global" (dict "key" "existingSecret" "context" .context) -}} - - {{- if .subchart -}} - {{- default (.context.Values.postgresql.existingSecret | quote) $globalValue -}} - {{- else -}} - {{- default (.context.Values.existingSecret | quote) $globalValue -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled postgresql. - -Usage: -{{ include "common.postgresql.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.postgresql.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.postgresql.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key postgressPassword. - -Usage: -{{ include "common.postgresql.values.key.postgressPassword" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether postgresql is used as subchart or not. Default: false -*/}} -{{- define "common.postgresql.values.key.postgressPassword" -}} - {{- $globalValue := include "common.postgresql.values.use.global" (dict "key" "postgresqlUsername" "context" .context) -}} - - {{- if not $globalValue -}} - {{- if .subchart -}} - postgresql.postgresqlPassword - {{- else -}} - postgresqlPassword - {{- end -}} - {{- else -}} - global.postgresql.postgresqlPassword - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for enabled.replication. - -Usage: -{{ include "common.postgresql.values.enabled.replication" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether postgresql is used as subchart or not. Default: false -*/}} -{{- define "common.postgresql.values.enabled.replication" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.postgresql.replication.enabled -}} - {{- else -}} - {{- printf "%v" .context.Values.replication.enabled -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right value for the key replication.password. - -Usage: -{{ include "common.postgresql.values.key.replicationPassword" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether postgresql is used as subchart or not. Default: false -*/}} -{{- define "common.postgresql.values.key.replicationPassword" -}} - {{- if .subchart -}} - postgresql.replication.password - {{- else -}} - replication.password - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_redis.tpl b/external-dns-9.0.3/charts/common/templates/validations/_redis.tpl deleted file mode 100644 index 9fedfef9..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_redis.tpl +++ /dev/null @@ -1,48 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - - -{{/* vim: set filetype=mustache: */}} -{{/* -Auxiliary function to get the right value for enabled redis. - -Usage: -{{ include "common.redis.values.enabled" (dict "context" $) }} -*/}} -{{- define "common.redis.values.enabled" -}} - {{- if .subchart -}} - {{- printf "%v" .context.Values.redis.enabled -}} - {{- else -}} - {{- printf "%v" (not .context.Values.enabled) -}} - {{- end -}} -{{- end -}} - -{{/* -Auxiliary function to get the right prefix path for the values - -Usage: -{{ include "common.redis.values.key.prefix" (dict "subchart" "true" "context" $) }} -Params: - - subchart - Boolean - Optional. Whether redis is used as subchart or not. Default: false -*/}} -{{- define "common.redis.values.keys.prefix" -}} - {{- if .subchart -}}redis.{{- else -}}{{- end -}} -{{- end -}} - -{{/* -Checks whether the redis chart's includes the standarizations (version >= 14) - -Usage: -{{ include "common.redis.values.standarized.version" (dict "context" $) }} -*/}} -{{- define "common.redis.values.standarized.version" -}} - - {{- $standarizedAuth := printf "%s%s" (include "common.redis.values.keys.prefix" .) "auth" -}} - {{- $standarizedAuthValues := include "common.utils.getValueFromKey" (dict "key" $standarizedAuth "context" .context) }} - - {{- if $standarizedAuthValues -}} - {{- true -}} - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/templates/validations/_validations.tpl b/external-dns-9.0.3/charts/common/templates/validations/_validations.tpl deleted file mode 100644 index 7cdee617..00000000 --- a/external-dns-9.0.3/charts/common/templates/validations/_validations.tpl +++ /dev/null @@ -1,51 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} -{{/* -Validate values must not be empty. - -Usage: -{{- $validateValueConf00 := (dict "valueKey" "path.to.value" "secret" "secretName" "field" "password-00") -}} -{{- $validateValueConf01 := (dict "valueKey" "path.to.value" "secret" "secretName" "field" "password-01") -}} -{{ include "common.validations.values.empty" (dict "required" (list $validateValueConf00 $validateValueConf01) "context" $) }} - -Validate value params: - - valueKey - String - Required. The path to the validating value in the values.yaml, e.g: "mysql.password" - - secret - String - Optional. Name of the secret where the validating value is generated/stored, e.g: "mysql-passwords-secret" - - field - String - Optional. Name of the field in the secret data, e.g: "mysql-password" -*/}} -{{- define "common.validations.values.multiple.empty" -}} - {{- range .required -}} - {{- include "common.validations.values.single.empty" (dict "valueKey" .valueKey "secret" .secret "field" .field "context" $.context) -}} - {{- end -}} -{{- end -}} - -{{/* -Validate a value must not be empty. - -Usage: -{{ include "common.validations.value.empty" (dict "valueKey" "mariadb.password" "secret" "secretName" "field" "my-password" "subchart" "subchart" "context" $) }} - -Validate value params: - - valueKey - String - Required. The path to the validating value in the values.yaml, e.g: "mysql.password" - - secret - String - Optional. Name of the secret where the validating value is generated/stored, e.g: "mysql-passwords-secret" - - field - String - Optional. Name of the field in the secret data, e.g: "mysql-password" - - subchart - String - Optional - Name of the subchart that the validated password is part of. -*/}} -{{- define "common.validations.values.single.empty" -}} - {{- $value := include "common.utils.getValueFromKey" (dict "key" .valueKey "context" .context) }} - {{- $subchart := ternary "" (printf "%s." .subchart) (empty .subchart) }} - - {{- if not $value -}} - {{- $varname := "my-value" -}} - {{- $getCurrentValue := "" -}} - {{- if and .secret .field -}} - {{- $varname = include "common.utils.fieldToEnvVar" . -}} - {{- $getCurrentValue = printf " To get the current value:\n\n %s\n" (include "common.utils.secret.getvalue" .) -}} - {{- end -}} - {{- printf "\n '%s' must not be empty, please add '--set %s%s=$%s' to the command.%s" .valueKey $subchart .valueKey $varname $getCurrentValue -}} - {{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/charts/common/values.yaml b/external-dns-9.0.3/charts/common/values.yaml deleted file mode 100644 index de2cac57..00000000 --- a/external-dns-9.0.3/charts/common/values.yaml +++ /dev/null @@ -1,8 +0,0 @@ -# Copyright Broadcom, Inc. All Rights Reserved. -# SPDX-License-Identifier: APACHE-2.0 - -## bitnami/common -## It is required by CI/CD tools and processes. -## @skip exampleValue -## -exampleValue: common-chart diff --git a/external-dns-9.0.3/templates/NOTES.txt b/external-dns-9.0.3/templates/NOTES.txt deleted file mode 100644 index 2b6f9a8a..00000000 --- a/external-dns-9.0.3/templates/NOTES.txt +++ /dev/null @@ -1,19 +0,0 @@ -CHART NAME: {{ .Chart.Name }} -CHART VERSION: {{ .Chart.Version }} -APP VERSION: {{ .Chart.AppVersion }} - -⚠ WARNING: Since August 28th, 2025, only a limited subset of images/charts are available for free. - Subscribe to Bitnami Secure Images to receive continued support and security updates. - More info at https://bitnami.com and https://github.com/bitnami/containers/issues/83267 - -** Please be patient while the chart is being deployed ** - -To verify that external-dns has started, run: - - kubectl --namespace={{ include "common.names.namespace" . }} get pods -l "app.kubernetes.io/name={{ include "common.names.name" . }},app.kubernetes.io/instance={{ include "common.names.namespace" . }}" - -{{ include "external-dns.validateValues" . }} -{{ include "external-dns.checkRollingTags" . }} -{{- include "common.warnings.resources" (dict "sections" (list "") "context" $) }} -{{- include "common.warnings.modifiedImages" (dict "images" (list .Values.image) "context" $) }} -{{- include "common.errors.insecureImages" (dict "images" (list .Values.image) "context" $) }} diff --git a/external-dns-9.0.3/templates/_helpers.tpl b/external-dns-9.0.3/templates/_helpers.tpl deleted file mode 100644 index 50e9dc38..00000000 --- a/external-dns-9.0.3/templates/_helpers.tpl +++ /dev/null @@ -1,798 +0,0 @@ -{{/* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{/* vim: set filetype=mustache: */}} - -{{/* -Return the proper External DNS image name -*/}} -{{- define "external-dns.image" -}} -{{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }} -{{- end -}} - -{{/* -Return the proper Docker Image Registry Secret Names -*/}} -{{- define "external-dns.imagePullSecrets" -}} -{{- include "common.images.pullSecrets" (dict "images" (list .Values.image) "global" .Values.global) -}} -{{- end -}} - -{{/* -Return true if a secret object should be created -*/}} -{{- define "external-dns.createSecret" -}} -{{- if and (eq .Values.provider "akamai") .Values.akamai.clientSecret (not .Values.akamai.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "alibabacloud") .Values.alibabacloud.accessKeyId .Values.alibabacloud.accessKeySecret (not .Values.alibabacloud.secretName) }} - {{- true -}} -{{- else if and (eq .Values.provider "aws") .Values.aws.credentials.secretKey .Values.aws.credentials.accessKey (not .Values.aws.credentials.secretName) (not (include "external-dns.aws-credentials-secret-ref-defined" . )) }} - {{- true -}} -{{- else if and (or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns")) (or (and .Values.azure.resourceGroup .Values.azure.tenantId .Values.azure.subscriptionId .Values.azure.aadClientId .Values.azure.aadClientSecret (not .Values.azure.useManagedIdentityExtension)) (and .Values.azure.resourceGroup .Values.azure.subscriptionId .Values.azure.useWorkloadIdentityExtension (not .Values.azure.useManagedIdentityExtension)) (and .Values.azure.resourceGroup .Values.azure.tenantId .Values.azure.subscriptionId .Values.azure.useManagedIdentityExtension)) (not .Values.azure.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "cloudflare") (or .Values.cloudflare.apiToken .Values.cloudflare.apiKey) (not .Values.cloudflare.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "digitalocean") .Values.digitalocean.apiToken (not .Values.digitalocean.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "exoscale") .Values.exoscale.apiKey (not .Values.exoscale.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "google") .Values.google.serviceAccountKey (not .Values.google.serviceAccountSecret) -}} - {{- true -}} -{{- else if and (eq .Values.provider "linode") .Values.linode.apiToken (not .Values.linode.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "oci") (or .Values.oci.privateKeyFingerprint .Values.oci.useWorkloadIdentity) (not .Values.oci.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "rfc2136") (or .Values.rfc2136.tsigSecret (and .Values.rfc2136.kerberosUsername .Values.rfc2136.kerberosPassword)) (not .Values.rfc2136.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "pdns") .Values.pdns.apiKey (not .Values.pdns.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "transip") .Values.transip.apiKey -}} - {{- true -}} -{{- else if and (eq .Values.provider "ovh") .Values.ovh.consumerKey (not .Values.ovh.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "scaleway") .Values.scaleway.scwAccessKey (not .Values.scaleway.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "ns1") .Values.ns1.apiKey (not .Values.ns1.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "civo") .Values.civo.apiToken (not .Values.civo.secretName) -}} - {{- true -}} -{{- else if and (eq .Values.provider "pihole") .Values.pihole.password (not .Values.pihole.secretName) -}} - {{- true -}} -{{- else if and .Values.txtEncrypt.enabled (not .Values.txtEncrypt.secretName) -}} - {{- true -}} -{{- end -}} -{{- end -}} - -{{/* -Return true if a configmap object should be created -*/}} -{{- define "external-dns.createConfigMap" -}} -{{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} - {{- true -}} -{{- else -}} -{{- end -}} -{{- end -}} - -{{/* -Return the name of the Secret used to store the passwords -*/}} -{{- define "external-dns.secretName" -}} -{{- if and (eq .Values.provider "akamai") .Values.akamai.secretName }} -{{- .Values.akamai.secretName }} -{{- else if and (eq .Values.provider "alibabacloud") .Values.alibabacloud.secretName }} -{{- .Values.alibabacloud.secretName }} -{{- else if and (eq .Values.provider "aws") .Values.aws.credentials.secretName }} -{{- .Values.aws.credentials.secretName }} -{{- else if and (or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns")) .Values.azure.secretName }} -{{- .Values.azure.secretName }} -{{- else if and (eq .Values.provider "cloudflare") .Values.cloudflare.secretName }} -{{- .Values.cloudflare.secretName }} -{{- else if and (eq .Values.provider "digitalocean") .Values.digitalocean.secretName }} -{{- .Values.digitalocean.secretName }} -{{- else if and (eq .Values.provider "exoscale") .Values.exoscale.secretName }} -{{- .Values.exoscale.secretName }} -{{- else if and (eq .Values.provider "google") .Values.google.serviceAccountSecret }} -{{- .Values.google.serviceAccountSecret }} -{{- else if and (eq .Values.provider "linode") .Values.linode.secretName }} -{{- .Values.linode.secretName }} -{{- else if and (eq .Values.provider "oci") .Values.oci.secretName }} -{{- .Values.oci.secretName }} -{{- else if and (eq .Values.provider "ovh") .Values.ovh.secretName }} -{{- .Values.ovh.secretName }} -{{- else if and (eq .Values.provider "pdns") .Values.pdns.secretName }} -{{- .Values.pdns.secretName }} -{{- else if and (eq .Values.provider "rfc2136") .Values.rfc2136.secretName }} -{{- .Values.rfc2136.secretName }} -{{- else if and (eq .Values.provider "ns1") .Values.ns1.secretName }} -{{- .Values.ns1.secretName }} -{{- else if and (eq .Values.provider "civo") .Values.civo.secretName }} -{{- .Values.civo.secretName }} -{{- else if and (eq .Values.provider "pihole") .Values.pihole.secretName }} -{{- .Values.pihole.secretName }} -{{- else if and (eq .Values.provider "scaleway") .Values.scaleway.secretName }} -{{- .Values.scaleway.secretName }} -{{- else -}} -{{- template "common.names.fullname" . }} -{{- end -}} -{{- end -}} - -{{- define "external-dns.alibabacloud-credentials" -}} -{ - {{- if .Values.alibabacloud.regionId }} - "regionId": "{{ .Values.alibabacloud.regionId }}", - {{- end }} - {{- if .Values.alibabacloud.vpcId }} - "vpcId": "{{ .Values.alibabacloud.vpcId }}", - {{- end }} - {{- if .Values.alibabacloud.accessKeyId }} - "accessKeyId": "{{ .Values.alibabacloud.accessKeyId }}", - {{- end }} - {{- if .Values.alibabacloud.accessKeySecret }} - "accessKeySecret": "{{ .Values.alibabacloud.accessKeySecret }}" - {{- end }} -} -{{ end }} - -{{- define "external-dns.aws-credentials" }} -[default] -aws_access_key_id = {{ .Values.aws.credentials.accessKey }} -aws_secret_access_key = {{ .Values.aws.credentials.secretKey }} -{{ end }} - -{{- define "external-dns.aws-config" }} -[profile default] -region = {{ .Values.aws.region }} -{{ end }} - -{{- define "external-dns.aws-credentials-secret-ref-defined" -}} -{{- if and .Values.aws.credentials.accessKeyIDSecretRef.name .Values.aws.credentials.accessKeyIDSecretRef.key .Values.aws.credentials.secretAccessKeySecretRef.name .Values.aws.credentials.secretAccessKeySecretRef.key -}} - {{- true -}} -{{- else -}} -{{- end -}} -{{- end -}} - - -{{- define "external-dns.azure-credentials" -}} -{{- $credentials := dict -}} -{{- if .Values.azure.cloud -}} -{{- $_ := set $credentials "cloud" .Values.azure.cloud -}} -{{- end -}} -{{- if .Values.azure.tenantId -}} -{{- $_ := set $credentials "tenantId" .Values.azure.tenantId -}} -{{- end -}} -{{- if .Values.azure.subscriptionId -}} -{{- $_ := set $credentials "subscriptionId" .Values.azure.subscriptionId -}} -{{- end -}} -{{- $_ := set $credentials "resourceGroup" .Values.azure.resourceGroup -}} -{{- if not (or .Values.azure.useManagedIdentityExtension .Values.azure.useWorkloadIdentityExtension) -}} -{{- $_ := set $credentials "aadClientId" .Values.azure.aadClientId -}} -{{- $_ := set $credentials "aadClientSecret" .Values.azure.aadClientSecret -}} -{{- end -}} -{{- if .Values.azure.useWorkloadIdentityExtension -}} -{{- $_ := set $credentials "useWorkloadIdentityExtension" true -}} -{{- end -}} -{{- if and .Values.azure.useManagedIdentityExtension .Values.azure.userAssignedIdentityID -}} -{{- $_ := set $credentials "useManagedIdentityExtension" true -}} -{{- $_ := set $credentials "userAssignedIdentityID" .Values.azure.userAssignedIdentityID -}} -{{- else if and .Values.azure.useManagedIdentityExtension (not .Values.azure.userAssignedIdentityID) -}} -{{- $_ := set $credentials "useManagedIdentityExtension" true -}} -{{- end -}} -{{- $credentials | toJson -}} -{{- end -}} - -{{- define "external-dns.oci-credentials" -}} -{{- if .Values.oci.useWorkloadIdentity }} -auth: - region: {{ .Values.oci.region }} - useWorkloadIdentity: true -compartment: {{ .Values.oci.compartmentOCID }} -{{- else }} -auth: - region: {{ .Values.oci.region }} - tenancy: {{ .Values.oci.tenancyOCID }} - user: {{ .Values.oci.userOCID }} - key: {{ toYaml .Values.oci.privateKey | indent 4 }} - fingerprint: {{ .Values.oci.privateKeyFingerprint }} - # Omit if there is not a password for the key - {{- if .Values.oci.privateKeyPassphrase }} - passphrase: {{ .Values.oci.privateKeyPassphrase }} - {{- end }} -compartment: {{ .Values.oci.compartmentOCID }} -{{- end }} -{{- end }} - -{{/* -Compile all warnings into a single message, and call fail if the validation is enabled -*/}} -{{- define "external-dns.validateValues" -}} -{{- $messages := list -}} -{{- $messages := append $messages (include "external-dns.validateValues.provider" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.sources" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.akamai.host" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.akamai.accessToken" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.akamai.clientToken" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.akamai.clientSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.aws" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.pdns.apiUrl" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.pdns.apiKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.resourceGroupWithoutTenantId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.resourceGroupWithoutSubscriptionId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.tenantIdWithoutSubscriptionId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.subscriptionIdWithoutTenantId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.useManagedIdentityExtensionAadClientId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.useManagedIdentityExtensionAadClientSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.userAssignedIdentityIDWithoutUseManagedIdentityExtension" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.aadClientId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azure.aadClientSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.resourceGroup" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.tenantId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.subscriptionId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.aadClientId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.aadClientSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.useManagedIdentityExtensionAadClientId" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.useManagedIdentityExtensionAadClientSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.azurePrivateDns.userAssignedIdentityIDWithoutUseManagedIdentityExtension" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.transip.account" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.transip.apiKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.ns1.apiKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.linode.apiToken" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.ovh.consumerKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.ovh.applicationKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.ovh.applicationSecret" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.rfc2136.kerberosRealm" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.rfc2136.kerberosConfig" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.scaleway.scwAccessKey" .) -}} -{{- $messages := append $messages (include "external-dns.validateValues.scaleway.scwSecretKey" .) -}} -{{- $messages := without $messages "" -}} -{{- $message := join "\n" $messages -}} - -{{- if .Values.validation.enabled -}} -{{- if $message -}} -{{- printf "\nVALUES VALIDATION:\n%s" $message | fail -}} -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must set a provider -*/}} -{{- define "external-dns.validateValues.provider" -}} -{{- if not .Values.provider -}} -external-dns: provider - You must set a provider (options: aws, google, azure, cloudflare, ...) - Please set the provider parameter (--set provider="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide sources to be observed for new DNS entries by ExternalDNS -*/}} -{{- define "external-dns.validateValues.sources" -}} -{{- if empty .Values.sources -}} -external-dns: sources - You must provide sources to be observed for new DNS entries by ExternalDNS - Please set the sources parameter (--set sources="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Akamai host when provider is "akamai" -*/}} -{{- define "external-dns.validateValues.akamai.host" -}} -{{- if and (eq .Values.provider "akamai") (not .Values.akamai.host) -}} -external-dns: akamai.host - You must provide the Akamai host when provider="akamai". - Please set the host parameter (--set akamai.host="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Akamai access token when provider is "akamai" -*/}} -{{- define "external-dns.validateValues.akamai.accessToken" -}} -{{- if and (eq .Values.provider "akamai") (not .Values.akamai.accessToken) -}} -external-dns: akamai.accessToken - You must provide the Akamai access token when provider="akamai". - Please set the accessToken parameter (--set akamai.accessToken="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Akamai client token when provider is "akamai" -*/}} -{{- define "external-dns.validateValues.akamai.clientToken" -}} -{{- if and (eq .Values.provider "akamai") (not .Values.akamai.clientToken) -}} -external-dns: akamai.clientToken - You must provide the Akamai client token when provider="akamai". - Please set the clientToken parameter (--set akamai.clientToken="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Akamai client secret when provider is "akamai" -*/}} -{{- define "external-dns.validateValues.akamai.clientSecret" -}} -{{- if and (eq .Values.provider "akamai") (not .Values.akamai.clientSecret) (not .Values.akamai.secretName) -}} -external-dns: akamai.clientSecret - You must provide the Akamai client secret when provider="akamai". - Please set the clientSecret parameter (--set akamai.clientSecret="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- The AWS Role to assume must follow ARN format when provider is "aws" -*/}} -{{- define "external-dns.validateValues.aws" -}} -{{- if and (eq .Values.provider "aws") .Values.aws.assumeRoleArn -}} -{{- if not (regexMatch "^arn:(aws|aws-us-gov|aws-cn):iam::.*$" .Values.aws.assumeRoleArn) -}} -external-dns: aws.assumeRoleArn - The AWS Role to assume must follow ARN format: `arn:aws:iam::123455567:role/external-dns` - Ref: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html - Please set a valid ARN (--set aws.assumeRoleARN="xxxx") -{{- end -}} -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the PowerDNS API URL when provider is "pdns" -*/}} -{{- define "external-dns.validateValues.pdns.apiUrl" -}} -{{- if and (eq .Values.provider "pdns") (not .Values.pdns.apiUrl) -}} -external-dns: pdns.apiUrl - You must provide the PowerDNS API URL when provider="pdns". - Please set the apiUrl parameter (--set pdns.apiUrl="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the PowerDNS API key when provider is "pdns" -*/}} -{{- define "external-dns.validateValues.pdns.apiKey" -}} -{{- if and (eq .Values.provider "pdns") (not .Values.pdns.apiKey) (not .Values.pdns.secretName) -}} -external-dns: pdns.apiKey - You must provide the PowerDNS API key when provider="pdns". - Please set the apiKey parameter (--set pdns.apiKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* Check if there are rolling tags in the images */}} -{{- define "external-dns.checkRollingTags" -}} -{{- include "common.warnings.rollingTag" .Values.image }} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure Resource Group when provider is "azure" and tenantId is set -*/}} -{{- define "external-dns.validateValues.azure.resourceGroupWithoutTenantId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.resourceGroup) (not .Values.azure.secretName) .Values.azure.tenantId -}} -external-dns: azure.resourceGroup - You must provide the Azure Resource Group when provider="azure" and tenantId is set. - Please set the resourceGroup parameter (--set azure.resourceGroup="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure Resource Group when provider is "azure" and subscriptionId is set -*/}} -{{- define "external-dns.validateValues.azure.resourceGroupWithoutSubscriptionId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.resourceGroup) (not .Values.azure.secretName) .Values.azure.subscriptionId -}} -external-dns: azure.resourceGroup - You must provide the Azure Resource Group when provider="azure" and subscriptionId is set. - Please set the resourceGroup parameter (--set azure.resourceGroup="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure Tenant ID when provider is "azure" and secretName is not set and subscriptionId is set -*/}} -{{- define "external-dns.validateValues.azure.tenantIdWithoutSubscriptionId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.tenantId) (not .Values.azure.secretName) .Values.azure.subscriptionId -}} -external-dns: azure.tenantId - You must provide the Azure Tenant ID when provider="azure" and subscriptionId is set. - Please set the tenantId parameter (--set azure.tenantId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure Subscription ID when provider is "azure" and secretName is not set and tenantId is set -*/}} -{{- define "external-dns.validateValues.azure.subscriptionIdWithoutTenantId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.subscriptionId) (not .Values.azure.secretName) .Values.azure.tenantId -}} -external-dns: azure.subscriptionId - You must provide the Azure Subscription ID when provider="azure" and tenantId is set. - Please set the subscriptionId parameter (--set azure.subscriptionId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must not provide the Azure AAD Client ID when provider is "azure", secretName is not set and MSI is enabled -*/}} -{{- define "external-dns.validateValues.azure.useManagedIdentityExtensionAadClientId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.secretName) .Values.azure.aadClientId .Values.azure.useManagedIdentityExtension -}} -external-dns: azure.useManagedIdentityExtension - You must not provide the Azure AAD Client ID when provider="azure" and useManagedIdentityExtension is "true". - Please unset the aadClientId parameter (--set azure.aadClientId="") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must not provide the Azure AAD Client secret when provider is "azure", secretName is not set and MSI is enabled -*/}} -{{- define "external-dns.validateValues.azure.useManagedIdentityExtensionAadClientSecret" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.secretName) .Values.azure.aadClientSecret .Values.azure.useManagedIdentityExtension -}} -external-dns: azure.useManagedIdentityExtension - You must not provide the Azure AAD Client Secret when provider="azure" and useManagedIdentityExtension is "true". - Please unset the aadClientSecret parameter (--set azure.aadClientSecret="") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must enable the MSI when provider is "azure", secretName is not set and managed identity ID is set -*/}} -{{- define "external-dns.validateValues.azure.userAssignedIdentityIDWithoutUseManagedIdentityExtension" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.secretName) (not .Values.azure.useManagedIdentityExtension) .Values.azure.userAssignedIdentityID -}} -external-dns: azure.userAssignedIdentityID - You must enable the MSI when provider="azure" and userAssignedIdentityID is set. - Please set the useManagedIdentityExtension parameter (--set azure.useManagedIdentityExtension="true") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure AAD Client ID when provider is "azure", secretName is not set and MSI is disabled and aadClientSecret is set -*/}} -{{- define "external-dns.validateValues.azure.aadClientId" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.secretName) (not .Values.azure.aadClientId) (not .Values.azure.useWorkloadIdentityExtension) (not .Values.azure.useManagedIdentityExtension) .Values.azure.aadClientSecret -}} -external-dns: azure.aadClientId - You must provide the Azure AAD Client ID when provider="azure" and aadClientSecret is set and useManagedIdentityExtension is not set. - Please set the aadClientId parameter (--set azure.aadClientId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure DNS: -- must provide the Azure AAD Client Secret when provider is "azure", secretName is not set and MSI is disabled and aadClientId is set -*/}} -{{- define "external-dns.validateValues.azure.aadClientSecret" -}} -{{- if and (eq .Values.provider "azure") (not .Values.azure.secretName) (not .Values.azure.aadClientSecret) (not .Values.azure.useManagedIdentityExtension) .Values.azure.aadClientId -}} -external-dns: azure.aadClientSecret - You must provide the Azure AAD Client Secret when provider="azure" and aadClientId is set and useManagedIdentityExtension is not set. - Please set the aadClientSecret parameter (--set azure.aadClientSecret="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure AAD Client Secret when provider is "azure-private-dns", secretName is not set and useManagedIdentityExtension is "true" -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.useManagedIdentityExtensionAadClientSecret" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.secretName) .Values.azure.aadClientSecret .Values.azure.useManagedIdentityExtension -}} -external-dns: azure.useManagedIdentityExtension - You must not provide the Azure AAD Client Secret when provider="azure-private-dns", secretName is not set, and useManagedIdentityExtension is "true". - Please unset the aadClientSecret parameter (--set azure.aadClientSecret="") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must enable the MSI when provider is "azure", secretName is not set and managed identity ID is set -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.userAssignedIdentityIDWithoutUseManagedIdentityExtension" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.secretName) (not .Values.azure.useManagedIdentityExtension) .Values.azure.userAssignedIdentityID -}} -external-dns: azure.userAssignedIdentityID - You must enable the MSI when provider="azure-private-dns" and userAssignedIdentityID is set. - Please set the useManagedIdentityExtension parameter (--set azure.useManagedIdentityExtension="true") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure Resource Group when provider is "azure-private-dns" -- azure-private-dns provider does not use azure.json for specifying the resource group so it must be set -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.resourceGroup" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.resourceGroup) -}} -external-dns: azure.resourceGroup - You must provide the Azure Resource Group when provider="azure-private-dns". - Please set the resourceGroup parameter (--set azure.resourceGroup="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure Tenant ID when provider is "azure-private-dns" -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.tenantId" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.tenantId) -}} -external-dns: azure.tenantId - You must provide the Azure Tenant ID when provider="azure-private-dns". - Please set the tenantId parameter (--set azure.tenantId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure Subscription ID when provider is "azure-private-dns" -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.subscriptionId" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.subscriptionId) -}} -external-dns: azure.subscriptionId - You must provide the Azure Subscription ID when provider="azure-private-dns". - Please set the subscriptionId parameter (--set azure.subscriptionId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must not provide the Azure AAD Client Secret when provider is "azure-private-dns", secretName is not set and MSI is enabled -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.useManagedIdentityExtensionAadClientId" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.secretName) .Values.azure.aadClientId .Values.azure.useManagedIdentityExtension -}} -external-dns: azure.useManagedIdentityExtension - You must not provide the Azure AAD Client ID when provider="azure-private-dns" and useManagedIdentityExtension is "true". - Please unset the aadClientId parameter (--set azure.aadClientId="") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure AAD Client ID when provider is "azure-private-dns", secret name is not set and MSI is disabled -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.aadClientId" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.secretName) (not .Values.azure.aadClientId) (not .Values.azure.useManagedIdentityExtension) (not .Values.azure.useWorkloadIdentityExtension) (not .Values.azure.userAssignedIdentityID) -}} -external-dns: azure.useManagedIdentityExtension - You must provide the Azure AAD Client ID when provider="azure-private-dns" and useManagedIdentityExtension is not set. - Please set the aadClientSecret parameter (--set azure.aadClientId="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of Azure Private DNS: -- must provide the Azure AAD Client Secret when provider is "azure-private-dns", secretName is not set and MSI is disabled -*/}} -{{- define "external-dns.validateValues.azurePrivateDns.aadClientSecret" -}} -{{- if and (eq .Values.provider "azure-private-dns") (not .Values.azure.secretName) (not .Values.azure.aadClientSecret) (not .Values.azure.useManagedIdentityExtension) (not .Values.azure.useWorkloadIdentityExtension) (not .Values.azure.userAssignedIdentityID) -}} -external-dns: azure.useManagedIdentityExtension - You must provide the Azure AAD Client Secret when provider="azure-private-dns" and useManagedIdentityExtension is not set. - Please set the aadClientSecret parameter (--set azure.aadClientSecret="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of TransIP DNS: -- must provide the account name when provider is "transip" -*/}} -{{- define "external-dns.validateValues.transip.account" -}} -{{- if and (eq .Values.provider "transip") (not .Values.transip.account) -}} -external-dns: transip.account - You must provide the TransIP account name when provider="transip". - Please set the account parameter (--set transip.account="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of TransIP DNS: -- must provide the API key when provider is "transip" -*/}} -{{- define "external-dns.validateValues.transip.apiKey" -}} -{{- if and (eq .Values.provider "transip") (not .Values.transip.apiKey) -}} -external-dns: transip.apiKey - You must provide the TransIP API key when provider="transip". - Please set the apiKey parameter (--set transip.apiKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Linode API token when provider is "linode" -*/}} -{{- define "external-dns.validateValues.linode.apiToken" -}} -{{- if and (eq .Values.provider "linode") (not .Values.linode.apiToken) (not .Values.linode.secretName) -}} -external-dns: linode.apiToken - You must provide the Linode API token when provider="linode". - Please set the apiToken parameter (--set linode.apiToken="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the NS1 API key when provider is "ns1" -*/}} -{{- define "external-dns.validateValues.ns1.apiKey" -}} -{{- if and (eq .Values.provider "ns1") (not .Values.ns1.apiKey) (not .Values.ns1.secretName) -}} -external-dns: ns1.apiKey - You must provide the NS1 API key when provider="ns1". - Please set the token parameter (--set ns1.apiKey="xxxx") - or specify a secret that contains an API key. (--set ns1.secretName="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the OVH consumer key when provider is "ovh" -*/}} -{{- define "external-dns.validateValues.ovh.consumerKey" -}} -{{- if and (eq .Values.provider "ovh") (not .Values.ovh.consumerKey) (not .Values.ovh.secretName) -}} -external-dns: ovh.consumerKey - You must provide the OVH consumer key when provider="ovh". - Please set the consumerKey parameter (--set ovh.consumerKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the OVH application key when provider is "ovh" -*/}} -{{- define "external-dns.validateValues.ovh.applicationKey" -}} -{{- if and (eq .Values.provider "ovh") (not .Values.ovh.applicationKey) (not .Values.ovh.secretName) -}} -external-dns: ovh.applicationKey - You must provide the OVH appliciation key when provider="ovh". - Please set the applicationKey parameter (--set ovh.applicationKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the OVH application secret when provider is "ovh" -*/}} -{{- define "external-dns.validateValues.ovh.applicationSecret" -}} -{{- if and (eq .Values.provider "ovh") (not .Values.ovh.applicationSecret) (not .Values.ovh.secretName) -}} -external-dns: ovh.applicationSecret - You must provide the OVH appliciation secret key when provider="ovh". - Please set the applicationSecret parameter (--set ovh.applicationSecret="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of RFC2136 DNS: -- Must provide the kerberos realm when provider is rfc2136 and rfc3645Enabled is true -*/}} -{{- define "external-dns.validateValues.rfc2136.kerberosRealm" -}} -{{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled (not .Values.rfc2136.kerberosRealm) -}} -external-dns: rfc2136.kerberosRealm - You must provide the kerberos realm when provider is rfc2136 and rfc3645Enabled is true - Please set the kerberosRealm parameter (--set rfc2136.kerberosRealm="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of RFC2136 DNS: -- Must provide the kerberos config when provider is rfc2136 and rfc3645Enabled is true -*/}} -{{- define "external-dns.validateValues.rfc2136.kerberosConfig" -}} -{{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled (not .Values.rfc2136.kerberosConfig) -}} -external-dns: rfc2136.kerberosConfig - You must provide the kerberos config when provider is rfc2136 and rfc3645Enabled is true - Please set the kerberosConfig parameter (--set-file rfc2136.kerberosConfig="path/to/krb5.conf") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the Scaleway access key when provider is "scaleway" -*/}} -{{- define "external-dns.validateValues.scaleway.scwAccessKey" -}} -{{- if and (eq .Values.provider "scaleway") (not .Values.scaleway.scwAccessKey) (not .Values.scaleway.secretName) -}} -external-dns: scaleway.scwAccessKey - You must provide the Scaleway access key when provider="scaleway". - Please set the scwAccessKey parameter (--set scaleway.scwAccessKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Validate values of External DNS: -- must provide the scaleway secret key when provider is "scaleway" -*/}} -{{- define "external-dns.validateValues.scaleway.scwSecretKey" -}} -{{- if and (eq .Values.provider "scaleway") (not .Values.scaleway.scwSecretKey) (not .Values.scaleway.secretName) -}} -external-dns: scaleway.scwSecretKey - You must provide the scaleway secret key when provider="scaleway". - Please set the scwSecretKey parameter (--set scaleway.scwSecretKey="xxxx") -{{- end -}} -{{- end -}} - -{{/* -Return the ExternalDNS service account name -*/}} -{{- define "external-dns.serviceAccountName" -}} -{{- if .Values.serviceAccount.create -}} - {{ default (include "common.names.fullname" .) .Values.serviceAccount.name }} -{{- else -}} - {{ default "default" .Values.serviceAccount.name }} -{{- end -}} -{{- end -}} - -{{/* -Return the namespace to be monitored by ExternalDNS -*/}} -{{- define "external-dns.namespace" -}} -{{- if and .Values.rbac.create (not .Values.rbac.clusterRole) -}} - {{ default (include "common.names.namespace" .) .Values.namespace }} -{{- else if .Values.watchReleaseNamespace -}} - {{ include "common.names.namespace" . }} -{{- else -}} - {{ .Values.namespace }} -{{- end -}} -{{- end -}} - -{{/* -Return the secret containing external-dns TLS certificates -*/}} -{{- define "external-dns.tlsSecretName" -}} -{{- if .Values.coredns.etcdTLS.autoGenerated -}} - {{- printf "%s-crt" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" -}} -{{- else -}} -{{- $secretName := .Values.coredns.etcdTLS.secretName -}} -{{- printf "%s" (tpl $secretName $) | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} - -{{/* -Return the path to the CA cert file. -*/}} -{{- define "external-dns.tlsCACert" -}} -{{- if .Values.coredns.etcdTLS.autoGenerated }} - {{- printf "ca.crt" -}} -{{- else -}} - {{- printf "%s" .Values.coredns.etcdTLS.caFilename -}} -{{- end -}} -{{- end -}} - -{{/* -Return the path to the cert file. -*/}} -{{- define "external-dns.tlsCert" -}} -{{- if .Values.coredns.etcdTLS.autoGenerated }} - {{- printf "tls.crt" -}} -{{- else -}} - {{- printf "%s" .Values.coredns.etcdTLS.certFilename -}} -{{- end -}} -{{- end -}} - -{{/* -Return the path to the cert key file. -*/}} -{{- define "external-dns.tlsCertKey" -}} -{{- if .Values.coredns.etcdTLS.autoGenerated }} - {{- printf "tls.key" -}} -{{- else -}} - {{- printf "%s" .Values.coredns.etcdTLS.keyFilename -}} -{{- end -}} -{{- end -}} - -{{/* -Return true if a TLS secret object should be created -*/}} -{{- define "external-dns.createTlsSecret" -}} -{{- if and .Values.coredns.etcdTLS.enabled .Values.coredns.etcdTLS.autoGenerated }} - {{- true -}} -{{- end -}} -{{- end -}} - -{{/* -Returns the name of the default secret if the AES key is set via `.Values.txtEncrypt.aesKey` and the name of the custom secret when `.Values.txtEncrypt.secretName` is used. -*/}} -{{- define "external-dns.txtEncryptKeySecretName" -}} -{{- if and .Values.txtEncrypt.enabled .Values.txtEncrypt.secretName }} - {{- printf "%s" .Values.txtEncrypt.secretName -}} -{{- else if and .Values.txtEncrypt.enabled (not .Values.txtEncrypt.secretName) -}} - {{ template "common.names.fullname" . }} -{{- end -}} -{{- end -}} diff --git a/external-dns-9.0.3/templates/clusterrole.yaml b/external-dns-9.0.3/templates/clusterrole.yaml deleted file mode 100644 index 92d753e6..00000000 --- a/external-dns-9.0.3/templates/clusterrole.yaml +++ /dev/null @@ -1,171 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.rbac.create .Values.rbac.clusterRole }} -apiVersion: rbac.authorization.k8s.io/{{ .Values.rbac.apiVersion }} -kind: ClusterRole -metadata: - name: {{ template "common.names.fullname.namespace" . }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -rules: - - apiGroups: - - "" - resources: - - services - - pods - - nodes - - namespaces - verbs: - - get - - list - - watch - - apiGroups: - - "discovery.k8s.io" - resources: - - endpointslices - verbs: - - get - - list - - watch - - apiGroups: - - extensions - - "networking.k8s.io" - - getambassador.io - resources: - - ingresses - - hosts - verbs: - - get - - list - - watch - - apiGroups: - - route.openshift.io - resources: - - routes - verbs: - - get - - list - - watch - - apiGroups: - - networking.istio.io - resources: - - gateways - - virtualservices - verbs: - - get - - list - - watch - - apiGroups: - - zalando.org - resources: - - routegroups - verbs: - - get - - list - - watch - - apiGroups: - - zalando.org - resources: - - routegroups/status - verbs: - - patch - - update - - apiGroups: - - projectcontour.io - resources: - - httpproxies - verbs: - - get - - watch - - list - - apiGroups: - - gloo.solo.io - - gateway.solo.io - resources: - - proxies - - virtualservices - verbs: - - get - - list - - watch - - apiGroups: - - configuration.konghq.com - resources: - - tcpingresses - verbs: - - get - - list - - watch - - apiGroups: - - gateway.networking.k8s.io - resources: - - gateways - - httproutes - - tlsroutes - - tcproutes - - udproutes - - grpcroutes - verbs: - - get - - list - - watch - - apiGroups: - - cis.f5.com - resources: - - virtualservers - - transportservers - verbs: - - get - - watch - - list - {{- if has "traefik-proxy" .Values.sources }} - - apiGroups: - - traefik.containo.us - - traefik.io - resources: - - ingressroutes - - ingressroutetcps - - ingressrouteudps - verbs: - - get - - watch - - list - {{- end }} - {{- if or .Values.crd.create .Values.crd.apiversion }} - - apiGroups: - {{- if .Values.crd.create }} - - externaldns.k8s.io - {{- else }} - - {{ $api := splitn "/" 2 .Values.crd.apiversion }}{{ $api._0 }} - {{- end }} - resources: - {{- if .Values.crd.create }} - - dnsendpoints - {{- else }} - - {{ printf "%ss" (.Values.crd.kind | lower) }} - {{- end }} - verbs: - - get - - list - - watch - - apiGroups: - {{- if .Values.crd.create }} - - externaldns.k8s.io - {{- else }} - - {{ $api := splitn "/" 2 .Values.crd.apiversion }}{{ $api._0 }} - {{- end }} - resources: - {{- if .Values.crd.create }} - - dnsendpoints/status - {{- else }} - - {{ printf "%ss/status" (.Values.crd.kind | lower) }} - {{- end }} - verbs: - - update - {{- end }} -{{- end }} diff --git a/external-dns-9.0.3/templates/clusterrolebinding.yaml b/external-dns-9.0.3/templates/clusterrolebinding.yaml deleted file mode 100644 index 78a2a839..00000000 --- a/external-dns-9.0.3/templates/clusterrolebinding.yaml +++ /dev/null @@ -1,23 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.rbac.create .Values.rbac.clusterRole }} -apiVersion: rbac.authorization.k8s.io/{{ .Values.rbac.apiVersion }} -kind: ClusterRoleBinding -metadata: - name: {{ template "common.names.fullname.namespace" . }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: {{ template "common.names.fullname.namespace" . }} -subjects: - - kind: ServiceAccount - name: {{ template "external-dns.serviceAccountName" . }} - namespace: {{ include "common.names.namespace" . | quote }} -{{- end }} diff --git a/external-dns-9.0.3/templates/configmap.yaml b/external-dns-9.0.3/templates/configmap.yaml deleted file mode 100644 index 3829a180..00000000 --- a/external-dns-9.0.3/templates/configmap.yaml +++ /dev/null @@ -1,21 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if (include "external-dns.createConfigMap" .) }} -apiVersion: v1 -kind: ConfigMap -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -data: -{{- if .Values.rfc2136.rfc3645Enabled }} - krb5.conf: | -{{ .Values.rfc2136.kerberosConfig | indent 4 }} -{{- end }} -{{- end }} diff --git a/external-dns-9.0.3/templates/deployment.yaml b/external-dns-9.0.3/templates/deployment.yaml deleted file mode 100644 index bbd3482d..00000000 --- a/external-dns-9.0.3/templates/deployment.yaml +++ /dev/null @@ -1,802 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -apiVersion: apps/v1 -kind: Deployment -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -spec: - revisionHistoryLimit: {{ .Values.revisionHistoryLimit }} - replicas: 1 - {{- if .Values.updateStrategy }} - strategy: {{- toYaml .Values.updateStrategy | nindent 4 }} - {{- end }} - {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }} - selector: - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} - template: - metadata: - labels: {{- include "common.labels.standard" ( dict "customLabels" $podLabels "context" $ ) | nindent 8 }} - {{- if or .Values.podAnnotations (and .Values.metrics.enabled .Values.metrics.podAnnotations) (include "external-dns.createSecret" .) }} - annotations: - {{- if or .Values.podAnnotations (and .Values.metrics.enabled .Values.metrics.podAnnotations) }} - {{- $podAnnotations := include "common.tplvalues.merge" (dict "values" (list .Values.podAnnotations .Values.metrics.podAnnotations) "context" .) }} - {{- include "common.tplvalues.render" (dict "value" $podAnnotations "context" $) | nindent 8 }} - {{- end }} - {{- if (include "external-dns.createSecret" .) }} - checksum/secret: {{ include (print $.Template.BasePath "/secret.yaml") . | sha256sum }} - {{- end }} - {{- if (include "external-dns.createConfigMap" .) }} - checksum/config: {{ include (print $.Template.BasePath "/configmap.yaml") . | sha256sum }} - {{- end }} - {{- end }} - spec: - {{- include "external-dns.imagePullSecrets" . | nindent 6 }} - {{- if .Values.podSecurityContext.enabled }} - securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.podSecurityContext "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.affinity }} - affinity: {{- include "common.tplvalues.render" (dict "value" .Values.affinity "context" $) | nindent 8 }} - {{- else }} - affinity: - podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.podAffinityPreset "customLabels" $podLabels "context" $) | nindent 10 }} - podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.podAntiAffinityPreset "customLabels" $podLabels "context" $) | nindent 10 }} - nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.nodeAffinityPreset.type "key" .Values.nodeAffinityPreset.key "values" .Values.nodeAffinityPreset.values) | nindent 10 }} - {{- end }} - {{- if .Values.schedulerName }} - schedulerName: {{ .Values.schedulerName | quote }} - {{- end }} - automountServiceAccountToken: {{ .Values.automountServiceAccountToken }} - {{- if .Values.hostAliases }} - hostAliases: {{- include "common.tplvalues.render" (dict "value" .Values.hostAliases "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.topologySpreadConstraints }} - topologySpreadConstraints: {{- include "common.tplvalues.render" (dict "value" .Values.topologySpreadConstraints "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.nodeSelector }} - nodeSelector: {{- include "common.tplvalues.render" (dict "value" .Values.nodeSelector "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.tolerations }} - tolerations: {{- include "common.tplvalues.render" (dict "value" .Values.tolerations "context" $) | nindent 8 }} - {{- end }} - serviceAccountName: {{ template "external-dns.serviceAccountName" . }} - {{- if .Values.priorityClassName }} - priorityClassName: {{ .Values.priorityClassName | quote }} - {{- end }} - {{- if .Values.dnsPolicy }} - dnsPolicy: {{ .Values.dnsPolicy | quote }} - {{- end }} - {{- if .Values.dnsConfig }} - dnsConfig: {{- include "common.tplvalues.render" (dict "value" .Values.dnsConfig "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.initContainers }} - initContainers: {{- include "common.tplvalues.render" (dict "value" .Values.initContainers "context" $) | nindent 8 }} - {{- end }} - containers: - - name: external-dns - image: {{ template "external-dns.image" . }} - imagePullPolicy: {{ .Values.image.pullPolicy | quote }} - {{- if .Values.command }} - command: {{- include "common.tplvalues.render" (dict "value" .Values.command "context" $) | nindent 12 }} - {{- end }} - {{- if .Values.args }} - args: {{- include "common.tplvalues.render" (dict "value" .Values.args "context" $) | nindent 12 }} - {{- else }} - args: - # Generic arguments - - --metrics-address=:{{ .Values.containerPorts.http }} - {{- if .Values.logLevel }} - - --log-level={{ .Values.logLevel }} - {{- end }} - {{- if .Values.logFormat }} - - --log-format={{ .Values.logFormat }} - {{- end }} - {{- if .Values.dryRun }} - - --dry-run - {{- end }} - {{- if .Values.triggerLoopOnEvent }} - - --events - {{- end }} - {{- if (include "external-dns.namespace" .) }} - - --namespace={{ template "external-dns.namespace" . }} - {{- end }} - {{- if .Values.fqdnTemplates }} - - --fqdn-template={{ join "," .Values.fqdnTemplates }}{{/* Explicitly wants comma separated list */}} - {{- end }} - {{- if .Values.combineFQDNAnnotation }} - - --combine-fqdn-annotation - {{- end }} - {{- if and .Values.ignoreHostnameAnnotation .Values.fqdnTemplates }} - - --ignore-hostname-annotation - {{- end }} - {{- if .Values.publishInternalServices }} - - --publish-internal-services - {{- end }} - {{- if .Values.publishHostIP }} - - --publish-host-ip - {{- end }} - {{- range .Values.serviceTypeFilter }} - - --service-type-filter={{ . }} - {{- end }} - {{- range .Values.domainFilters }} - - --domain-filter={{- include "common.tplvalues.render" (dict "value" . "context" $) }} - {{- end }} - {{- range .Values.excludeDomains }} - - --exclude-domains={{- include "common.tplvalues.render" (dict "value" . "context" $) }} - {{- end }} - {{- if .Values.regexDomainFilter }} - - --regex-domain-filter={{- include "common.tplvalues.render" (dict "value" .Values.regexDomainFilter "context" $) }} - {{- end }} - {{- if .Values.regexDomainExclusion }} - - --regex-domain-exclusion={{- include "common.tplvalues.render" (dict "value" .Values.regexDomainExclusion "context" $) }} - {{- end }} - {{- range .Values.zoneNameFilters }} - - --zone-name-filter={{ . }} - {{- end }} - {{- range .Values.zoneIdFilters }} - - --zone-id-filter={{ . }} - {{- end }} - - --policy={{ .Values.policy }} - - --provider={{ .Values.provider }} - - --registry={{ .Values.registry }} - - --interval={{ .Values.interval }} - {{- if or (ne .Values.registry "aws-sd") .Values.forceTxtOwnerId }} - {{- if .Values.txtOwnerId }} - - --txt-owner-id={{ .Values.txtOwnerId }} - {{- end }} - {{- end }} - {{- if eq .Values.registry "txt" }} - {{- if .Values.txtPrefix }} - - --txt-prefix={{ .Values.txtPrefix }} - {{- end }} - {{- if .Values.txtSuffix }} - - --txt-suffix={{ .Values.txtSuffix }} - {{- end }} - {{- if .Values.txtNewFormatOnly }} - - --txt-new-format-only - {{- end }} - {{- end }} - {{- if .Values.annotationFilter }} - - --annotation-filter={{ .Values.annotationFilter }} - {{- end }} - {{- if .Values.labelFilter }} - - --label-filter={{ .Values.labelFilter }} - {{- end }} - {{- range .Values.ingressClassFilters }} - - --ingress-class={{ . }} - {{- end }} - {{- range .Values.managedRecordTypesFilters }} - - --managed-record-types={{ . }} - {{- end }} - {{- if .Values.crd.apiversion }} - - --crd-source-apiversion={{ .Values.crd.apiversion }} - {{- end }} - {{- if .Values.crd.kind }} - - --crd-source-kind={{ .Values.crd.kind }} - {{- end }} - {{- range .Values.sources }} - - --source={{ . }} - {{- end }} - {{- if eq .Values.provider "alibabacloud" }} - # Alibaba Cloud arguments - {{- if or (and .Values.alibabacloud.accessKeyId .Values.alibabacloud.accessKeySecret) .Values.alibabacloud.secretName }} - - --alibaba-cloud-config-file=/etc/kubernetes/alibaba-cloud.json - {{- else }} - - --alibaba-cloud-config-file= - {{- end }} - {{- if .Values.alibabacloud.zoneType }} - - --alibaba-cloud-zone-type={{ .Values.alibabacloud.zoneType }} - {{- end }} - {{- end }} - {{- if or (eq .Values.provider "aws") (eq .Values.provider "aws-sd") }} - # AWS arguments - {{- if .Values.aws.apiRetries }} - - --aws-api-retries={{ .Values.aws.apiRetries }} - {{- end }} - - --aws-zone-type={{ .Values.aws.zoneType }} - {{- if .Values.aws.assumeRoleArn }} - - --aws-assume-role={{ .Values.aws.assumeRoleArn }} - {{- end }} - {{- if .Values.aws.batchChangeSize }} - - --aws-batch-change-size={{ .Values.aws.batchChangeSize }} - {{- end }} - {{- end }} - {{- if .Values.aws.zonesCacheDuration }} - - --aws-zones-cache-duration={{ .Values.aws.zonesCacheDuration }} - {{- end }} - {{- range .Values.aws.zoneTags }} - - --aws-zone-tags={{ . }} - {{- end }} - {{- if .Values.aws.preferCNAME }} - - --aws-prefer-cname - {{- end }} - {{- if .Values.aws.dynamodbTable }} - - --dynamodb-table={{ .Values.aws.dynamodbTable }} - {{- end }} - {{- if .Values.aws.dynamodbRegion }} - - --dynamodb-region={{ .Values.aws.dynamodbRegion }} - {{- end }} - {{- if and (kindIs "bool" .Values.aws.evaluateTargetHealth) (not .Values.aws.evaluateTargetHealth) }} - - --no-aws-evaluate-target-health - {{- end }} - {{- if .Values.aws.zoneMatchParent }} - - --aws-zone-match-parent - {{- end }} - {{- if or (and (eq .Values.provider "azure") (not .Values.azure.secretName)) (eq .Values.provider "azure-private-dns") }} - # Azure Arguments - {{- if .Values.azure.resourceGroup }} - - --azure-resource-group={{ .Values.azure.resourceGroup }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "azure-private-dns" }} - {{- if .Values.azure.subscriptionId }} - - --azure-subscription-id={{ .Values.azure.subscriptionId }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "cloudflare" }} - # Cloudflare arguments - {{- if .Values.cloudflare.proxied }} - - --cloudflare-proxied - {{- end }} - {{- if .Values.cloudflare.dnsRecordsPerPage }} - - --cloudflare-dns-records-per-page={{ .Values.cloudflare.dnsRecordsPerPage }} - {{- end }} - {{- if .Values.cloudflare.regionalServices }} - - --cloudflare-regional-services - {{- end }} - {{- if .Values.cloudflare.regionKey }} - - --cloudflare-region-key={{ .Values.cloudflare.regionKey }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "google" }} - # Google Arguments - {{- if .Values.google.project }} - - --google-project={{ .Values.google.project }} - {{- end }} - {{- if .Values.google.batchChangeSize }} - - --google-batch-change-size={{ .Values.google.batchChangeSize }} - {{- end }} - {{- if .Values.google.zoneVisibility }} - - --google-zone-visibility={{ .Values.google.zoneVisibility }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "infoblox" }} - # Infloblox Arguments - - --infoblox-grid-host={{ .Values.infoblox.gridHost }} - - --infoblox-view={{ .Values.infoblox.view }} - {{- if .Values.infoblox.domainFilter }} - - --domain-filter={{ .Values.infoblox.domainFilter }} - {{- end }} - {{- if .Values.infoblox.nameRegex }} - - --infoblox-name-regex={{ .Values.infoblox.nameRegex }} - {{- end }} - {{- if .Values.infoblox.wapiPort }} - - --infoblox-wapi-port={{ .Values.infoblox.wapiPort }} - {{- end }} - {{- if .Values.infoblox.wapiVersion }} - - --infoblox-wapi-version={{ .Values.infoblox.wapiVersion }} - {{- end }} - {{- if .Values.infoblox.noSslVerify }} - - --no-infoblox-ssl-verify - {{- else }} - - --infoblox-ssl-verify - {{- end }} - {{- if .Values.infoblox.createPtr }} - - --infoblox-create-ptr - {{- end }} - {{- if .Values.infoblox.maxResults }} - - --infoblox-max-results={{ .Values.infoblox.maxResults }} - {{- end }} - {{- end }} - {{- if and (eq .Values.provider "oci") .Values.oci.useInstancePrincipal }} - # OCI Arguments - - --oci-auth-instance-principal - {{- if .Values.oci.compartmentOCID }} - - --oci-compartment-ocid={{ .Values.oci.compartmentOCID }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "ns1" }} - # ns1 arguments - - --ns1-min-ttl={{ .Values.ns1.minTTL }} - {{- end }} - {{- if eq .Values.provider "pihole" }} - {{- if .Values.pihole.server }} - - --pihole-server={{ .Values.pihole.server }} - {{- end }} - {{- if .Values.pihole.tlsSkipVerify }} - - --pihole-tls-skip-verify - {{- end }} - {{- end }} - {{- if eq .Values.provider "rfc2136" }} - # RFC 2136 arguments - - --rfc2136-host={{ required "rfc2136.host must be supplied for provider 'rfc2136'" .Values.rfc2136.host }} - - --rfc2136-port={{ .Values.rfc2136.port }} - {{- $rfc2136Zones := prepend .Values.rfc2136.zones .Values.rfc2136.zone | uniq | compact }} - {{- if empty $rfc2136Zones }} - {{ fail "rfc2136.zone or rfc2136.zones must be supplied for provider 'rfc2136'" }} - {{- end }} - {{- range $rfc2136Zones }} - - --rfc2136-zone={{ . }} - {{- end }} - - --rfc2136-min-ttl={{ .Values.rfc2136.minTTL }} - {{- if .Values.rfc2136.tsigAxfr }} - - --rfc2136-tsig-axfr - {{- end }} - {{- if .Values.rfc2136.rfc3645Enabled }} - - --rfc2136-gss-tsig - - --rfc2136-kerberos-realm={{ .Values.rfc2136.kerberosRealm }} - {{- else }} - {{- if .Values.rfc2136.tsigKeyname }} - - --rfc2136-tsig-secret-alg={{ .Values.rfc2136.tsigSecretAlg }} - - --rfc2136-tsig-keyname={{ .Values.rfc2136.tsigKeyname }} - {{- else }} - - --rfc2136-insecure - {{- end }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "pdns" }} - # PowerDNS arguments - - --pdns-server={{ .Values.pdns.apiUrl }}:{{ .Values.pdns.apiPort }} - - --pdns-api-key=$(PDNS_API_KEY) - {{- end }} - {{- if eq .Values.provider "transip" }} - # TransIP arguments - - --transip-account={{ .Values.transip.account }} - - --transip-keyfile=/transip/transip-api-key - {{- end }} - {{- if .Values.traefik.disableLegacy }} - - --traefik-disable-legacy - {{- end }} - {{- if .Values.traefik.disableNew }} - - --traefik-disable-new - {{- end }} - {{- if .Values.txtEncrypt.enabled }} - # TXT registry encryption - - --txt-encrypt-enabled - - --txt-encrypt-aes-key=$(TXT_AES_ENCRYPTION_KEY) - {{- end }} - {{- if .Values.extraArgs }} - {{- range $key, $value := .Values.extraArgs }} - # Extra arguments - {{- if kindIs "slice" $value }} - {{- range $val := $value }} - - --{{ $key }}={{ $val }} - {{- end }} - {{- else if $value }} - - --{{ $key }}={{ $value }} - {{- else }} - - --{{ $key }} - {{- end }} - {{- end }} - {{- end }} - {{- end }} - env: - {{- if eq .Values.provider "akamai" }} - # Akamai environment variables - {{- if .Values.akamai.host }} - - name: EXTERNAL_DNS_AKAMAI_SERVICECONSUMERDOMAIN - value: {{ .Values.akamai.host }} - {{- end }} - {{- if .Values.akamai.accessToken }} - - name: EXTERNAL_DNS_AKAMAI_ACCESS_TOKEN - value: {{ .Values.akamai.accessToken }} - {{- end }} - {{- if .Values.akamai.clientToken }} - - name: EXTERNAL_DNS_AKAMAI_CLIENT_TOKEN - value: {{ .Values.akamai.clientToken }} - {{- end }} - {{- if or (.Values.akamai.clientSecret) (.Values.akamai.secretName) }} - - name: EXTERNAL_DNS_AKAMAI_CLIENT_SECRET - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: akamai_client_secret - {{- end }} - {{- end }} - {{- if or (eq .Values.provider "aws") (eq .Values.provider "aws-sd") }} - # AWS environment variables - {{- if .Values.aws.region }} - - name: AWS_DEFAULT_REGION - value: {{ .Values.aws.region }} - {{- end }} - {{- if .Values.aws.roleArn }} - - name: AWS_CONFIG_FILE - value: {{ .Values.aws.credentials.mountPath }}/config - {{- end }} - {{- if and .Values.aws.credentials.secretKey .Values.aws.credentials.accessKey (not (include "external-dns.aws-credentials-secret-ref-defined" . ))}} - - name: AWS_SHARED_CREDENTIALS_FILE - value: {{ .Values.aws.credentials.mountPath }}/credentials - {{- end }} - {{- if (include "external-dns.aws-credentials-secret-ref-defined" . ) }} - - name: AWS_ACCESS_KEY_ID - valueFrom: - secretKeyRef: - name: {{ .Values.aws.credentials.accessKeyIDSecretRef.name}} - key: {{ .Values.aws.credentials.accessKeyIDSecretRef.key }} - - name: AWS_SECRET_KEY - valueFrom: - secretKeyRef: - name: {{ .Values.aws.credentials.secretAccessKeySecretRef.name}} - key: {{ .Values.aws.credentials.secretAccessKeySecretRef.key }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "civo" }} - - name: CIVO_TOKEN - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: apiToken - {{- end }} - {{- if eq .Values.provider "cloudflare" }} - # Cloudflare environment variables - - name: CF_API_TOKEN - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: cloudflare_api_token - optional: true - - name: CF_API_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: cloudflare_api_key - optional: true - - name: CF_API_EMAIL - value: {{ .Values.cloudflare.email | quote }} - {{- end }} - {{- if eq .Values.provider "coredns" }} - # CoreDNS environment variables - - name: ETCD_URLS - value: {{ .Values.coredns.etcdEndpoints | quote }} - {{- if .Values.coredns.etcdTLS.enabled }} - - name: ETCD_CERT_FILE - value: {{ .Values.coredns.etcdTLS.mountPath }}/{{ include "external-dns.tlsCert" . }} - - name: ETCD_KEY_FILE - value: {{ .Values.coredns.etcdTLS.mountPath }}/{{ include "external-dns.tlsCertKey" . }} - - name: ETCD_CA_FILE - value: {{ .Values.coredns.etcdTLS.mountPath }}/{{ include "external-dns.tlsCACert" . }} - {{- end }} - {{- end }} - {{- if and (eq .Values.provider "digitalocean") (or .Values.digitalocean.apiToken .Values.digitalocean.secretName) }} - # DigitalOcean environment variables - - name: DO_TOKEN - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: digitalocean_api_token - {{- end }} - {{- if (eq .Values.provider "exoscale") }} - # Exoscale environment variables - {{- if (or .Values.exoscale.apiKey .Values.exoscale.secretName) }} - - name: EXTERNAL_DNS_EXOSCALE_APIKEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: exoscale_api_key - {{- end }} - {{- if (or .Values.exoscale.apiToken .Values.exoscale.secretName) }} - - name: EXTERNAL_DNS_EXOSCALE_APISECRET - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: exoscale_api_token - {{- end }} - {{- end }} - {{- if eq .Values.provider "google" }} - # Google environment variables - {{- if or .Values.google.serviceAccountSecret .Values.google.serviceAccountKey }} - - name: GOOGLE_APPLICATION_CREDENTIALS - value: /etc/secrets/service-account/credentials.json - {{- end }} - {{- end }} - {{- if eq .Values.provider "linode" }} - # Linode environment variables - {{- if or (.Values.linode.apiToken) (.Values.linode.secretName) }} - - name: LINODE_TOKEN - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: linode_api_token - {{- end }} - {{- end }} - {{- if eq .Values.provider "ovh" }} - # OVH environment variables - {{- if or (.Values.ovh.consumerKey) (.Values.ovh.secretName) }} - - name: OVH_CONSUMER_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: ovh_consumer_key - {{- end }} - {{- if or (.Values.ovh.applicationKey) (.Values.ovh.secretName) }} - - name: OVH_APPLICATION_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: ovh_application_key - {{- end }} - {{- if or (.Values.ovh.applicationSecret) (.Values.ovh.secretName) }} - - name: OVH_APPLICATION_SECRET - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: ovh_application_secret - {{- end }} - {{- end }} - {{- if eq .Values.provider "scaleway" }} - # Scaleway environment variables - {{- if or (.Values.scaleway.scwAccessKey) (.Values.scaleway.secretName) }} - - name: SCW_ACCESS_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: scw_access_key - {{- end }} - {{- if or (.Values.scaleway.scwSecretKey) (.Values.scaleway.secretName) }} - - name: SCW_SECRET_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: scw_secret_key - {{- end }} - {{- end }} - {{- if eq .Values.provider "rfc2136" }} - {{- if .Values.rfc2136.tsigSecret | or (and .Values.rfc2136.kerberosUsername .Values.rfc2136.kerberosPassword) | or .Values.rfc2136.secretName }} - # RFC 2136 environment variables - {{- if .Values.rfc2136.rfc3645Enabled }} - - name: EXTERNAL_DNS_RFC2136_KERBEROS_USERNAME - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: rfc2136_kerberos_username - - name: EXTERNAL_DNS_RFC2136_KERBEROS_PASSWORD - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: rfc2136_kerberos_password - {{- else }} - - name: EXTERNAL_DNS_RFC2136_TSIG_SECRET - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: rfc2136_tsig_secret - {{- end }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "pdns" }} - # PowerDNS environment variables - - name: PDNS_API_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: pdns_api_key - {{- end }} - {{- if .Values.extraEnvVars }} - {{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }} - {{- end }} - {{- if .Values.pihole.secretName }} - - name: EXTERNAL_DNS_PIHOLE_PASSWORD - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: pihole_password - {{- end }} - {{- if eq .Values.provider "ns1" }} - # NS1 environment variables - {{- if or (.Values.ns1.apiKey) (.Values.ns1.secretName) }} - - name: NS1_APIKEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.secretName" . }} - key: ns1-api-key - {{- end }} - {{- end }} - {{- if and .Values.txtEncrypt.enabled }} - - name: TXT_AES_ENCRYPTION_KEY - valueFrom: - secretKeyRef: - name: {{ template "external-dns.txtEncryptKeySecretName" . }} - key: txt_aes_encryption_key - {{- end }} - envFrom: - {{- if .Values.extraEnvVarsCM }} - - configMapRef: - name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsCM "context" $) }} - {{- end }} - {{- if .Values.extraEnvVarsSecret }} - - secretRef: - name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsSecret "context" $) }} - {{- end }} - ports: - - name: http - containerPort: {{ .Values.containerPorts.http }} - {{- if .Values.customLivenessProbe }} - livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customLivenessProbe "context" $) | nindent 12 }} - {{- else if .Values.livenessProbe.enabled }} - livenessProbe: - tcpSocket: - port: http - initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }} - periodSeconds: {{ .Values.livenessProbe.periodSeconds }} - timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }} - successThreshold: {{ .Values.livenessProbe.successThreshold }} - failureThreshold: {{ .Values.livenessProbe.failureThreshold }} - {{- end }} - {{- if .Values.customReadinessProbe }} - readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customReadinessProbe "context" $) | nindent 12 }} - {{- else if .Values.readinessProbe.enabled }} - readinessProbe: - httpGet: - path: /healthz - port: http - initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }} - periodSeconds: {{ .Values.readinessProbe.periodSeconds }} - timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }} - successThreshold: {{ .Values.readinessProbe.successThreshold }} - failureThreshold: {{ .Values.readinessProbe.failureThreshold }} - {{- end }} - {{- if .Values.customStartupProbe }} - startupProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customStartupProbe "context" $) | nindent 12 }} - {{- else if .Values.startupProbe.enabled }} - startupProbe: - httpGet: - path: /healthz - port: http - initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds }} - periodSeconds: {{ .Values.startupProbe.periodSeconds }} - timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }} - successThreshold: {{ .Values.startupProbe.successThreshold }} - failureThreshold: {{ .Values.startupProbe.failureThreshold }} - {{- end }} - {{- if .Values.containerSecurityContext.enabled }} - securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.containerSecurityContext "context" $) | nindent 12 }} - {{- end }} - {{- if .Values.lifecycleHooks }} - lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.lifecycleHooks "context" $) | nindent 12 }} - {{- end }} - {{- if .Values.resources }} - resources: {{- toYaml .Values.resources | nindent 12 }} - {{- else if ne .Values.resourcesPreset "none" }} - resources: {{- include "common.resources.preset" (dict "type" .Values.resourcesPreset) | nindent 12 }} - {{- end }} - volumeMounts: - - name: empty-dir - mountPath: /tmp - subPath: tmp-dir - {{- if and (eq .Values.provider "alibabacloud") (or (and .Values.alibabacloud.accessKeyId .Values.alibabacloud.accessKeySecret) .Values.alibabacloud.secretName) }} - # Alibaba Cloud mountPath(s) - - name: alibabacloud-config-file - mountPath: /etc/kubernetes/ - readOnly: true - {{- end }} - {{- if and (eq .Values.provider "aws") (or (and .Values.aws.credentials.secretKey .Values.aws.credentials.accessKey) .Values.aws.credentials.secretName) (not (include "external-dns.aws-credentials-secret-ref-defined" . )) }} - # AWS mountPath(s) - - name: aws-credentials - mountPath: {{ .Values.aws.credentials.mountPath }} - readOnly: true - {{- end }} - {{- if or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns") }} - # Azure mountPath(s) - - name: azure-config-file - {{- if or .Values.azure.secretName (and .Values.azure.resourceGroup .Values.azure.tenantId .Values.azure.subscriptionId) }} - mountPath: /etc/kubernetes/ - {{- else }} - mountPath: /etc/kubernetes/azure.json - {{- end }} - readOnly: true - {{- end }} - {{- if and (eq .Values.provider "coredns") (.Values.coredns.etcdTLS.enabled) }} - # CoreDNS mountPath(s) - - name: {{ include "external-dns.tlsSecretName" . }} - mountPath: {{ .Values.coredns.etcdTLS.mountPath }} - readOnly: true - {{- end }} - {{- if and (eq .Values.provider "google") (or .Values.google.serviceAccountKey .Values.google.serviceAccountSecret) }} - # Google mountPath(s) - - name: google-service-account - mountPath: /etc/secrets/service-account/ - {{- end }} - {{- if and (eq .Values.provider "oci") (not .Values.oci.useInstancePrincipal) }} - - name: oci-config-file - mountPath: /etc/kubernetes/ - {{- end }} - {{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} - - name: krb5config - mountPath: /etc/krb5.conf - subPath: krb5.conf - {{- end }} - {{- if (eq .Values.provider "transip") }} - # TransIP mountPath(s) - - name: transip-api-key - mountPath: /transip - readOnly: true - {{- end }} - {{- if .Values.extraVolumeMounts }} - # Extra volume mount(s) - {{- toYaml .Values.extraVolumeMounts | nindent 12 }} - {{- end }} - {{- if .Values.sidecars }} - {{- include "common.tplvalues.render" (dict "value" .Values.sidecars "context" $) | nindent 8 }} - {{- end }} - volumes: - - name: empty-dir - emptyDir: {} - {{- if and (eq .Values.provider "alibabacloud") (or (and .Values.alibabacloud.accessKeyId .Values.alibabacloud.accessKeySecret) .Values.alibabacloud.secretName) }} - # Alibaba Cloud volume(s) - - name: alibabacloud-config-file - secret: - secretName: {{ template "external-dns.secretName" . }} - {{- end }} - {{- if and (eq .Values.provider "aws") (or (and .Values.aws.credentials.secretKey .Values.aws.credentials.accessKey) .Values.aws.credentials.secretName) (not (include "external-dns.aws-credentials-secret-ref-defined" . )) }} - # AWS volume(s) - - name: aws-credentials - secret: - secretName: {{ template "external-dns.secretName" . }} - {{- end }} - {{- if or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns") }} - # Azure and Azure Private DNS volume(s) - - name: azure-config-file - {{- if or .Values.azure.secretName (and .Values.azure.resourceGroup .Values.azure.tenantId .Values.azure.subscriptionId) }} - secret: - secretName: {{ template "external-dns.secretName" . }} - {{- else if .Values.azure.useWorkloadIdentityExtension }} - secret: - secretName: {{ template "common.names.fullname" . }} - {{- else if .Values.azure.useManagedIdentityExtension }} - secret: - secretName: {{ template "common.names.fullname" . }} - {{- else }} - hostPath: - path: /etc/kubernetes/azure.json - type: File - {{- end }} - {{- end }} - {{- if and (eq .Values.provider "oci") (not .Values.oci.useInstancePrincipal) }} - - name: oci-config-file - secret: - secretName: {{ template "external-dns.secretName" . }} - {{- end }} - {{- if and (eq .Values.provider "coredns") (.Values.coredns.etcdTLS.enabled) }} - # CoreDNS volume(s) - - name: {{ include "external-dns.tlsSecretName" . }} - secret: - secretName: {{ include "external-dns.tlsSecretName" . }} - defaultMode: 400 - {{- end }} - {{- if and (eq .Values.provider "google") (or .Values.google.serviceAccountKey .Values.google.serviceAccountSecret) }} - # Google volume(s) - - name: google-service-account - secret: - secretName: {{ template "external-dns.secretName" . }} - {{- if and .Values.google.serviceAccountSecret .Values.google.serviceAccountSecretKey }} - items: - - key: {{ .Values.google.serviceAccountSecretKey | quote }} - path: credentials.json - {{- end }} - {{- end }} - {{- if and (eq .Values.provider "rfc2136") .Values.rfc2136.rfc3645Enabled }} - # Kerberos config volume - - name: krb5config - configMap: - name: {{ template "common.names.fullname" . }} - items: - - key: "krb5.conf" - path: "krb5.conf" - {{- end }} - {{- if (eq .Values.provider "transip") }} - # TransIP volume(s) - - name: transip-api-key - secret: - secretName: {{ template "common.names.fullname" . }} - {{- end }} - {{- if .Values.extraVolumes }} - # Extra volume(s) - {{- toYaml .Values.extraVolumes | nindent 8 }} - {{- end }} diff --git a/external-dns-9.0.3/templates/extra-list.yaml b/external-dns-9.0.3/templates/extra-list.yaml deleted file mode 100644 index 329f5c65..00000000 --- a/external-dns-9.0.3/templates/extra-list.yaml +++ /dev/null @@ -1,9 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- range .Values.extraDeploy }} ---- -{{ include "common.tplvalues.render" (dict "value" . "context" $) }} -{{- end }} diff --git a/external-dns-9.0.3/templates/networkpolicy.yaml b/external-dns-9.0.3/templates/networkpolicy.yaml deleted file mode 100644 index 8b0ec356..00000000 --- a/external-dns-9.0.3/templates/networkpolicy.yaml +++ /dev/null @@ -1,69 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if .Values.networkPolicy.enabled }} -kind: NetworkPolicy -apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }} -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - app.kubernetes.io/component: controller - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -spec: - {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }} - podSelector: - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} - policyTypes: - - Ingress - - Egress - {{- if .Values.networkPolicy.allowExternalEgress }} - egress: - - {} - {{- else }} - egress: - - ports: - - port: 53 - protocol: UDP - - port: 53 - protocol: TCP - {{- range $port := .Values.networkPolicy.kubeAPIServerPorts }} - - port: {{ $port }} - {{- end }} - {{- if .Values.networkPolicy.extraEgress }} - {{- include "common.tplvalues.render" ( dict "value" .Values.networkPolicy.extraEgress "context" $ ) | nindent 4 }} - {{- end }} - {{- end }} - ingress: - - ports: - - port: {{ .Values.containerPorts.http }} - {{- if not .Values.networkPolicy.allowExternal }} - from: - - podSelector: - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }} - - podSelector: - matchLabels: - {{ template "common.names.fullname" . }}-client: "true" - {{- if .Values.networkPolicy.ingressNSMatchLabels }} - - namespaceSelector: - matchLabels: - {{- range $key, $value := .Values.networkPolicy.ingressNSMatchLabels }} - {{ $key | quote }}: {{ $value | quote }} - {{- end }} - {{- if .Values.networkPolicy.ingressNSPodMatchLabels }} - podSelector: - matchLabels: - {{- range $key, $value := .Values.networkPolicy.ingressNSPodMatchLabels }} - {{ $key | quote }}: {{ $value | quote }} - {{- end }} - {{- end }} - {{- end }} - {{- end }} - {{- end }} - {{- if .Values.networkPolicy.extraIngress }} - {{- include "common.tplvalues.render" ( dict "value" .Values.networkPolicy.extraIngress "context" $ ) | nindent 4 }} -{{- end }} \ No newline at end of file diff --git a/external-dns-9.0.3/templates/pdb.yaml b/external-dns-9.0.3/templates/pdb.yaml deleted file mode 100644 index 4f202a8d..00000000 --- a/external-dns-9.0.3/templates/pdb.yaml +++ /dev/null @@ -1,26 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.pdb.create }} -apiVersion: {{ include "common.capabilities.policy.apiVersion" . }} -kind: PodDisruptionBudget -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -spec: - {{- if .Values.pdb.minAvailable }} - minAvailable: {{ .Values.pdb.minAvailable }} - {{- end }} - {{- if or .Values.pdb.maxUnavailable (not .Values.pdb.minAvailable) }} - maxUnavailable: {{ .Values.pdb.maxUnavailable | default 1 }} - {{- end }} - {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }} - selector: - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} -{{- end -}} diff --git a/external-dns-9.0.3/templates/podmonitor.yaml b/external-dns-9.0.3/templates/podmonitor.yaml deleted file mode 100644 index f828f3e6..00000000 --- a/external-dns-9.0.3/templates/podmonitor.yaml +++ /dev/null @@ -1,25 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.metrics.enabled .Values.metrics.googlePodMonitor.enabled }} -apiVersion: monitoring.googleapis.com/v1 -kind: PodMonitoring -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ default (include "common.names.namespace" .) .Values.metrics.googlePodMonitor.namespace | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} -spec: - endpoints: - - port: http - {{- with .Values.metrics.googlePodMonitor.endpoint }} - path: {{ . }} - {{- end }} - {{- with .Values.metrics.googlePodMonitor.interval }} - interval: {{ . }} - {{- end }} - {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }} - selector: - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }} -{{- end }} diff --git a/external-dns-9.0.3/templates/psp-clusterrole.yaml b/external-dns-9.0.3/templates/psp-clusterrole.yaml deleted file mode 100644 index af04ae6e..00000000 --- a/external-dns-9.0.3/templates/psp-clusterrole.yaml +++ /dev/null @@ -1,21 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and (include "common.capabilities.psp.supported" .) .Values.rbac.pspEnabled }} -kind: ClusterRole -apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }} -metadata: - name: {{ printf "%s-%s" (include "common.names.fullname.namespace" .) "psp" | trunc 63 | trimSuffix "-" }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -rules: -- apiGroups: ['extensions'] - resources: ['podsecuritypolicies'] - verbs: ['use'] - resourceNames: - - {{ template "common.names.fullname.namespace" . }} -{{- end }} diff --git a/external-dns-9.0.3/templates/psp-clusterrolebinding.yaml b/external-dns-9.0.3/templates/psp-clusterrolebinding.yaml deleted file mode 100644 index a99f60de..00000000 --- a/external-dns-9.0.3/templates/psp-clusterrolebinding.yaml +++ /dev/null @@ -1,23 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and (include "common.capabilities.psp.supported" .) .Values.rbac.pspEnabled }} -apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }} -kind: ClusterRoleBinding -metadata: - name: {{ printf "%s-%s" (include "common.names.fullname.namespace" .) "psp" | trunc 63 | trimSuffix "-" }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: {{ printf "%s-%s" (include "common.names.fullname.namespace" .) "psp" | trunc 63 | trimSuffix "-" }} -subjects: - - kind: ServiceAccount - name: {{ template "external-dns.serviceAccountName" . }} - namespace: {{ include "common.names.namespace" . | quote }} -{{- end }} diff --git a/external-dns-9.0.3/templates/psp.yaml b/external-dns-9.0.3/templates/psp.yaml deleted file mode 100644 index 7a7004d0..00000000 --- a/external-dns-9.0.3/templates/psp.yaml +++ /dev/null @@ -1,48 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and (include "common.capabilities.psp.supported" .) .Values.rbac.pspEnabled }} -apiVersion: policy/v1beta1 -kind: PodSecurityPolicy -metadata: - name: {{ template "common.names.fullname.namespace" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -spec: - privileged: false - allowPrivilegeEscalation: false - requiredDropCapabilities: - - ALL - volumes: - - 'configMap' - - 'emptyDir' - - 'projected' - - 'secret' - - 'downwardAPI' - - 'hostPath' - hostNetwork: false - hostIPC: false - hostPID: false - runAsUser: - rule: 'MustRunAs' - ranges: - - min: 1001 - max: 1001 - seLinux: - rule: 'RunAsAny' - supplementalGroups: - rule: 'MustRunAs' - ranges: - - min: 1001 - max: 1001 - fsGroup: - rule: 'MustRunAs' - ranges: - - min: 1001 - max: 1001 -{{- end }} diff --git a/external-dns-9.0.3/templates/role.yaml b/external-dns-9.0.3/templates/role.yaml deleted file mode 100644 index ed21bedd..00000000 --- a/external-dns-9.0.3/templates/role.yaml +++ /dev/null @@ -1,120 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.rbac.create (not .Values.rbac.clusterRole) }} -apiVersion: rbac.authorization.k8s.io/{{ .Values.rbac.apiVersion }} -kind: Role -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ template "external-dns.namespace" . }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -rules: - - apiGroups: - - "" - resources: - - services - - pods - - endpoints - verbs: - - get - - list - - watch - - apiGroups: - - extensions - - "networking.k8s.io" - - getambassador.io - resources: - - ingresses - - hosts - verbs: - - get - - list - - watch - - apiGroups: - - route.openshift.io - resources: - - routes - verbs: - - get - - list - - watch - - apiGroups: - - networking.istio.io - resources: - - gateways - - virtualservices - verbs: - - get - - list - - watch - - apiGroups: - - zalando.org - resources: - - routegroups - verbs: - - get - - list - - watch - - apiGroups: - - zalando.org - resources: - - routegroups/status - verbs: - - patch - - update - - apiGroups: - - projectcontour.io - resources: - - httpproxies - verbs: - - get - - watch - - list - - apiGroups: - - gloo.solo.io - - gateway.solo.io - resources: - - proxies - - virtualservices - verbs: - - get - - list - - watch - {{- if or .Values.crd.create .Values.crd.apiversion }} - - apiGroups: - {{- if .Values.crd.create }} - - externaldns.k8s.io - {{- else }} - - {{ $api := splitn "/" 2 .Values.crd.apiversion }}{{ $api._0 }} - {{- end }} - resources: - {{- if .Values.crd.create }} - - dnsendpoints - {{- else }} - - {{ printf "%ss" (.Values.crd.kind | lower) }} - {{- end }} - verbs: - - get - - list - - watch - - apiGroups: - {{- if .Values.crd.create }} - - externaldns.k8s.io - {{- else }} - - {{ $api := splitn "/" 2 .Values.crd.apiversion }}{{ $api._0 }} - {{- end }} - resources: - {{- if .Values.crd.create }} - - dnsendpoints/status - {{- else }} - - {{ printf "%ss/status" (.Values.crd.kind | lower) }} - {{- end }} - verbs: - - update - {{- end }} -{{- end }} diff --git a/external-dns-9.0.3/templates/rolebindings.yaml b/external-dns-9.0.3/templates/rolebindings.yaml deleted file mode 100644 index e0366151..00000000 --- a/external-dns-9.0.3/templates/rolebindings.yaml +++ /dev/null @@ -1,24 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.rbac.create (not .Values.rbac.clusterRole) }} -apiVersion: rbac.authorization.k8s.io/{{ .Values.rbac.apiVersion }} -kind: RoleBinding -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ template "external-dns.namespace" . }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: {{ template "common.names.fullname" . }} -subjects: - - kind: ServiceAccount - name: {{ template "external-dns.serviceAccountName" . }} - namespace: {{ include "common.names.namespace" . | quote }} -{{- end }} diff --git a/external-dns-9.0.3/templates/secret.yaml b/external-dns-9.0.3/templates/secret.yaml deleted file mode 100644 index 09cf7663..00000000 --- a/external-dns-9.0.3/templates/secret.yaml +++ /dev/null @@ -1,89 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if (include "external-dns.createSecret" .) }} -apiVersion: v1 -kind: Secret -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if or .Values.secretAnnotations .Values.commonAnnotations }} - {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.secretAnnotations .Values.commonAnnotations ) "context" . ) }} - annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} - {{- end }} -type: Opaque -data: - {{- if eq .Values.provider "akamai" }} - akamai_client_secret: {{ .Values.akamai.clientSecret | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "alibabacloud" }} - alibaba-cloud.json: {{ include "external-dns.alibabacloud-credentials" . | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "aws" }} - credentials: {{ include "external-dns.aws-credentials" . | b64enc | quote }} - {{- if .Values.aws.region }} - config: {{ include "external-dns.aws-config" . | b64enc | quote }} - {{- end }} - {{- end }} - {{- if or (eq .Values.provider "azure") (eq .Values.provider "azure-private-dns") }} - azure.json: {{ include "external-dns.azure-credentials" . | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "google" }} - credentials.json: {{ .Values.google.serviceAccountKey | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "civo" }} - apiToken: {{ .Values.civo.apiToken | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "cloudflare" }} - {{- if .Values.cloudflare.apiToken }} - cloudflare_api_token: {{ .Values.cloudflare.apiToken | b64enc | quote }} - {{- else }} - cloudflare_api_key: {{ required "cloudflare.apiKey is required if cloudflare.apiToken is not provided" .Values.cloudflare.apiKey | b64enc | quote }} - {{- end }} - {{- end }} - {{- if eq .Values.provider "digitalocean" }} - digitalocean_api_token: {{ .Values.digitalocean.apiToken | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "exoscale" }} - exoscale_api_key: {{ .Values.exoscale.apiKey | b64enc | quote }} - exoscale_api_token: {{ .Values.exoscale.apiToken | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "linode" }} - linode_api_token: {{ .Values.linode.apiToken | b64enc | quote }} - {{- end }} - {{- if and (eq .Values.provider "oci") (not .Values.useInstancePrincipal) }} - oci.yaml: {{ include "external-dns.oci-credentials" . | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "pdns" }} - pdns_api_key: {{ .Values.pdns.apiKey | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "rfc2136" }} - rfc2136_tsig_secret: {{ .Values.rfc2136.tsigSecret | b64enc | quote }} - rfc2136_kerberos_username: {{ .Values.rfc2136.kerberosUsername | b64enc | quote }} - rfc2136_kerberos_password: {{ .Values.rfc2136.kerberosPassword | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "transip" }} - transip-api-key: {{ .Values.transip.apiKey | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "ovh" }} - ovh_consumer_key: {{ .Values.ovh.consumerKey | b64enc | quote }} - ovh_application_key: {{ .Values.ovh.applicationKey | b64enc | quote }} - ovh_application_secret: {{ .Values.ovh.applicationSecret | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "scaleway" }} - scw_access_key: {{ .Values.scaleway.scwAccessKey | b64enc | quote }} - scw_secret_key: {{ .Values.scaleway.scwSecretKey | b64enc | quote }} - {{- end }} - {{- if eq .Values.provider "ns1" }} - ns1-api-key: {{ .Values.ns1.apiKey | b64enc | quote }} - {{- end }} - {{- if .Values.pihole.password }} - pihole_password: {{ .Values.pihole.password | b64enc | quote }} - {{- end }} - {{- if .Values.txtEncrypt.enabled }} - txt_aes_encryption_key: {{ .Values.txtEncrypt.aesKey | default (randAlphaNum 32 | replace "+" "-" | replace "/" "_") | b64enc | quote }} - {{- end }} -{{- end }} diff --git a/external-dns-9.0.3/templates/service.yaml b/external-dns-9.0.3/templates/service.yaml deleted file mode 100644 index 7563f1c4..00000000 --- a/external-dns-9.0.3/templates/service.yaml +++ /dev/null @@ -1,56 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if .Values.service.enabled -}} -apiVersion: v1 -kind: Service -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ include "common.names.namespace" . | quote }} - {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.service.labels .Values.commonLabels ) "context" . ) }} - labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} - {{- if .Values.service.annotations }} - annotations: {{ toYaml .Values.service.annotations | nindent 4 }} - {{- end }} -spec: - type: {{ .Values.service.type }} - {{- if and .Values.service.clusterIP (eq .Values.service.type "ClusterIP") }} - clusterIP: {{ .Values.service.clusterIP }} - {{- end }} - {{- if or (eq .Values.service.type "LoadBalancer") (eq .Values.service.type "NodePort") }} - externalTrafficPolicy: {{ .Values.service.externalTrafficPolicy | quote }} - {{- end }} - {{- if .Values.service.externalIPs }} - externalIPs: {{ toYaml .Values.service.externalIPs | nindent 4 }} - {{- end }} - {{- if and (eq .Values.service.type "ExternalName") .Values.service.externalName }} - externalName: {{ .Values.service.externalName }} - {{- end }} - {{- if and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerIP)) }} - loadBalancerIP: {{ .Values.service.loadBalancerIP }} - {{- end }} - {{- if and (eq .Values.service.type "LoadBalancer") (not (empty .Values.service.loadBalancerSourceRanges)) }} - loadBalancerSourceRanges: {{ .Values.service.loadBalancerSourceRanges }} - {{- end }} - {{- if .Values.service.sessionAffinity }} - sessionAffinity: {{ .Values.service.sessionAffinity }} - {{- end }} - {{- if .Values.service.sessionAffinityConfig }} - sessionAffinityConfig: {{- include "common.tplvalues.render" (dict "value" .Values.service.sessionAffinityConfig "context" $) | nindent 4 }} - {{- end }} - ports: - - name: http - port: {{ .Values.service.ports.http }} - protocol: TCP - targetPort: http - {{- if and (eq .Values.service.type "NodePort") (not (empty .Values.service.nodePorts.http)) }} - nodePort: {{ .Values.service.nodePorts.http }} - {{- end }} - {{- if .Values.service.extraPorts }} - {{- include "common.tplvalues.render" (dict "value" .Values.service.extraPorts "context" $) | nindent 4 }} - {{- end }} - {{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.podLabels .Values.commonLabels ) "context" . ) }} - selector: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 4 }} -{{- end }} diff --git a/external-dns-9.0.3/templates/serviceaccount.yaml b/external-dns-9.0.3/templates/serviceaccount.yaml deleted file mode 100644 index e23bf2ec..00000000 --- a/external-dns-9.0.3/templates/serviceaccount.yaml +++ /dev/null @@ -1,19 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if .Values.serviceAccount.create }} -apiVersion: v1 -kind: ServiceAccount -metadata: - name: {{ template "external-dns.serviceAccountName" . }} - namespace: {{ include "common.names.namespace" . | quote }} - {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.serviceAccount.labels .Values.commonLabels ) "context" . ) }} - labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} - {{- if or .Values.serviceAccount.annotations .Values.commonAnnotations }} - {{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.serviceAccount.annotations .Values.commonAnnotations ) "context" . ) }} - annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $) | nindent 4 }} - {{- end }} -automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} -{{- end }} diff --git a/external-dns-9.0.3/templates/servicemonitor.yaml b/external-dns-9.0.3/templates/servicemonitor.yaml deleted file mode 100644 index b0d124f3..00000000 --- a/external-dns-9.0.3/templates/servicemonitor.yaml +++ /dev/null @@ -1,52 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if and .Values.metrics.enabled .Values.metrics.serviceMonitor.enabled }} -apiVersion: monitoring.coreos.com/v1 -kind: ServiceMonitor -metadata: - name: {{ template "common.names.fullname" . }} - namespace: {{ default (include "common.names.namespace" .) .Values.metrics.serviceMonitor.namespace | quote }} - {{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.labels .Values.commonLabels ) "context" . ) }} - labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }} - {{- if or .Values.metrics.serviceMonitor.annotations .Values.commonAnnotations }} - {{- $annotations := include "common.tplvalues.merge" (dict "values" (list .Values.metrics.serviceMonitor.annotations .Values.commonAnnotations) "context" .) }} - annotations: {{- include "common.tplvalues.render" ( dict "value" $annotations "context" $ ) | nindent 4 }} - {{- end }} -spec: - endpoints: - - port: http - path: /metrics - {{- if .Values.metrics.serviceMonitor.interval }} - interval: {{ .Values.metrics.serviceMonitor.interval }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.scrapeTimeout }} - scrapeTimeout: {{ .Values.metrics.serviceMonitor.scrapeTimeout }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.honorLabels }} - honorLabels: {{ .Values.metrics.serviceMonitor.honorLabels }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.metricRelabelings }} - metricRelabelings: {{- include "common.tplvalues.render" ( dict "value" .Values.metrics.serviceMonitor.metricRelabelings "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.relabelings }} - relabelings: {{- include "common.tplvalues.render" ( dict "value" .Values.metrics.serviceMonitor.relabelings "context" $) | nindent 8 }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.jobLabel }} - jobLabel: {{ .Values.metrics.serviceMonitor.jobLabel }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.podTargetLabels }} - podTargetLabels: {{- include "common.tplvalues.render" ( dict "value" .Values.metrics.serviceMonitor.podTargetLabels "context" $) | nindent 4 }} - {{- end }} - {{- if .Values.metrics.serviceMonitor.targetLabels }} - targetLabels: {{- include "common.tplvalues.render" ( dict "value" .Values.metrics.serviceMonitor.targetLabels "context" $) | nindent 4 }} - {{- end }} - namespaceSelector: - matchNames: - - {{ include "common.names.namespace" . | quote }} - selector: - {{- $svcLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.metrics.serviceMonitor.selector .Values.commonLabels ) "context" . ) }} - matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $svcLabels "context" $ ) | nindent 6 }} -{{- end }} diff --git a/external-dns-9.0.3/templates/tls-secret.yaml b/external-dns-9.0.3/templates/tls-secret.yaml deleted file mode 100644 index 1daf779a..00000000 --- a/external-dns-9.0.3/templates/tls-secret.yaml +++ /dev/null @@ -1,29 +0,0 @@ -{{- /* -Copyright Broadcom, Inc. All Rights Reserved. -SPDX-License-Identifier: APACHE-2.0 -*/}} - -{{- if (include "external-dns.createTlsSecret" .) }} -{{- $secretName := printf "%s-crt" (include "common.names.fullname" .) | trunc 63 | trimSuffix "-" }} -{{- $ca := genCA "external-dns-ca" 365 }} -{{- $releaseNamespace := .Release.Namespace }} -{{- $clusterDomain := .Values.clusterDomain }} -{{- $fullname := include "common.names.fullname" . }} -{{- $serviceName := include "common.names.fullname" . }} -{{- $altNames := list (printf "*.%s.%s.svc.%s" $serviceName $releaseNamespace $clusterDomain) (printf "%s.%s.svc.%s" $serviceName $releaseNamespace $clusterDomain) $fullname }} -{{- $cert := genSignedCert $fullname nil $altNames 365 $ca }} -apiVersion: v1 -kind: Secret -metadata: - name: {{ $secretName }} - namespace: {{ include "common.names.namespace" . | quote }} - labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }} - {{- if .Values.commonAnnotations }} - annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }} - {{- end }} -type: kubernetes.io/tls -data: - tls.crt: {{ include "common.secrets.lookup" (dict "secret" $secretName "key" "tls.crt" "defaultValue" $cert.Cert "context" $) }} - tls.key: {{ include "common.secrets.lookup" (dict "secret" $secretName "key" "tls.key" "defaultValue" $cert.Key "context" $) }} - ca.crt: {{ include "common.secrets.lookup" (dict "secret" $secretName "key" "ca.crt" "defaultValue" $ca.Cert "context" $) }} -{{- end }} diff --git a/external-dns-9.0.3/values.yaml b/external-dns-9.0.3/values.yaml deleted file mode 100644 index 969591dd..00000000 --- a/external-dns-9.0.3/values.yaml +++ /dev/null @@ -1,1206 +0,0 @@ -# Copyright Broadcom, Inc. All Rights Reserved. -# SPDX-License-Identifier: APACHE-2.0 - -## @section Global parameters -## Global Docker image parameters -## Please, note that this will override the image parameters, including dependencies, configured to use the global value -## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass -## - -## @param global.imageRegistry Global Docker image registry -## @param global.imagePullSecrets Global Docker registry secret names as an array -## -global: - imageRegistry: "" - ## E.g. - ## imagePullSecrets: - ## - myRegistryKeySecretName - ## - imagePullSecrets: [] - ## Security parameters - ## - security: - ## @param global.security.allowInsecureImages Allows skipping image verification - allowInsecureImages: false - ## Compatibility adaptations for Kubernetes platforms - ## - compatibility: - ## Compatibility adaptations for Openshift - ## - openshift: - ## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation) - ## - adaptSecurityContext: auto -## @section Common parameters -## - -## @param nameOverride String to partially override common.names.fullname template (will maintain the release name) -## -nameOverride: "" -## @param fullnameOverride String to fully override common.names.fullname template -## -fullnameOverride: "" -## @param namespaceOverride String to fully override common.names.namespace -## -namespaceOverride: "" -## @param clusterDomain Kubernetes Cluster Domain -## -clusterDomain: cluster.local -## @param commonLabels Labels to add to all deployed objects -## -commonLabels: {} -## @param commonAnnotations Annotations to add to all deployed objects -## -commonAnnotations: {} -## -## @param extraDeploy Array of extra objects to deploy with the release (evaluated as a template). -## -extraDeploy: [] -## @param kubeVersion Force target Kubernetes version (using Helm capabilities if not set) -## -kubeVersion: "" - -## @section external-dns parameters -## - -## Bitnami external-dns image version -## ref: https://hub.docker.com/r/bitnami/external-dns/tags/ -## @param image.registry [default: REGISTRY_NAME] ExternalDNS image registry -## @param image.repository [default: REPOSITORY_NAME/external-dns] ExternalDNS image repository -## @skip image.tag ExternalDNS Image tag (immutable tags are recommended) -## @param image.digest ExternalDNS image digest in the way sha256:aa.... Please note this parameter, if set, will override the tag -## @param image.pullPolicy ExternalDNS image pull policy -## @param image.pullSecrets ExternalDNS image pull secrets -## -image: - registry: docker.io - repository: bitnami/external-dns - tag: 0.18.0-debian-12-r4 - digest: "" - ## Specify a imagePullPolicy - ## ref: https://kubernetes.io/docs/concepts/containers/images/#pre-pulled-images - ## - pullPolicy: IfNotPresent - ## Optionally specify an array of imagePullSecrets. - ## Secrets must be manually created in the namespace. - ## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ - ## e.g: - ## pullSecrets: - ## - myRegistryKeySecretName - ## - pullSecrets: [] -## @param revisionHistoryLimit sets number of replicaset to keep in k8s -## -revisionHistoryLimit: 10 -## @param automountServiceAccountToken Mount Service Account token in pod -## -automountServiceAccountToken: true -## @param hostAliases Deployment pod host aliases -## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/ -## -hostAliases: [] -## @param updateStrategy update strategy type -## ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#update-strategies -## -updateStrategy: {} -## @param command Override kiam default command -## -command: [] -## @param args Override kiam default args -## -args: [] -## @param sources [array] K8s resources type to be observed for new DNS entries by ExternalDNS -## -sources: - # - crd - - service - - ingress - # - contour-httpproxy -## @param provider DNS provider where the DNS records will be created. -## Available providers are: -## - akamai, alibabacloud, aws, azure, azure-private-dns, civo, cloudflare, coredns, digitalocean, exoscale, google, linode, ns1, oci, ovh, pdns, pihole, rfc2136, scaleway, transip -## -provider: aws -## @param initContainers Attach additional init containers to the pod (evaluated as a template) -## -initContainers: [] -## DNS-Pod services -## Ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/ -## @param dnsPolicy Specifies the DNS policy for the external-dns deployment -## DNS policies can be set on a per-Pod basis. Currently Kubernetes supports the following Pod-specific DNS policies. -## Available options: Default, ClusterFirst, ClusterFirstWithHostNet, None -## Ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy -dnsPolicy: "" -## @param dnsConfig allows users more control on the DNS settings for a Pod. Required if `dnsPolicy` is set to `None` -## The dnsConfig field is optional and it can work with any dnsPolicy settings. -## Ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config -## E.g. -## dnsConfig: -## nameservers: -## - 192.0.2.1 # this is an example -## searches: -## - ns1.svc.cluster-domain.example -## - my.dns.search.suffix -## options: -## - name: ndots -## value: "2" -## - name: edns0 -dnsConfig: {} -## @param sidecars Attach additional containers to the pod (evaluated as a template) -## -sidecars: [] -## Flags related to processing sources -## ref: https://github.com/kubernetes-sigs/external-dns/blob/master/pkg/apis/externaldns/types.go#L272 -## @param namespace Limit sources of endpoints to a specific namespace (default: all namespaces) -## -namespace: "" -## @param watchReleaseNamespace Watch only namespace used for the release -## -watchReleaseNamespace: false -## @param fqdnTemplates Templated strings that are used to generate DNS names from sources that don't define a hostname themselves -## -fqdnTemplates: [] -## @param containerPorts.http HTTP Container port -## -containerPorts: - http: 7979 -## @param combineFQDNAnnotation Combine FQDN template and annotations instead of overwriting -## -combineFQDNAnnotation: false -## @param ignoreHostnameAnnotation Ignore hostname annotation when generating DNS names, valid only when fqdn-template is set -## -ignoreHostnameAnnotation: false -## @param publishInternalServices Allow external-dns to publish DNS records for ClusterIP services -## -publishInternalServices: false -## @param publishHostIP Allow external-dns to publish host-ip for headless services -## -publishHostIP: false -## @param serviceTypeFilter The service types to take care about (default: all, options: ClusterIP, NodePort, LoadBalancer, ExternalName) -## -serviceTypeFilter: [] -## Chart Validation -## -validation: - ## @param validation.enabled Enable chart validation - ## - enabled: true -## Akamai configuration to be set via arguments/env. variables -## -akamai: - ## @param akamai.host Hostname to use for EdgeGrid auth - ## - host: "" - ## @param akamai.accessToken Access Token to use for EdgeGrid auth - ## - accessToken: "" - ## @param akamai.clientToken Client Token to use for EdgeGrid auth - ## - clientToken: "" - ## @param akamai.clientSecret When using the Akamai provider, `AKAMAI_CLIENT_SECRET` to set (optional) - ## - clientSecret: "" - ## @param akamai.secretName Use an existing secret with key "akamai_api_seret" defined. - ## This ignores akamai.clientSecret - ## - secretName: "" -## Alibaba cloud configuration to be set via arguments/env. variables -## These will be added to /etc/kubernetes/alibaba-cloud.json via secret -## -alibabacloud: - ## @param alibabacloud.accessKeyId When using the Alibaba Cloud provider, set `accessKeyId` in the Alibaba Cloud configuration file (optional) - ## - accessKeyId: "" - ## @param alibabacloud.accessKeySecret When using the Alibaba Cloud provider, set `accessKeySecret` in the Alibaba Cloud configuration file (optional) - ## - accessKeySecret: "" - ## @param alibabacloud.regionId When using the Alibaba Cloud provider, set `regionId` in the Alibaba Cloud configuration file (optional) - ## - regionId: "" - ## @param alibabacloud.vpcId Alibaba Cloud VPC Id - ## - vpcId: "" - ## @param alibabacloud.secretName Use an existing secret with key "alibaba-cloud.json" defined. - ## This ignores alibabacloud.accessKeyId, and alibabacloud.accessKeySecret - ## - secretName: "" - ## @param alibabacloud.zoneType Zone Filter. Available values are: public, private, or no value for both - ## - zoneType: "" -## AWS configuration to be set via arguments/env. variables -## -aws: - ## AWS credentials - ## @param aws.credentials.secretKey When using the AWS provider, set `aws_secret_access_key` in the AWS credentials (optional) - ## @param aws.credentials.accessKey When using the AWS provider, set `aws_access_key_id` in the AWS credentials (optional) - ## @param aws.credentials.mountPath When using the AWS provider, determine `mountPath` for `credentials` secret - ## - credentials: - secretKey: "" - accessKey: "" - ## Before external-dns 0.5.9 home dir should be `/root/.aws` - ## - mountPath: "/.aws" - ## @param aws.credentials.secretName Use an existing secret with key "credentials" defined. - ## This ignores aws.credentials.secretKey, and aws.credentials.accessKey - ## - secretName: "" - ## AWS access key id stored in key-value secret. - ## If aws.credentials.accessKeyIDSecretRef and aws.credentials.secretAccessKeySecretRef defined aws.credentials.secretKey, aws.credentials.accessKey and aws.credentials.secretName are ignored - ## @param aws.credentials.accessKeyIDSecretRef.name Define the name of the secret that stores aws_access_key_id. - ## @param aws.credentials.accessKeyIDSecretRef.key Define the key of the secret that stores aws_access_key_id. - ## - accessKeyIDSecretRef: - name: "" - key: "" - ## AWS secret access key stored in key-value secret - ## @param aws.credentials.secretAccessKeySecretRef.name Define the name of the secret that stores aws_secret_access_key - ## @param aws.credentials.secretAccessKeySecretRef.key Define the key of the secret that stores aws_secret_access_key - ## - secretAccessKeySecretRef: - name: "" - key: "" - ## @param aws.region When using the AWS provider, `AWS_DEFAULT_REGION` to set in the environment (optional) - ## - region: "us-east-1" - ## @param aws.zoneType When using the AWS provider, filter for zones of this type (optional, options: public, private) - ## - zoneType: "" - ## @param aws.assumeRoleArn When using the AWS provider, assume role by specifying --aws-assume-role to the external-dns daemon - ## - assumeRoleArn: "" - ## @param aws.roleArn Specify role ARN to the external-dns daemon - ## - roleArn: "" - ## @param aws.apiRetries Maximum number of retries for AWS API calls before giving up - ## - apiRetries: 3 - ## @param aws.batchChangeSize When using the AWS provider, set the maximum number of changes that will be applied in each batch - ## - batchChangeSize: 1000 - ## @param aws.zonesCacheDuration If the list of Route53 zones managed by ExternalDNS doesn't change frequently, cache it by setting a TTL - ## (default 0 - disabled, can be set to time interval like 1m or 1h) - ## - zonesCacheDuration: 0 - ## @param aws.zoneTags When using the AWS provider, filter for zones with these tags - ## - zoneTags: [] - ## @param aws.preferCNAME When using the AWS provider, replaces Alias records with CNAME (options: true, false) - ## - preferCNAME: "" - ## @param aws.evaluateTargetHealth When using the AWS provider, sets the evaluate target health flag (options: true, false) - ## - evaluateTargetHealth: "" - ## @param aws.dynamodbTable When using the AWS provider, sets the DynamoDB table name to use for dynamodb registry - ## ref: https://github.com/kubernetes-sigs/external-dns/blob/0483ffde22e60436f16be154b9fe1a388a1400d0/docs/registry/dynamodb.md - ## - dynamodbTable: "" - ## @param aws.dynamodbRegion When using the AWS provider, sets the DynamoDB table region to use for dynamodb registry - ## ref: https://github.com/kubernetes-sigs/external-dns/blob/0483ffde22e60436f16be154b9fe1a388a1400d0/docs/registry/dynamodb.md - ## - dynamodbRegion: "" - ## @param aws.zoneMatchParent When using the AWS provider, lets a domain filter match subdomains within the same zone by using their parent domain - ## - zoneMatchParent: false -## Azure configuration to be set via arguments/env. variables -## -azure: - ## When a secret to load azure.json is not specified, the host's /etc/kubernetes/azure.json will be used - ## @param azure.secretName When using the Azure provider, set the secret containing the `azure.json` file - ## - secretName: "" - ## @param azure.cloud When using the Azure provider, set the Azure Cloud - ## - cloud: "" - ## @param azure.resourceGroup When using the Azure provider, set the Azure Resource Group - ## - resourceGroup: "" - ## @param azure.tenantId When using the Azure provider, set the Azure Tenant ID - ## - tenantId: "" - ## @param azure.subscriptionId When using the Azure provider, set the Azure Subscription ID - ## - subscriptionId: "" - ## @param azure.aadClientId When using the Azure provider, set the Azure AAD Client ID - ## - aadClientId: "" - ## @param azure.aadClientSecret When using the Azure provider, set the Azure AAD Client Secret - ## - aadClientSecret: "" - ## @param azure.useWorkloadIdentityExtension When using the Azure provider, set if you use Workload Identity extension. - ## - useWorkloadIdentityExtension: false - ## @param azure.useManagedIdentityExtension When using the Azure provider, set if you use Azure MSI - ## - useManagedIdentityExtension: false - ## @param azure.userAssignedIdentityID When using the Azure provider with Azure MSI, set Client ID of Azure user-assigned managed identity (optional, otherwise system-assigned managed identity is used) - ## - userAssignedIdentityID: "" -## Civo configuration to be set via arguments/env. variables -## -civo: - ## @param civo.apiToken When using the Civo provider, `CIVO_TOKEN` to set (optional) - ## - apiToken: "" - ## @param civo.secretName Use an existing secret with key "apiToken" defined. - ## This ignores civo.apiToken - ## - secretName: "" -## Cloudflare configuration to be set via arguments/env. variables -## -cloudflare: - ## @param cloudflare.apiToken When using the Cloudflare provider, `CF_API_TOKEN` to set (optional) - ## - apiToken: "" - ## @param cloudflare.apiKey When using the Cloudflare provider, `CF_API_KEY` to set (optional) - ## - apiKey: "" - ## @param cloudflare.secretName When using the Cloudflare provider, it's the name of the secret containing cloudflare_api_token or cloudflare_api_key. - ## This ignores cloudflare.apiToken, and cloudflare.apiKey - ## - secretName: "" - ## @param cloudflare.email When using the Cloudflare provider, `CF_API_EMAIL` to set (optional). Needed when using CF_API_KEY - ## - email: "" - ## @param cloudflare.proxied When using the Cloudflare provider, enable the proxy feature (DDOS protection, CDN...) (optional) - ## - proxied: true - ## @param cloudflare.dnsRecordsPerPage Number of DNS records to fetch per page. (optional) - ## When using the Cloudflare provider, specify how many DNS records listed per page, max possible 5,000 (default: 100) - ## - dnsRecordsPerPage: 100 - ## @param cloudflare.regionalServices Enable configuration of Cloudflare Regional Services. (optional) - ## - regionalServices: false - ## @param cloudflare.regionKey Set default region, when Cloudflare Regional Services are enabled. (optional) - ## Using the "external-dns.alpha.kubernetes.io/cloudflare-region-key" annotation on your ingress, you can specify the region for that record. - ## - regionKey: "" -## CoreDNS configuration to be set via arguments/env variables -## -coredns: - ## @param coredns.etcdEndpoints When using the CoreDNS provider, set etcd backend endpoints (comma-separated list) - ## Secure (https) endpoints can be used as well, in that case `etcdTLS` section - ## should be filled in accordingly - ## - etcdEndpoints: "http://etcd-extdns:2379" - ## Configuration of the secure communication and client authentication to the etcd cluster - ## If enabled all the values under this key must hold a valid data - ## - etcdTLS: - ## @param coredns.etcdTLS.enabled When using the CoreDNS provider, enable secure communication with etcd - ## - enabled: false - ## @param coredns.etcdTLS.autoGenerated Generate automatically self-signed TLS certificates - ## - autoGenerated: false - ## @param coredns.etcdTLS.secretName When using the CoreDNS provider, specify a name of existing Secret with etcd certs and keys - ## ref: https://github.com/etcd-io/etcd/blob/master/Documentation/op-guide/security.md - ## ref (secret creation): - ## https://github.com/bitnami/charts/tree/main/bitnami/etcd#configure-certificates-for-client-communication - ## - secretName: "etcd-client-certs" - ## @param coredns.etcdTLS.mountPath When using the CoreDNS provider, set destination dir to mount data from `coredns.etcdTLS.secretName` to - ## - mountPath: "/etc/coredns/tls/etcd" - ## @param coredns.etcdTLS.caFilename When using the CoreDNS provider, specify CA PEM file name from the `coredns.etcdTLS.secretName` - ## - caFilename: "ca.crt" - ## @param coredns.etcdTLS.certFilename When using the CoreDNS provider, specify cert PEM file name from the `coredns.etcdTLS.secretName` - ## Will be used by external-dns to authenticate against etcd - ## - certFilename: "cert.pem" - ## @param coredns.etcdTLS.keyFilename When using the CoreDNS provider, specify private key PEM file name from the `coredns.etcdTLS.secretName` - ## Will be used by external-dns to authenticate against etcd - ## - keyFilename: "key.pem" -## Exoscale configuration to be set via arguments/env. variables -## -exoscale: - ## @param exoscale.apiKey When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APIKEY` to set (optional) - ## - apiKey: "" - ## @param exoscale.apiToken When using the Exoscale provider, `EXTERNAL_DNS_EXOSCALE_APISECRET` to set (optional) - ## - apiToken: "" - ## @param exoscale.secretName Use an existing secret with keys "exoscale_api_key" and "exoscale_api_token" defined. - ## This ignores exoscale.apiKey and exoscale.apiToken - ## - secretName: "" -## Google configuration to be set via arguments/env. variables -## -## DigitalOcean configuration to be set via arguments/env. variables -## -digitalocean: - ## @param digitalocean.apiToken When using the DigitalOcean provider, `DO_TOKEN` to set (optional) - ## - apiToken: "" - ## @param digitalocean.secretName Use an existing secret with key "digitalocean_api_token" defined. - ## This ignores digitalocean.apiToken - ## - secretName: "" -## Google configuration to be set via arguments/env. variables -## -google: - ## @param google.project When using the Google provider, specify the Google project (required when provider=google) - ## - project: "" - ## @param google.batchChangeSize When using the google provider, set the maximum number of changes that will be applied in each batch - ## - batchChangeSize: 1000 - ## @param google.serviceAccountSecret When using the Google provider, specify the existing secret which contains credentials.json (optional) - ## - serviceAccountSecret: "" - ## @param google.serviceAccountSecretKey When using the Google provider with an existing secret, specify the key name (optional) - ## - serviceAccountSecretKey: "credentials.json" - ## @param google.serviceAccountKey When using the Google provider, specify the service account key JSON file. In this case a new secret will be created holding this service account (optional) - ## - serviceAccountKey: "" - ## @param google.zoneVisibility When using the Google provider, fiter for zones of a specific visibility (private or public) - ## - zoneVisibility: "" -## Linode configuration to be set via arguments/env. variables -## -linode: - ## @param linode.apiToken When using the Linode provider, `LINODE_TOKEN` to set (optional) - ## - apiToken: "" - ## @param linode.secretName Use an existing secret with key "linode_api_token" defined. - ## This ignores linode.apiToken - ## - secretName: "" -## NS1 configuration to be set via arguments/env. variables -## -ns1: - ## @param ns1.minTTL When using the ns1 provider, specify minimal TTL, as an integer, for records - ## - minTTL: 10 - ## @param ns1.apiKey When using the ns1 provider, specify the API key to use - ## - apiKey: "" - ## @param ns1.secretName Use an existing secret with key "ns1-api-key" defined. - ## This ignores ns1.apiToken - ## - secretName: "" -## Pi-hole configuration to be set via arguments/env. variables -## -pihole: - ## @param pihole.server When using the Pi-hole provider, specify The address of the Pi-hole web server - ## - server: "" - ## @param pihole.tlsSkipVerify When using the Pi-hole provider, specify wheter to skip verification of any TLS certificates served by the Pi-hole web server - ## - tlsSkipVerify: "" - ## @param pihole.password When using the Pi-hole provider, specify a password to use - ## - password: "" - ## @param pihole.secretName Use an existing secret with key "pihole_password" defined. - ## - secretName: "" -## Compatibility adaptations for Traefik -## -traefik: - ## @param traefik.disableNew Disable listeners on Resources under traefik.io - ## - disableNew: false - ## @param traefik.disableLegacy Disable listeners on Resources under traefik.containo.us - ## - disableLegacy: false -## oci configuration to be set via arguments/env. variables -## -oci: - ## @param oci.region When using the OCI provider, specify the region, where your zone is located in. - ## - region: "" - ## @param oci.tenancyOCID When using the OCI provider, specify your Tenancy OCID - ## - tenancyOCID: "" - ## @param oci.userOCID When using the OCI provider, specify your User OCID - ## - userOCID: "" - ## @param oci.compartmentOCID When using the OCI provider, specify your Compartment OCID where your DNS Zone is located in. - ## - compartmentOCID: "" - ## @param oci.privateKey [string] When using the OCI provider, paste in your RSA private key file for the Oracle API - ## - privateKey: | - -----BEGIN RSA PRIVATE KEY----- - -----END RSA PRIVATE KEY----- - ## @param oci.privateKeyFingerprint When using the OCI provider, put in the fingerprint of your privateKey - ## - privateKeyFingerprint: "" - ## @param oci.privateKeyPassphrase When using the OCI provider and your privateKey has a passphrase, put it in here. (optional) - ## - privateKeyPassphrase: "" - ## @param oci.secretName When using the OCI provider, it's the name of the secret containing `oci.yaml` file. - ## Ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/oracle.md#deploy-externaldns - ## - secretName: "" - ## @param oci.useInstancePrincipal When using the OCI provider, enable IAM Instance Principal - ## Ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/oracle.md#oci-iam-instance-principal - useInstancePrincipal: false - ## @param oci.useWorkloadIdentity When using the OCI provider, enable IAM Workload Identity - ## Ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/oracle.md#oci-iam-instance-principal - useWorkloadIdentity: false -## OVH configuration to be set via arguments/env. variables -## -ovh: - ## @param ovh.consumerKey When using the OVH provider, specify the existing consumer key. (required when provider=ovh and `ovh.secretName` is not provided.) - ## - consumerKey: "" - ## @param ovh.applicationKey When using the OVH provider with an existing application, specify the application key. (required when provider=ovh and `ovh.secretName` is not provided.) - ## - applicationKey: "" - ## @param ovh.applicationSecret When using the OVH provider with an existing application, specify the application secret. (required when provider=ovh and `ovh.secretName` is not provided.) - ## - applicationSecret: "" - ## @param ovh.secretName When using the OVH provider, it's the name of the secret containing `ovh_consumer_key`, `ovh_application_key` and `ovh_application_secret`. Disables usage of other `ovh`. - ## with following keys: - ## - ovh_consumer_key - ## - ovh_application_key - ## - ovh_application_secret - ## This ignores consumerKey, applicationKey & applicationSecret - ## - secretName: "" -## Scaleway configuration to be set via arguments/env. variables -## -scaleway: - ## @param scaleway.scwAccessKey When using the Scaleway provider, specify an existing access key. (required when provider=scaleway) - ## - scwAccessKey: "" - ## @param scaleway.scwSecretKey When using the Scaleway provider, specify an existing secret key. (required when provider=scaleway) - ## - scwSecretKey: "" - ## @param scaleway.secretName Use an existing secret with keys "scaleway_access_key" and "scaleway_secret_key" defined (optional). - ## This ignores scaleway.scwAccessKey and scaleway.scwSecretKey - ## - secretName: "" -## RFC 2136 configuration to be set via arguments/env. variables -## -rfc2136: - ## @param rfc2136.host When using the rfc2136 provider, specify the RFC2136 host (required when provider=rfc2136) - ## - host: "" - ## @param rfc2136.port When using the rfc2136 provider, specify the RFC2136 port (optional) - ## - port: 53 - ## @param rfc2136.zone DEPRECATED: use rfc2136.zones instead. - ## Currently, the contents of rfc2136.zone and rfc2136.zones will be merged and deduplicated, in a future release this value will be removed in favor of `rfc2136.zones`. - ## - zone: "" - ## @param rfc2136.zones When using the rfc2136 provider, specify the zones (required when provider=rfc2136 and `rfc2136.zone` is not provided.) - ## - zones: [] - ## @param rfc2136.tsigSecret When using the rfc2136 provider, specify the tsig secret to enable security. (do not specify if `rfc2136.secretName` is provided.) (optional) - ## - tsigSecret: "" - ## @param rfc2136.secretName When using the rfc2136 provider, specify the existing secret which contains your tsig secret in the key "rfc2136_tsig_secret". Disables the usage of `rfc2136.tsigSecret` (optional) - ## - secretName: "" - ## @param rfc2136.tsigSecretAlg When using the rfc2136 provider, specify the tsig secret to enable security (optional) - ## - tsigSecretAlg: hmac-sha256 - ## @param rfc2136.tsigKeyname When using the rfc2136 provider, specify the tsig keyname to enable security (optional) - ## - tsigKeyname: rfc2136_tsig_secret - ## @param rfc2136.tsigAxfr When using the rfc2136 provider, enable AFXR to enable security (optional) - ## - tsigAxfr: true - ## @param rfc2136.minTTL When using the rfc2136 provider, specify minimal TTL (in duration format) for records[ns, us, ms, s, m, h], see more - ## - minTTL: "0s" - ## @param rfc2136.rfc3645Enabled When using the rfc2136 provider, extend using RFC3645 to support secure updates over Kerberos with GSS-TSIG - ## - rfc3645Enabled: false - ## @param rfc2136.kerberosConfig When using the rfc2136 provider with rfc3645Enabled, the contents of a configuration file for krb5 (optional) - ## - kerberosConfig: "" - ## @param rfc2136.kerberosUsername When using the rfc2136 provider with rfc3645Enabled, specify the username to authenticate with (optional) - ## - kerberosUsername: "" - ## @param rfc2136.kerberosPassword When using the rfc2136 provider with rfc3645Enabled, specify the password to authenticate with (optional) - ## - kerberosPassword: "" - ## @param rfc2136.kerberosRealm When using the rfc2136 provider with rfc3645Enabled, specify the realm to authenticate to (required when provider=rfc2136 and rfc2136.rfc3645Enabled=true) - ## - kerberosRealm: "" -## PowerDNS configuration to be set via arguments/env. variables -## -pdns: - ## @param pdns.apiUrl When using the PowerDNS provider, specify the API URL of the server. - ## - apiUrl: "" - ## @param pdns.apiPort When using the PowerDNS provider, specify the API port of the server. - ## - apiPort: "8081" - ## @param pdns.apiKey When using the PowerDNS provider, specify the API key of the server. - ## - apiKey: "" - ## @param pdns.secretName When using the PowerDNS provider, specify as secret name containing the API Key - ## - secretName: "" -## TransIP configuration to be set via arguments/env. variables -## -transip: - ## @param transip.account When using the TransIP provider, specify the account name. - ## - account: "" - ## @param transip.apiKey When using the TransIP provider, specify the API key to use. - ## - apiKey: "" -## @param domainFilters Limit possible target zones by domain suffixes (optional) -## -domainFilters: [] -## @param excludeDomains Exclude subdomains (optional) -## -excludeDomains: [] -## @param regexDomainFilter Limit possible target zones by regex domain suffixes (optional) -## If regexDomainFilter is specified, domainFilters will be ignored -## -regexDomainFilter: "" -## @param regexDomainExclusion Exclude subdomains by using regex pattern (optional) -## If regexDomainFilter is specified, excludeDomains will be ignored and external-dns will use regexDomainExclusion even though regexDomainExclusion is empty -## -regexDomainExclusion: "" -## @param zoneNameFilters Filter target zones by zone domain (optional) -## -zoneNameFilters: [] -## @param zoneIdFilters Limit possible target zones by zone id (optional) -## -zoneIdFilters: [] -## @param annotationFilter Filter sources managed by external-dns via annotation using label selector (optional) -## -annotationFilter: "" -## @param labelFilter Select sources managed by external-dns using label selector (optional) -## -labelFilter: "" -## @param ingressClassFilters Filter sources managed by external-dns via IngressClass (optional) -## -ingressClassFilters: [] -## @param managedRecordTypesFilters Filter record types managed by external-dns (optional) -## -managedRecordTypesFilters: [] -## @param dryRun When enabled, prints DNS record changes rather than actually performing them (optional) -## -dryRun: false -## @param triggerLoopOnEvent When enabled, triggers run loop on create/update/delete events in addition to regular interval (optional) -## -triggerLoopOnEvent: false -## @param interval Interval update period to use -## -interval: "1m" -## @param logLevel Verbosity of the logs (options: panic, debug, info, warning, error, fatal, trace) -## -logLevel: info -## @param logFormat Which format to output logs in (options: text, json) -## -logFormat: text -## @param policy Modify how DNS records are synchronized between sources and providers (options: sync, upsert-only ) -## -policy: upsert-only -## @param registry Registry method to use (options: txt, aws-sd, dynamodb, noop) -## ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/registry/registry.md -## -registry: "txt" -## @param txtPrefix When using the TXT registry, a prefix for ownership records that avoids collision with CNAME entries (optional) (Mutual exclusive with txt-suffix) -## -txtPrefix: "" -## @param txtSuffix When using the TXT registry, a suffix for ownership records that avoids collision with CNAME entries (optional).suffix (Mutual exclusive with txt-prefix) -## -txtSuffix: "" -## @param txtNewFormatOnly When using the TXT registry, use only the new format for ownership records (optional) -## ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/registry/txt.md#record-format-options -## -txtNewFormatOnly: false -## @param txtOwnerId A name that identifies this instance of ExternalDNS. Currently used by registry types: txt & aws-sd (optional) -## But other registry types might be added in the future. -## -txtOwnerId: "" -## @param forceTxtOwnerId (backward compatibility) When using the non-TXT registry, it will pass the value defined by `txtOwnerId` down to the application (optional) -## This setting added for backward compatibility for -## customers who already used bitnami/external-dns helm chart -## to privision 'aws-sd' registry type. -## Previously bitnami/external-dns helm chart did not pass -## txtOwnerId value down to the external-dns application -## so the app itself sets that value to be a string 'default'. -## If existing customers force the actual txtOwnerId value to be -## passed properly, their external-dns updates will stop working -## because the owner's value for exting DNS records in -## AWS Service Discovery would remain 'default'. -## NOTE: It is up to the end user to update AWS Service Discovery -## 'default' values in description fields to make it work with new -## value passed as txtOwnerId when forceTxtOwnerId=true -## -forceTxtOwnerId: false -## TXT registry record encryption -## ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/registry/txt.md#encryption -## -txtEncrypt: - ## @param txtEncrypt.enabled Enable TXT record encryption - ## - enabled: false - ## @param txtEncrypt.aesKey 32-byte AES-256-GCM encryption key. - ## ref: https://github.com/kubernetes-sigs/external-dns/blob/master/docs/registry/txt.md#generating-the-txt-encryption-key - ## Note: If txtEncrypt.enabled is enabled and txtEncrypt.aesKey is not set, a default key will be generated. - ## - aesKey: "" - ## @param txtEncrypt.secretName Use an existing secret with key "txt_aes_encryption_key" defined. - ## This ignores txtEncrypt.aesKey - ## - secretName: "" -## @param extraArgs Extra arguments to be passed to external-dns -## -extraArgs: {} -##extraArgs: -## rfc2136-zone: -## - extra-zone1.com -## - extra-zone2.com -## @param extraEnvVars An array to add extra env vars -## -extraEnvVars: [] -## @param extraEnvVarsCM ConfigMap containing extra env vars -## -extraEnvVarsCM: "" -## @param extraEnvVarsSecret Secret containing extra env vars (in case of sensitive data) -## -extraEnvVarsSecret: "" -## @param lifecycleHooks [object] Override default etcd container hooks -## -lifecycleHooks: {} -## @param schedulerName Alternative scheduler -## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/ -## -schedulerName: "" -## @param topologySpreadConstraints Topology Spread Constraints for pod assignment -## https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/ -## The value is evaluated as a template -## -topologySpreadConstraints: [] -## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` -## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## -podAffinityPreset: "" -## @param podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` -## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity -## Allowed values: soft, hard -## -podAntiAffinityPreset: soft -## Node affinity preset -## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity -## -nodeAffinityPreset: - ## @param nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` - ## - type: "" - ## @param nodeAffinityPreset.key Node label key to match Ignored if `affinity` is set. - ## E.g. - ## key: "kubernetes.io/e2e-az-name" - ## - key: "" - ## @param nodeAffinityPreset.values Node label values to match. Ignored if `affinity` is set. - ## E.g. - ## values: - ## - e2e-az1 - ## - e2e-az2 - ## - values: [] -## @param affinity Affinity for pod assignment -## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity -## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set -## -affinity: {} -## @param nodeSelector Node labels for pod assignment -## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ -## -nodeSelector: {} -## @param tolerations Tolerations for pod assignment -## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ -## -tolerations: [] -## @param podAnnotations Additional annotations to apply to the pod. -## -podAnnotations: {} -## @param podLabels Additional labels to be added to pods -## -podLabels: {} -## @param priorityClassName priorityClassName -## -priorityClassName: "" -## @param secretAnnotations Additional annotations to apply to the secret -## -secretAnnotations: {} -## Options for the source type "crd" -## -crd: - ## @param crd.create Install and use the integrated DNSEndpoint CRD - ## - create: false - ## @param crd.apiversion Sets the API version for the CRD to watch - ## - apiversion: "" - ## @param crd.kind Sets the kind for the CRD to watch - ## - kind: "" -## Kubernetes svc configutarion -## -service: - ## @param service.enabled Whether to create Service resource or not - ## - enabled: true - ## @param service.type Kubernetes Service type - ## - type: ClusterIP - ## @param service.ports.http ExternalDNS client port - ## - ports: - http: 7979 - ## @param service.nodePorts.http Port to bind to for NodePort service type (client port) - ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport - ## - nodePorts: - http: "" - ## @param service.clusterIP IP address to assign to service - ## - clusterIP: "" - ## @param service.externalIPs Service external IP addresses - ## - externalIPs: [] - ## @param service.externalName Service external name - ## - externalName: "" - ## @param service.loadBalancerIP IP address to assign to load balancer (if supported) - ## - loadBalancerIP: "" - ## @param service.loadBalancerSourceRanges List of IP CIDRs allowed access to load balancer (if supported) - ## - loadBalancerSourceRanges: [] - ## @param service.externalTrafficPolicy Enable client source IP preservation - ## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip - ## - externalTrafficPolicy: Cluster - ## @param service.extraPorts Extra ports to expose in the service (normally used with the `sidecar` value) - ## - extraPorts: [] - ## @param service.annotations Annotations to add to service - ## set the LoadBalancer service type to internal only. - ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer - ## - annotations: {} - ## @param service.labels Provide any additional labels which may be required. - ## This can be used to have external-dns show up in `kubectl cluster-info` - ## kubernetes.io/cluster-service: "true" - ## kubernetes.io/name: "external-dns" - ## - labels: {} - ## @param service.sessionAffinity Session Affinity for Kubernetes service, can be "None" or "ClientIP" - ## If "ClientIP", consecutive client requests will be directed to the same Pod - ## ref: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies - ## - sessionAffinity: None - ## @param service.sessionAffinityConfig Additional settings for the sessionAffinity - ## sessionAffinityConfig: - ## clientIP: - ## timeoutSeconds: 300 - ## - sessionAffinityConfig: {} -## Network Policies -## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/ -## -networkPolicy: - ## @param networkPolicy.enabled Specifies whether a NetworkPolicy should be created - ## - enabled: true - ## @param networkPolicy.allowExternal Don't require server label for connections - ## The Policy model to apply. When set to false, only pods with the correct - ## server label will have network access to the ports server is listening - ## on. When true, server will accept connections from any source - ## (with the correct destination port). - ## - allowExternal: true - ## @param networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations. - ## - allowExternalEgress: true - ## @param networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security) - ## - kubeAPIServerPorts: [443, 6443, 8443] - ## @param networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolicy - ## e.g: - ## extraIngress: - ## - ports: - ## - port: 1234 - ## from: - ## - podSelector: - ## - matchLabels: - ## - role: frontend - ## - podSelector: - ## - matchExpressions: - ## - key: role - ## operator: In - ## values: - ## - frontend - extraIngress: [] - ## @param networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy - ## e.g: - ## extraEgress: - ## - ports: - ## - port: 1234 - ## to: - ## - podSelector: - ## - matchLabels: - ## - role: frontend - ## - podSelector: - ## - matchExpressions: - ## - key: role - ## operator: In - ## values: - ## - frontend - ## - extraEgress: [] - ## @param networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces - ## @param networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces - ## - ingressNSMatchLabels: {} - ingressNSPodMatchLabels: {} -## ServiceAccount parameters -## https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ -## -serviceAccount: - ## @param serviceAccount.create Determine whether a Service Account should be created or it should reuse a exiting one. - ## - create: true - ## @param serviceAccount.name ServiceAccount to use. A name is generated using the common.names.fullname template if it is not set - ## - name: "" - ## @param serviceAccount.annotations Additional Service Account annotations - ## - annotations: {} - ## @param serviceAccount.automountServiceAccountToken Automount API credentials for a service account. - ## - automountServiceAccountToken: false - ## @param serviceAccount.labels [object] Additional labels to be included on the service account - ## - labels: {} -## RBAC parameters -## https://kubernetes.io/docs/reference/access-authn-authz/rbac/ -## -rbac: - ## @param rbac.create Whether to create & use RBAC resources or not - ## - create: true - ## @param rbac.clusterRole Whether to create Cluster Role. When set to false creates a Role in `namespace` - ## - clusterRole: true - ## @param rbac.apiVersion Version of the RBAC API - ## - apiVersion: v1 - ## @param rbac.pspEnabled Whether to create a PodSecurityPolicy. WARNING: PodSecurityPolicy is deprecated in Kubernetes v1.21 or later, unavailable in v1.25 or later - ## - pspEnabled: false -## @param containerSecurityContext.enabled Enabled Apache Server containers' Security Context -## @param containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container -## @param containerSecurityContext.runAsUser Set ExternalDNS containers' Security Context runAsUser -## @param containerSecurityContext.runAsGroup Set ExternalDNS containers' Security Context runAsGroup -## @param containerSecurityContext.runAsNonRoot Set ExternalDNS container's Security Context runAsNonRoot -## @param containerSecurityContext.privileged Set primary container's Security Context privileged -## @param containerSecurityContext.allowPrivilegeEscalation Set primary container's Security Context allowPrivilegeEscalation -## @param containerSecurityContext.capabilities.drop List of capabilities to be dropped -## @param containerSecurityContext.readOnlyRootFilesystem Set container readonlyRootFilesystem -## @param containerSecurityContext.seccompProfile.type Set container's Security Context seccomp profile -## https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ -## Example: -## containerSecurityContext: -## allowPrivilegeEscalation: false -## readOnlyRootFilesystem: true -## capabilities: -## drop: ["ALL"] -## -containerSecurityContext: - enabled: true - seLinuxOptions: {} - runAsUser: 1001 - runAsGroup: 1001 - runAsNonRoot: true - privileged: false - allowPrivilegeEscalation: false - readOnlyRootFilesystem: true - capabilities: - drop: ["ALL"] - seccompProfile: - type: "RuntimeDefault" -## @param podSecurityContext.enabled Enable pod security context -## @param podSecurityContext.fsGroupChangePolicy Set filesystem group change policy -## @param podSecurityContext.sysctls Set kernel settings using the sysctl interface -## @param podSecurityContext.supplementalGroups Set filesystem extra groups -## @param podSecurityContext.fsGroup Group ID for the container -## -podSecurityContext: - enabled: true - fsGroupChangePolicy: Always - sysctls: [] - supplementalGroups: [] - fsGroup: 1001 -## Container resource requests and limits -## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/ -## We usually recommend not to specify default resources and to leave this as a conscious -## choice for the user. This also increases chances charts run on environments with little -## resources, such as Minikube. If you do want to specify resources, uncomment the following -## lines, adjust them as necessary, and remove the curly braces after 'resources:'. -## @param resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if resources is set (resources is recommended for production). -## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15 -## -resourcesPreset: "nano" -## @param resources Set container requests and limits for different resources like CPU or memory (essential for production workloads) -## Example: -## resources: -## requests: -## cpu: 2 -## memory: 512Mi -## limits: -## cpu: 3 -## memory: 1024Mi -## -resources: {} -## Configure extra options for liveness probe -## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes -## @param livenessProbe.enabled Enable livenessProbe -## @param livenessProbe.initialDelaySeconds Initial delay seconds for livenessProbe -## @param livenessProbe.periodSeconds Period seconds for livenessProbe -## @param livenessProbe.timeoutSeconds Timeout seconds for livenessProbe -## @param livenessProbe.failureThreshold Failure threshold for livenessProbe -## @param livenessProbe.successThreshold Success threshold for livenessProbe -## -livenessProbe: - enabled: true - initialDelaySeconds: 10 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 2 - successThreshold: 1 -## Configure extra options for readiness probe -## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/#configure-probes -## @param readinessProbe.enabled Enable readinessProbe -## @param readinessProbe.initialDelaySeconds Initial delay seconds for readinessProbe -## @param readinessProbe.periodSeconds Period seconds for readinessProbe -## @param readinessProbe.timeoutSeconds Timeout seconds for readinessProbe -## @param readinessProbe.failureThreshold Failure threshold for readinessProbe -## @param readinessProbe.successThreshold Success threshold for readinessProbe -## -readinessProbe: - enabled: true - initialDelaySeconds: 5 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 6 - successThreshold: 1 -## Configure extra options for startup probe -## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-startup-probes/#configure-probes -## @param startupProbe.enabled Enable startupProbe -## @param startupProbe.initialDelaySeconds Initial delay seconds for startupProbe -## @param startupProbe.periodSeconds Period seconds for startupProbe -## @param startupProbe.timeoutSeconds Timeout seconds for startupProbe -## @param startupProbe.failureThreshold Failure threshold for startupProbe -## @param startupProbe.successThreshold Success threshold for startupProbe -## -startupProbe: - enabled: false - initialDelaySeconds: 5 - periodSeconds: 10 - timeoutSeconds: 5 - failureThreshold: 6 - successThreshold: 1 -## @param customLivenessProbe Override default liveness probe -## -customLivenessProbe: {} -## @param customReadinessProbe Override default readiness probe -## -customReadinessProbe: {} -## @param customStartupProbe Override default startup probe -## -customStartupProbe: {} -## @param extraVolumes A list of volumes to be added to the pod -## -extraVolumes: [] -## @param extraVolumeMounts A list of volume mounts to be added to the pod -## -extraVolumeMounts: [] -## @param pdb.create Enable/disable a Pod Disruption Budget creation -## @param pdb.minAvailable Minimum number/percentage of pods that should remain scheduled -## @param pdb.maxUnavailable Maximum number/percentage of pods that may be made unavailable. Defaults to `1` if both `pdb.minAvailable` and `pdb.maxUnavailable` are empty. -## -pdb: - create: true - minAvailable: "" - maxUnavailable: "" -## Prometheus Exporter / Metrics -## -metrics: - ## @param metrics.enabled Enable prometheus to access external-dns metrics endpoint - ## - enabled: false - ## @param metrics.podAnnotations Annotations for enabling prometheus to access the metrics endpoint - ## - podAnnotations: {} - ## Prometheus Operator ServiceMonitor configuration - ## - serviceMonitor: - ## @param metrics.serviceMonitor.enabled Create ServiceMonitor object - ## - enabled: false - ## @param metrics.serviceMonitor.namespace Namespace in which Prometheus is running - ## - namespace: "" - ## @param metrics.serviceMonitor.interval Interval at which metrics should be scraped - ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint - ## - interval: "" - ## @param metrics.serviceMonitor.scrapeTimeout Timeout after which the scrape is ended - ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#endpoint - ## - scrapeTimeout: "" - ## @param metrics.serviceMonitor.selector Additional labels for ServiceMonitor object - ## ref: https://github.com/bitnami/charts/tree/main/bitnami/prometheus-operator#prometheus-configuration - ## e.g: - ## selector: - ## prometheus: my-prometheus - ## - selector: {} - ## @param metrics.serviceMonitor.metricRelabelings Specify Metric Relabelings to add to the scrape endpoint - ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#relabelconfig - ## - metricRelabelings: [] - ## @param metrics.serviceMonitor.relabelings [array] Prometheus relabeling rules - ## - relabelings: [] - ## @param metrics.serviceMonitor.honorLabels Specify honorLabels parameter to add the scrape endpoint - ## - honorLabels: false - ## @param metrics.serviceMonitor.labels Used to pass Labels that are required by the installed Prometheus Operator - ## ref: https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#prometheusspec - ## - labels: {} - ## @param metrics.serviceMonitor.targetLabels Labels from the Kubernetes service to be transferred to the created metrics - targetLabels: [] - ## @param metrics.serviceMonitor.podTargetLabels Labels from the Kubernetes pod to be transferred to the created metrics - podTargetLabels: [] - ## @param metrics.serviceMonitor.annotations Additional custom annotations for the ServiceMonitor - ## - annotations: {} - ## @param metrics.serviceMonitor.jobLabel The name of the label on the target service to use as the job name in prometheus. - ## - jobLabel: "" - ## Google Managed Prometheus PodMonitor configuration - ## - googlePodMonitor: - ## @param metrics.googlePodMonitor.enabled Create Google Managed Prometheus PodMonitoring object - ## - enabled: false - ## @param metrics.googlePodMonitor.namespace Namespace in which PodMonitoring created - ## - namespace: "" - ## @param metrics.googlePodMonitor.interval Interval at which metrics should be scraped by Google Managed Prometheus - ## - interval: "60s" - ## @param metrics.googlePodMonitor.endpoint The endpoint for Google Managed Prometheus scraping the metrics - ## - endpoint: /metrics diff --git a/external-dns-9.0.3/charts/common/.helmignore b/external-dns-sigs/.helmignore similarity index 88% rename from external-dns-9.0.3/charts/common/.helmignore rename to external-dns-sigs/.helmignore index d0e10845..e951b6fb 100644 --- a/external-dns-9.0.3/charts/common/.helmignore +++ b/external-dns-sigs/.helmignore @@ -14,13 +14,14 @@ *.swp *.bak *.tmp +*.orig *~ # Various IDEs .project .idea/ *.tmproj .vscode/ -# img folder -img/ -# Changelog -CHANGELOG.md +ci/ +schema/ +.schema.yaml +tests/ diff --git a/external-dns-sigs/.schema.yaml b/external-dns-sigs/.schema.yaml new file mode 100644 index 00000000..ea6a679f --- /dev/null +++ b/external-dns-sigs/.schema.yaml @@ -0,0 +1,13 @@ +# ref: https://github.com/losisin/helm-values-schema-json.git +values: + - schema/values.yaml + - values.yaml + +draft: 7 +indent: 2 +output: values.schema.json + +useHelmDocs: true + +schemaRoot: + additionalProperties: true diff --git a/external-dns-sigs/CHANGELOG.md b/external-dns-sigs/CHANGELOG.md new file mode 100644 index 00000000..6b2401c2 --- /dev/null +++ b/external-dns-sigs/CHANGELOG.md @@ -0,0 +1,333 @@ +# ExternalDNS Helm Chart Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +--- + + + +## [UNRELEASED] + +## [v1.20.0] + +### Added + +- Add option to set `annotationPrefix` ([#5889](https://github.com/kubernetes-sigs/external-dns/pull/5889)) _@lexfrei_ + +### Changed + +- Grant `networking.k8s.io/ingresses` and `gateway.solo.io/gateways` permissions when using `gloo-proxy` source. ([#5909](https://github.com/kubernetes-sigs/external-dns/pull/5909)) _@cucxabong_ +- Update _ExternalDNS_ OCI image version to [v0.20.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.20.0). ([#6005](https://github.com/kubernetes-sigs/external-dns/pull/6005)) _@vflaux_ + +### Fixed + +- Fixed the missing schema for `.provider.webhook.serviceMonitor` configs ([#5932](https://github.com/kubernetes-sigs/external-dns/pull/5932)) _@chrisbsmith_ +- Fixed incorrect indentation of selector labels under `spec.template.spec.topologySpreadConstraints` when `topologySpreadConstraints` is set. ([#6054](https://github.com/kubernetes-sigs/external-dns/pull/6054)) _@andylim0221_ + +## [v1.19.0] - 2025-09-08 + +### Added + +- Add option to configure `annotationFilter` via dedicated chart value. ([#5737](https://github.com/kubernetes-sigs/external-dns/pull/5737)) _@dshatokhin_ + +### Changed + +- Grant `discovery.k8s.io/endpointslices` permission only when using `service` source. ([#5746](https://github.com/kubernetes-sigs/external-dns/pull/5746)) _@vflaux_ +- Update _ExternalDNS_ OCI image version to [v0.19.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.19.0). ([#5819](https://github.com/kubernetes-sigs/external-dns/pull/5819)) _@stevehipwell_ + +## [v1.18.0] - 2025-07-14 + +### Changed + +- Update RBAC for `Service` source to support `EndpointSlices`. ([#5493](https://github.com/kubernetes-sigs/external-dns/pull/5493)) _@vflaux_ +- Update _ExternalDNS_ OCI image version to [v0.18.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.18.0). ([#5633](https://github.com/kubernetes-sigs/external-dns/pull/5633)) _@elafarge_ + +### Fixed + +- Fixed the lack of schema support for `create-only` dns policy in helm values ([#5627](https://github.com/kubernetes-sigs/external-dns/pull/5627)) _@coltonhughes_ +- Fixed the type of `.extraContainers` from `object` to `list` (array). ([#5564](https://github.com/kubernetes-sigs/external-dns/pull/5564)) _@svengreb_ + +## [v1.17.0] - 2025-06-04 + +### Changed + +- Allow extraArgs to also be a map enabling overrides of individual values. ([#5293](https://github.com/kubernetes-sigs/external-dns/pull/5293)) _@frittentheke_ +- Update CRD. ([#5287](https://github.com/kubernetes-sigs/external-dns/pull/5287)) _@mloiseleur_ +- Update CRD. ([#5446](https://github.com/kubernetes-sigs/external-dns/pull/5446)) _@mloiseleur_ +- Update _ExternalDNS_ OCI image version to [v0.17.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.17.0). ([#5479](https://github.com/kubernetes-sigs/external-dns/pull/5479)) _@stevehipwell_ + +### Fixed + +- Fix wrong type definitions for webhook probes. ([#5297](https://github.com/kubernetes-sigs/external-dns/pull/5297)) _@semnell_ +- Update schema with latest plugin release. ([#5510](https://github.com/kubernetes-sigs/external-dns/pull/5510)) _@mloiseleur + +## [v1.16.1] - 2025-04-10 + +### Changed + +- Set defaults for `automountServiceAccountToken` and `serviceAccount.automountServiceAccountToken` to `true` in Helm chart values. ([#5207](https://github.com/kubernetes-sigs/external-dns/pull/5207)) _@t3mi_ + +### Fixed + +- Correctly handle `txtPrefix` and `txtSuffix` arguments when both are provided. ([#5250](https://github.com/kubernetes-sigs/external-dns/pull/5250)) _@ivankatliarchuk_ +- Add missing types in the schema for empty values. ([#5228](https://github.com/kubernetes-sigs/external-dns/pull/5228)) _@ivankatliarchuk_ +- Add missing types in the schema for empty values. ([#5207](https://github.com/kubernetes-sigs/external-dns/pull/5207)) _@t3mi_ + +## [v1.16.0] - 2025-03-20 + +### Added + +- Add helm testing framework `helm plugin unittest`. ([#5137](https://github.com/kubernetes-sigs/external-dns/pull/5137)) _@ivankatliarchuk_ +- Add ability to generate schema with `helm plugin schema`. ([#5075](https://github.com/kubernetes-sigs/external-dns/pull/5075)) _@ivankatliarchuk_ +- Add `docs/contributing/dev-guide.md#helm-values` guide. ([#5075](https://github.com/kubernetes-sigs/external-dns/pull/5075)) _@ivankatliarchuk_ + +### Changed + +- Regenerate JSON schema with `helm-values-schema-json' plugin. ([#5075](https://github.com/kubernetes-sigs/external-dns/pull/5075)) _@ivankatliarchuk_ +- Update _ExternalDNS_ OCI image version to [v0.16.1](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.16.1). ([#5201](https://github.com/kubernetes-sigs/external-dns/pull/5201)) _@stevehipwell_ + +## [v1.15.2] - 2025-02-14 + +### Changed + +- Added `transportservers` resource to ClusterRole when specifying `f5-transportserver` or `f5-virtualserver` as a source. ([#5066](https://github.com/kubernetes-sigs/external-dns/pull/5066)) _@visokoo_ + +### Fixed + +- Fixed handling of non-string types in `serviceAccount.metadata.annotations` field. ([#5067](https://github.com/kubernetes-sigs/external-dns/pull/5067)) _@hjoshi123_ +- Fixed regression where `affinity.nodeAffinity` was being ignored. ([#5046](https://github.com/kubernetes-sigs/external-dns/pull/5046)) _@mkhpalm_ + +## [v1.15.1] - 2025-01-27 + +### Added + +- Added ability to configure `imagePullSecrets` via helm `global` value. ([#4667](https://github.com/kubernetes-sigs/external-dns/pull/4667)) _@jkroepke_ +- Added options to configure `labelFilter` and `managedRecordTypes` via dedicated helm values. ([#4849](https://github.com/kubernetes-sigs/external-dns/pull/4849)) _@abaguas_ + +### Changed + +- Allow templating `serviceaccount.annotations` keys and values, by rendering them using the `tpl` built-in function. ([#4958](https://github.com/kubernetes-sigs/external-dns/pull/4958)) _@fcrespofastly_ +- Updated _ExternalDNS_ OCI image version to [v0.15.1](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.15.1). ([#5028](https://github.com/kubernetes-sigs/external-dns/pull/5028)) _@stevehipwell_ + +### Fixed + +- Fixed automatic addition of pod selector labels to `affinity` and `topologySpreadConstraints` if not defined. ([#4666](https://github.com/kubernetes-sigs/external-dns/pull/4666)) _@pvickery-ParamountCommerce_ +- Fixed missing Ingress permissions when using Istio sources. ([#4845](https://github.com/kubernetes-sigs/external-dns/pull/4845)) _@joekhoobyar_ + +## [v1.15.0] - 2024-09-11 + +### Changed + +- Updated _ExternalDNS_ OCI image version to [v0.15.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.15.0). ([#4735](https://github.com/kubernetes-sigs/external-dns/pull/4735)) _@stevehipwell_ + +### Fixed + +- Fixed `provider.webhook.resources` behavior to correctly leverage resource limits. ([#4560](https://github.com/kubernetes-sigs/external-dns/pull/4560)) _@crutonjohn_ +- Fixed `provider.webhook.imagePullPolicy` behavior to correctly leverage pull policy. ([#4643](https://github.com/kubernetes-sigs/external-dns/pull/4643)) _@kimsondrup_ +- Fixed to add correct webhook metric port to `Service` and `ServiceMonitor`. ([#4643](https://github.com/kubernetes-sigs/external-dns/pull/4643)) _@kimsondrup_ +- Fixed to no longer require the unauthenticated webhook provider port to be exposed for health probes. ([#4691](https://github.com/kubernetes-sigs/external-dns/pull/4691)) _@kimsondrup_ & _@hatrx_ + +## [v1.14.5] - 2024-06-10 + +### Added + +- Added support for `extraContainers` argument. ([#4432](https://github.com/kubernetes-sigs/external-dns/pull/4432)) _@omerap12_ +- Added support for setting `excludeDomains` argument. ([#4380](https://github.com/kubernetes-sigs/external-dns/pull/4380)) _@bford-evs_ + +### Changed + +- Updated _ExternalDNS_ OCI image version to [v0.14.2](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.14.2). ([#4541](https://github.com/kubernetes-sigs/external-dns/pull/4541)) _@stevehipwell_ +- Updated `DNSEndpoint` CRD. ([#4541](https://github.com/kubernetes-sigs/external-dns/pull/4541)) _@stevehipwell_ +- Changed the implementation for `revisionHistoryLimit` to be more generic. ([#4541](https://github.com/kubernetes-sigs/external-dns/pull/4541)) _@stevehipwell_ + +### Fixed + +- Fixed the `ServiceMonitor` job name to correctly use the instance label. ([#4541](https://github.com/kubernetes-sigs/external-dns/pull/4541)) _@stevehipwell_ + +## [v1.14.4] - 2024-04-05 + +### Added + +- Added support for setting `dnsConfig`. ([#4265](https://github.com/kubernetes-sigs/external-dns/pull/4265)) _@davhdavh_ +- Added support for `DNSEndpoint` CRD. ([#4322](https://github.com/kubernetes-sigs/external-dns/pull/4322)) _@onedr0p_ + +### Changed + +- Updated _ExternalDNS_ OCI image version to [v0.14.1](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.14.1). ([#4357](https://github.com/kubernetes-sigs/external-dns/pull/4357)) _@stevehipwell_ + +## [v1.14.3] - 2024-01-26 + +### Fixed + +- Fixed args for webhook deployment. ([#4202](https://github.com/kubernetes-sigs/external-dns/pull/4202)) [@webwurst](https://github.com/webwurst) +- Fixed support for `gateway-grpcroute`, `gateway-tlsroute`, `gateway-tcproute` & `gateway-udproute`. ([#4205](https://github.com/kubernetes-sigs/external-dns/pull/4205)) [@orenlevi111](https://github.com/orenlevi111) +- Fixed incorrect implementation for setting the `automountServiceAccountToken`. ([#4208](https://github.com/kubernetes-sigs/external-dns/pull/4208)) [@stevehipwell](https://github.com/stevehipwell) + +## [v1.14.2] - 2024-01-22 + +### Fixed + +- Restore template support in `.Values.provider` and `.Values.provider.name` + +## [v1.14.1] - 2024-01-12 + +### Fixed + +- Fixed webhook install failure: `"http-webhook-metrics": must be no more than 15 characters`. ([#4173](https://github.com/kubernetes-sigs/external-dns/pull/4173)) [@gabe565](https://github.com/gabe565) + +## [v1.14.0] - 2024-01-10 + +### Added + +- Added the option to explicitly enable or disable service account token automounting. ([#3983](https://github.com/kubernetes-sigs/external-dns/pull/3983)) [@gilles-gosuin](https://github.com/gilles-gosuin) +- Added the option to configure revisionHistoryLimit on the K8s Deployment resource. ([#4008](https://github.com/kubernetes-sigs/external-dns/pull/4008)) [@arnisoph](https://github.com/arnisoph) +- Added support for webhook providers, as a sidecar. ([#4032](https://github.com/kubernetes-sigs/external-dns/pull/4032) [@mloiseleur](https://github.com/mloiseleur) +- Added the option to configure ipFamilyPolicy and ipFamilies of external-dns Service. ([#4153](https://github.com/kubernetes-sigs/external-dns/pull/4153)) [@dongjiang1989](https://github.com/dongjiang1989) + +### Changed + +- Avoid unnecessary pod restart on each helm chart version. ([#4103](https://github.com/kubernetes-sigs/external-dns/pull/4103)) [@jkroepke](https://github.com/jkroepke) +- Updated _ExternalDNS_ OCI image version to [v0.14.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.14.0). ([#4073](https://github.com/kubernetes-sigs/external-dns/pull/4073)) [@appkins](https://github.com/appkins) + +### Deprecated + +- The `secretConfiguration` value has been deprecated in favour of creating secrets external to the Helm chart and configuring their use via the `extraVolumes` & `extraVolumeMounts` values. ([#4161](https://github.com/kubernetes-sigs/external-dns/pull/4161)) [@stevehipwell](https://github.com/stevehipwell) + +## [v1.13.1] - 2023-09-08 + +### Added + +- Added RBAC for Traefik to ClusterRole. ([#3325](https://github.com/kubernetes-sigs/external-dns/pull/3325)) [@ThomasK33](https://github.com/thomask33) +- Added support for init containers. ([#3325](https://github.com/kubernetes-sigs/external-dns/pull/3838)) [@calvinbui](https://github.com/calvinbui) + +### Changed + +- Disallowed privilege escalation in container security context and set the seccomp profile type to `RuntimeDefault`. ([#3689](https://github.com/kubernetes-sigs/external-dns/pull/3689)) [@nrvnrvn](https://github.com/nrvnrvn) +- Updated _ExternalDNS_ OCI image version to [v0.13.6](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.13.6). ([#3917](https://github.com/kubernetes-sigs/external-dns/pull/3917)) [@stevehipwell](https://github.com/stevehipwell) + +### Removed + +- Removed RBAC rule for already removed `contour-ingressroute` source. ([#3764](https://github.com/kubernetes-sigs/external-dns/pull/3764)) [@johngmyers](https://github.com/johngmyers) + +## [v1.13.0] - 2023-03-30 + +### All Changes + +- Updated _ExternalDNS_ version to [v0.13.5](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.13.5). ([#3661](https://github.com/kubernetes-sigs/external-dns/pull/3661)) [@GMartinez-Sisti](https://github.com/GMartinez-Sisti) +- Adding missing gateway-httproute cluster role permission. ([#3541](https://github.com/kubernetes-sigs/external-dns/pull/3541)) [@nicon89](https://github.com/nicon89) + +## [v1.12.2] - 2023-03-30 + +### All Changes + +- Added support for ServiceMonitor relabelling. ([#3366](https://github.com/kubernetes-sigs/external-dns/pull/3366)) [@jkroepke](https://github.com/jkroepke) +- Updated chart icon path. ([#3492](https://github.com/kubernetes-sigs/external-dns/pull/3494)) [kundan2707](https://github.com/kundan2707) +- Added RBAC for Gateway-API resources to ClusterRole. ([#3499](https://github.com/kubernetes-sigs/external-dns/pull/3499)) [@michaelvl](https://github.com/MichaelVL) +- Added RBAC for F5 VirtualServer to ClusterRole. ([#3503](https://github.com/kubernetes-sigs/external-dns/pull/3503)) [@mikejoh](https://github.com/mikejoh) +- Added support for running ExternalDNS with namespaced scope. ([#3403](https://github.com/kubernetes-sigs/external-dns/pull/3403)) [@jkroepke](https://github.com/jkroepke) +- Updated _ExternalDNS_ version to [v0.13.4](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.13.4). ([#3516](https://github.com/kubernetes-sigs/external-dns/pull/3516)) [@stevehipwell](https://github.com/stevehipwell) + +## [v1.12.1] - 2023-02-06 + +### All Changes + +- Updated _ExternalDNS_ version to [v0.13.2](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.13.2). ([#3371](https://github.com/kubernetes-sigs/external-dns/pull/3371)) [@stevehipwell](https://github.com/stevehipwell) +- Added `secretConfiguration.subPath` to mount specific files from secret as a sub-path. ([#3227](https://github.com/kubernetes-sigs/external-dns/pull/3227)) [@jkroepke](https://github.com/jkroepke) +- Changed to use `registry.k8s.io` instead of `k8s.gcr.io`. ([#3261](https://github.com/kubernetes-sigs/external-dns/pull/3261)) [@johngmyers](https://github.com/johngmyers) + +## [v1.12.0] - 2022-11-29 + +### All Changes + +- Added ability to provide ExternalDNS with secret configuration via `secretConfiguration`. ([#3144](https://github.com/kubernetes-sigs/external-dns/pull/3144)) [@jkroepke](https://github.com/jkroepke) +- Added the ability to template `provider` & `extraArgs`. ([#3144](https://github.com/kubernetes-sigs/external-dns/pull/3144)) [@jkroepke](https://github.com/jkroepke) +- Added the ability to customise the service account labels. ([#3145](https://github.com/kubernetes-sigs/external-dns/pull/3145)) [@jkroepke](https://github.com/jkroepke) +- Updated _ExternalDNS_ version to [v0.13.1](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.13.1). ([#3197](https://github.com/kubernetes-sigs/external-dns/pull/3197)) [@stevehipwell](https://github.com/stevehipwell) + +## [v1.11.0] - 2022-08-10 + +### Added + +- Added support to configure `dnsPolicy` on the Helm chart deployment. [@michelzanini](https://github.com/michelzanini) +- Added ability to customise the deployment strategy. [mac-chaffee](https://github.com/mac-chaffee) + +### Changed + +- Updated _ExternalDNS_ version to [v0.12.2](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.12.2). [@stevehipwell](https://github.com/stevehipwell) +- Changed default deployment strategy to `Recreate`. [mac-chaffee](https://github.com/mac-chaffee) + +## [v1.10.1] - 2022-07-11 + +### Fixed + +- Fixed incorrect addition of `namespace` to `ClusterRole` & `ClusterRoleBinding`. [@stevehipwell](https://github.com/stevehipwell) + +## [v1.10.0] - 2022-07-08 + +### Added + +- Added `commonLabels` value to allow the addition of labels to all resources. [@stevehipwell](https://github.com/stevehipwell) +- Added support for [Process Namespace Sharing](https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) via the `shareProcessNamespace` + value. ([#2715](https://github.com/kubernetes-sigs/external-dns/pull/2715)) [@wolffberg](https://github.com/wolffberg) + +### Changed + +- Update _ExternalDNS_ version to [v0.12.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.12.0). [@vojtechmares](https://github.com/vojtechmares) +- Set resource namespaces to `{{ .Release.Namespace }}` in the templates instead of waiting until apply time for inference. [@stevehipwell](https://github.com/stevehipwell) +- Fixed `rbac.additionalPermissions` default value.([#2796](https://github.com/kubernetes-sigs/external-dns/pull/2796)) [@tamalsaha](https://github.com/tamalsaha) + +## [v1.9.0] - 2022-04-19 + +### Changed + +- Update _ExternalDNS_ version to [v0.11.0](https://github.com/kubernetes-sigs/external-dns/releases/tag/v0.11.0). ([#2690](https://github.com/kubernetes-sigs/external-dns/pull/2690)) [@stevehipwell](https://github.com/stevehipwell) + +## [v1.8.0] - 2022-04-13 + +### Added + +- Add annotations to Deployment. ([#2477](https://github.com/kubernetes-sigs/external-dns/pull/2477)) [@beastob](https://github.com/beastob) + +### Changed + +- Fix RBAC for `istio-virtualservice` source when `istio-gateway` isn't also added. ([#2564](https://github.com/kubernetes-sigs/external-dns/pull/2564)) [@mcwarman](https://github.com/mcwarman) + + +[UNRELEASED]: https://github.com/kubernetes-sigs/external-dns/tree/master/charts/external-dns +[v1.20.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.20.0 +[v1.19.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.19.0 +[v1.18.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.18.0 +[v1.17.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.17.0 +[v1.16.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.16.1 +[v1.16.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.16.0 +[v1.15.2]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.15.2 +[v1.15.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.15.1 +[v1.15.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.15.0 +[v1.14.5]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.5 +[v1.14.4]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.4 +[v1.14.3]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.3 +[v1.14.2]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.2 +[v1.14.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.1 +[v1.14.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.14.0 +[v1.13.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.13.1 +[v1.13.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.13.0 +[v1.12.2]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.12.2 +[v1.12.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.12.1 +[v1.12.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.12.0 +[v1.11.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.11.0 +[v1.10.1]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.10.1 +[v1.10.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.10.0 +[v1.9.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.9.0 +[v1.8.0]: https://github.com/kubernetes-sigs/external-dns/releases/tag/external-dns-helm-chart-1.8.0 diff --git a/external-dns-sigs/Chart.yaml b/external-dns-sigs/Chart.yaml new file mode 100644 index 00000000..e662b00a --- /dev/null +++ b/external-dns-sigs/Chart.yaml @@ -0,0 +1,23 @@ +apiVersion: v2 +name: external-dns-sigs +description: ExternalDNS synchronizes exposed Kubernetes Services and Ingresses with DNS providers. +type: application +version: 1.20.0 +appVersion: 0.20.0 +keywords: + - kubernetes + - k8s + - externaldns + - external-dns + - dns + - service + - ingress + - gateway +home: https://github.com/kubernetes-sigs/external-dns/ +icon: https://github.com/kubernetes-sigs/external-dns/raw/master/docs/img/external-dns.png +sources: + - https://github.com/kubernetes-sigs/external-dns/ +maintainers: + - name: stevehipwell + email: steve.hipwell@gmail.com +annotations: {} diff --git a/external-dns-sigs/README.md b/external-dns-sigs/README.md new file mode 100644 index 00000000..0bbae925 --- /dev/null +++ b/external-dns-sigs/README.md @@ -0,0 +1,192 @@ +# external-dns + +![Version: 1.20.0](https://img.shields.io/badge/Version-1.20.0-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 0.20.0](https://img.shields.io/badge/AppVersion-0.20.0-informational?style=flat-square) + +ExternalDNS synchronizes exposed Kubernetes Services and Ingresses with DNS providers. + +**Homepage:** + +## Maintainers + +| Name | Email | Url | +| ---- | ------ | --- | +| stevehipwell | | | + +## Source Code + +* + +## Installing the Chart + +Before you can install the chart you will need to add the `external-dns` repo to [Helm](https://helm.sh/). + +```shell +helm repo add external-dns https://kubernetes-sigs.github.io/external-dns/ +``` + +After you've installed the repo you can install the chart. + +```shell +helm upgrade --install external-dns external-dns/external-dns --version 1.20.0 +``` + +## Providers + +> Legacy support of setting `provider: ` is deprecated. + +Configuring the _ExternalDNS_ provider should be done via the `provider.name` value with provider specific configuration being set via the `provider..` values, where supported, and the `extraArgs` value. + +See [documentation](https://kubernetes-sigs.github.io/external-dns/#new-providers) for more info on available providers and tutorials. + +### Providers with Specific Configuration Support + +| Provider | Supported | +|------------------------|------------| +| `webhook` | ✅ | + +### Other Providers + +For set up for a specific provider using the Helm chart, see the following links: + +* [AWS](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/aws.md#using-helm-with-oidc) +* [akamai-edgedns](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/akamai-edgedns.md#using-helm) +* [cloudflare](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/cloudflare.md#using-helm) +* [digitalocean](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/digitalocean.md#using-helm) +* [godaddy](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/godaddy.md#using-helm) +* [ns1](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/ns1.md#using-helm) +* [plural](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/plural.md#using-helm) + +## Namespaced Scoped Installation + +external-dns supports running on a namespaced only scope, too. +If `namespaced=true` is defined, the helm chart will setup `Roles` and `RoleBindings` instead `ClusterRoles` and `ClusterRoleBindings`. + +### Limited Supported + +Not all sources are supported in namespaced scope, since some sources depends on cluster-wide resources. +For example: Source `node` isn't supported, since `kind: Node` has scope `Cluster`. +Sources like `istio-virtualservice` only work, if all resources like `Gateway` and `VirtualService` are present in the same +namespaces as `external-dns`. + +The annotation `external-dns.alpha.kubernetes.io/endpoints-type: NodeExternalIP` is not supported. + +If `namespaced` is set to `true`, please ensure that `sources` my only contains supported sources (Default: `service,ingress`). + +### Support Matrix + +| Source | Supported | Infos | +|------------------------|------------|------------------------| +| `ingress` | ✅ | | +| `istio-gateway` | ✅ | | +| `istio-virtualservice` | ✅ | | +| `crd` | ✅ | | +| `kong-tcpingress` | ✅ | | +| `openshift-route` | ✅ | | +| `skipper-routegroup` | ✅ | | +| `gloo-proxy` | ✅ | | +| `contour-httpproxy` | ✅ | | +| `service` | ⚠️️ | NodePort not supported | +| `node` | ❌ | | +| `pod` | ❌ | | + +## Values + +| Key | Type | Default | Description | +|-----|------|---------|-------------| +| affinity | object | `{}` | Affinity settings for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided for pod affinity or pod anti-affinity one will be created from the pod selector labels. | +| annotationFilter | string | `nil` | Filter resources queried for endpoints by annotation selector. | +| annotationPrefix | string | `nil` | Annotation prefix for external-dns annotations (useful for split horizon DNS with multiple instances). | +| automountServiceAccountToken | bool | `true` | Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `Pod`. | +| commonLabels | object | `{}` | Labels to add to all chart resources. | +| deploymentAnnotations | object | `{}` | Annotations to add to the `Deployment`. | +| deploymentStrategy | object | `{"type":"Recreate"}` | [Deployment Strategy](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy). | +| dnsConfig | object | `nil` | [DNS config](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config) for the pod, if not set the default will be used. | +| dnsPolicy | string | `nil` | [DNS policy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) for the pod, if not set the default will be used. | +| domainFilters | list | `[]` | Limit possible target zones by domain suffixes. | +| enabled | bool | `nil` | No effect - reserved for use in sub-charting. | +| env | list | `[]` | [Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `external-dns` container. | +| excludeDomains | list | `[]` | Intentionally exclude domains from being managed. | +| extraArgs | object | `{}` | Extra arguments to provide to _ExternalDNS_. An array or map can be used, with maps allowing for value overrides; maps also support slice values to use the same arg multiple times. | +| extraContainers | list | `[]` | Extra containers to add to the `Deployment`. | +| extraVolumeMounts | list | `[]` | Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `external-dns` container. | +| extraVolumes | list | `[]` | Extra [volumes](https://kubernetes.io/docs/concepts/storage/volumes/) for the `Pod`. | +| fullnameOverride | string | `nil` | Override the full name of the chart. | +| gatewayNamespace | string | `nil` | _Gateway API_ gateway namespace to watch. | +| global.imagePullSecrets | list | `[]` | Global image pull secrets. | +| image.pullPolicy | string | `"IfNotPresent"` | Image pull policy for the `external-dns` container. | +| image.repository | string | `"registry.k8s.io/external-dns/external-dns"` | Image repository for the `external-dns` container. | +| image.tag | string | `nil` | Image tag for the `external-dns` container, this will default to `.Chart.AppVersion` if not set. | +| imagePullSecrets | list | `[]` | Image pull secrets. | +| initContainers | list | `[]` | [Init containers](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) to add to the `Pod` definition. | +| interval | string | `"1m"` | Interval for DNS updates. | +| labelFilter | string | `nil` | Filter resources queried for endpoints by label selector. | +| livenessProbe | object | See _values.yaml_ | [Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. | +| logFormat | string | `"text"` | Log format. | +| logLevel | string | `"info"` | Log level. | +| managedRecordTypes | list | `[]` | Record types to manage (default: A, AAAA, CNAME) | +| nameOverride | string | `nil` | Override the name of the chart. | +| namespaced | bool | `false` | if `true`, _ExternalDNS_ will run in a namespaced scope (`Role`` and `Rolebinding`` will be namespaced too). | +| nodeSelector | object | `{}` | Node labels to match for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). | +| podAnnotations | object | `{}` | Annotations to add to the `Pod`. | +| podLabels | object | `{}` | Labels to add to the `Pod`. | +| podSecurityContext | object | See _values.yaml_ | [Pod security context](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#podsecuritycontext-v1-core), this supports full customisation. | +| policy | string | `"upsert-only"` | How DNS records are synchronized between sources and providers; available values are `create-only`, `sync`, & `upsert-only`. | +| priorityClassName | string | `nil` | Priority class name for the `Pod`. | +| provider.name | string | `"aws"` | _ExternalDNS_ provider name; for the available providers and how to configure them see [README](https://github.com/kubernetes-sigs/external-dns/blob/master/charts/external-dns/README.md#providers). | +| provider.webhook.args | list | `[]` | Extra arguments to provide for the `webhook` container. | +| provider.webhook.env | list | `[]` | [Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `webhook` container. | +| provider.webhook.extraVolumeMounts | list | `[]` | Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `webhook` container. | +| provider.webhook.image.pullPolicy | string | `"IfNotPresent"` | Image pull policy for the `webhook` container. | +| provider.webhook.image.repository | string | `nil` | Image repository for the `webhook` container. | +| provider.webhook.image.tag | string | `nil` | Image tag for the `webhook` container. | +| provider.webhook.livenessProbe | object | See _values.yaml_ | [Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. | +| provider.webhook.readinessProbe | object | See _values.yaml_ | [Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `webhook` container. | +| provider.webhook.resources | object | `{}` | [Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `webhook` container. | +| provider.webhook.securityContext | object | See _values.yaml_ | [Pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `webhook` container. | +| provider.webhook.service.port | int | `8080` | Webhook exposed HTTP port for the service. | +| provider.webhook.serviceMonitor | object | See _values.yaml_ | Optional [Service Monitor](https://prometheus-operator.dev/docs/operator/design/#servicemonitor) configuration for the `webhook` container. | +| rbac.additionalPermissions | list | `[]` | Additional rules to add to the `ClusterRole`. | +| rbac.create | bool | `true` | If `true`, create a `ClusterRole` & `ClusterRoleBinding` with access to the Kubernetes API. | +| readinessProbe | object | See _values.yaml_ | [Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. | +| registry | string | `"txt"` | Specify the registry for storing ownership and labels. Valid values are `txt`, `aws-sd`, `dynamodb` & `noop`. | +| resources | object | `{}` | [Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `external-dns` container. | +| revisionHistoryLimit | int | `nil` | Specify the number of old `ReplicaSets` to retain to allow rollback of the `Deployment``. | +| secretConfiguration.data | object | `{}` | `Secret` data. | +| secretConfiguration.enabled | bool | `false` | If `true`, create a `Secret` to store sensitive provider configuration (**DEPRECATED**). | +| secretConfiguration.mountPath | string | `nil` | Mount path for the `Secret`, this can be templated. | +| secretConfiguration.subPath | string | `nil` | Sub-path for mounting the `Secret`, this can be templated. | +| securityContext | object | See _values.yaml_ | [Security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `external-dns` container. | +| service.annotations | object | `{}` | Service annotations. | +| service.ipFamilies | list | `[]` | Service IP families (e.g. IPv4 and/or IPv6). | +| service.ipFamilyPolicy | string | `nil` | Service IP family policy. | +| service.port | int | `7979` | Service HTTP port. | +| serviceAccount.annotations | object | `{}` | Annotations to add to the service account. Templates are allowed in both the key and the value. Example: `example.com/annotation/{{ .Values.nameOverride }}: {{ .Values.nameOverride }}` | +| serviceAccount.automountServiceAccountToken | bool | `true` | Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `ServiceAccount`. | +| serviceAccount.create | bool | `true` | If `true`, create a new `ServiceAccount`. | +| serviceAccount.labels | object | `{}` | Labels to add to the service account. | +| serviceAccount.name | string | `nil` | If this is set and `serviceAccount.create` is `true` this will be used for the created `ServiceAccount` name, if set and `serviceAccount.create` is `false` then this will define an existing `ServiceAccount` to use. | +| serviceMonitor.additionalLabels | object | `{}` | Additional labels for the `ServiceMonitor`. | +| serviceMonitor.annotations | object | `{}` | Annotations to add to the `ServiceMonitor`. | +| serviceMonitor.bearerTokenFile | string | `nil` | Provide a bearer token file for the `ServiceMonitor`. | +| serviceMonitor.enabled | bool | `false` | If `true`, create a `ServiceMonitor` resource to support the _Prometheus Operator_. | +| serviceMonitor.interval | string | `nil` | If set override the _Prometheus_ default interval. | +| serviceMonitor.metricRelabelings | list | `[]` | [Metric relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) to apply to samples before ingestion. | +| serviceMonitor.namespace | string | `nil` | If set create the `ServiceMonitor` in an alternate namespace. | +| serviceMonitor.relabelings | list | `[]` | [Relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) to apply to samples before ingestion. | +| serviceMonitor.scheme | string | `nil` | If set overrides the _Prometheus_ default scheme. | +| serviceMonitor.scrapeTimeout | string | `nil` | If set override the _Prometheus_ default scrape timeout. | +| serviceMonitor.targetLabels | list | `[]` | Provide target labels for the `ServiceMonitor`. | +| serviceMonitor.tlsConfig | object | `{}` | Configure the `ServiceMonitor` [TLS config](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig). | +| shareProcessNamespace | bool | `false` | If `true`, the `Pod` will have [process namespace sharing](https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) enabled. | +| sources | list | `["service","ingress"]` | _Kubernetes_ resources to monitor for DNS entries. | +| terminationGracePeriodSeconds | int | `nil` | Termination grace period for the `Pod` in seconds. | +| tolerations | list | `[]` | Node taints which will be tolerated for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). | +| topologySpreadConstraints | list | `[]` | Topology spread constraints for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided one will be created from the pod selector labels. | +| triggerLoopOnEvent | bool | `false` | If `true`, triggers run loop on create/update/delete events in addition of regular interval. | +| txtOwnerId | string | `nil` | Specify an identifier for this instance of _ExternalDNS_ when using a registry other than `noop`. | +| txtPrefix | string | `nil` | Specify a prefix for the domain names of TXT records created for the `txt` registry. Mutually exclusive with `txtSuffix`. | +| txtSuffix | string | `nil` | Specify a suffix for the domain names of TXT records created for the `txt` registry. Mutually exclusive with `txtPrefix`. | + +---------------------------------------------- + +Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs/). diff --git a/external-dns-sigs/README.md.gotmpl b/external-dns-sigs/README.md.gotmpl new file mode 100644 index 00000000..fc4ada14 --- /dev/null +++ b/external-dns-sigs/README.md.gotmpl @@ -0,0 +1,94 @@ +{{ template "chart.header" . }} +{{ template "chart.deprecationWarning" . }} + +{{ template "chart.badgesSection" . }} + +{{ template "chart.description" . }} + +{{ template "chart.homepageLine" . }} + +{{ template "chart.maintainersSection" . }} + +{{ template "chart.sourcesSection" . }} + +## Installing the Chart + +Before you can install the chart you will need to add the `external-dns` repo to [Helm](https://helm.sh/). + +```shell +helm repo add external-dns https://kubernetes-sigs.github.io/external-dns/ +``` + +After you've installed the repo you can install the chart. + +```shell +helm upgrade --install {{ template "chart.name" . }} external-dns/{{ template "chart.name" . }} --version {{ template "chart.version" . }} +``` + +## Providers + +> Legacy support of setting `provider: ` is deprecated. + +Configuring the _ExternalDNS_ provider should be done via the `provider.name` value with provider specific configuration being set via the `provider..` values, where supported, and the `extraArgs` value. + +See [documentation](https://kubernetes-sigs.github.io/external-dns/#new-providers) for more info on available providers and tutorials. + +### Providers with Specific Configuration Support + +| Provider | Supported | +|------------------------|------------| +| `webhook` | ✅ | + +### Other Providers + +For set up for a specific provider using the Helm chart, see the following links: + +* [AWS](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/aws.md#using-helm-with-oidc) +* [akamai-edgedns](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/akamai-edgedns.md#using-helm) +* [cloudflare](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/cloudflare.md#using-helm) +* [digitalocean](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/digitalocean.md#using-helm) +* [godaddy](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/godaddy.md#using-helm) +* [ns1](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/ns1.md#using-helm) +* [plural](https://github.com/kubernetes-sigs/external-dns/blob/master/docs/tutorials/plural.md#using-helm) + +## Namespaced Scoped Installation + +external-dns supports running on a namespaced only scope, too. +If `namespaced=true` is defined, the helm chart will setup `Roles` and `RoleBindings` instead `ClusterRoles` and `ClusterRoleBindings`. + +### Limited Supported + +Not all sources are supported in namespaced scope, since some sources depends on cluster-wide resources. +For example: Source `node` isn't supported, since `kind: Node` has scope `Cluster`. +Sources like `istio-virtualservice` only work, if all resources like `Gateway` and `VirtualService` are present in the same +namespaces as `external-dns`. + +The annotation `external-dns.alpha.kubernetes.io/endpoints-type: NodeExternalIP` is not supported. + +If `namespaced` is set to `true`, please ensure that `sources` my only contains supported sources (Default: `service,ingress`). + +### Support Matrix + +| Source | Supported | Infos | +|------------------------|------------|------------------------| +| `ingress` | ✅ | | +| `istio-gateway` | ✅ | | +| `istio-virtualservice` | ✅ | | +| `crd` | ✅ | | +| `kong-tcpingress` | ✅ | | +| `openshift-route` | ✅ | | +| `skipper-routegroup` | ✅ | | +| `gloo-proxy` | ✅ | | +| `contour-httpproxy` | ✅ | | +| `service` | ⚠️️ | NodePort not supported | +| `node` | ❌ | | +| `pod` | ❌ | | + + +{{ template "chart.requirementsSection" . }} + +{{ template "chart.valuesSection" . }} + +---------------------------------------------- + +Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs/). diff --git a/external-dns-sigs/ci/ci-values.yaml b/external-dns-sigs/ci/ci-values.yaml new file mode 100644 index 00000000..dd30184f --- /dev/null +++ b/external-dns-sigs/ci/ci-values.yaml @@ -0,0 +1,44 @@ +labelFilter: foo=bar +managedRecordTypes: [] +provider: + name: inmemory +affinity: + podAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + topologyKey: "kubernetes.io/hostname" + labelSelector: + matchExpressions: + - key: app.kubernetes.io/name + operator: In + values: + - test + requiredDuringSchedulingIgnoredDuringExecution: + - topologyKey: "kubernetes.io/hostname" + podAntiAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + - weight: 100 + podAffinityTerm: + topologyKey: "kubernetes.io/hostname" + requiredDuringSchedulingIgnoredDuringExecution: + - topologyKey: "kubernetes.io/hostname" + labelSelector: + matchExpressions: + - key: app.kubernetes.io/name + operator: In + values: + - test + +topologySpreadConstraints: + - maxSkew: 1 + topologyKey: "topology.kubernetes.io/zone" + whenUnsatisfiable: "ScheduleAnyway" + +serviceAccount: + annotations: + notTemplated/version: "v1.2.3" + justValueTemplated/version: "{{ .Chart.Version }}" + "{{ .Chart.Name }}/chart": "{{ .Chart.Version }}" + booleanVersion: "true" + number: "1" diff --git a/external-dns-9.0.3/templates/crds/crd.yaml b/external-dns-sigs/crds/dnsendpoints.externaldns.k8s.io.yaml similarity index 93% rename from external-dns-9.0.3/templates/crds/crd.yaml rename to external-dns-sigs/crds/dnsendpoints.externaldns.k8s.io.yaml index 76b39e1b..c983c8d7 100644 --- a/external-dns-9.0.3/templates/crds/crd.yaml +++ b/external-dns-sigs/crds/dnsendpoints.externaldns.k8s.io.yaml @@ -1,13 +1,8 @@ -# Source: https://raw.githubusercontent.com/kubernetes-sigs/external-dns/refs/tags/v{version}/config/crd/standard/dnsendpoints.externaldns.k8s.io.yaml -# Version: 0.18.0 -# Conditional: .Values.crd.create -{{- if .Values.crd.create }} apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: api-approved.kubernetes.io: https://github.com/kubernetes-sigs/external-dns/pull/2007 - controller-gen.kubebuilder.io/version: v0.17.2 name: dnsendpoints.externaldns.k8s.io spec: group: externaldns.k8s.io @@ -99,4 +94,3 @@ spec: storage: true subresources: status: {} -{{- end }} diff --git a/external-dns-sigs/schema/values.yaml b/external-dns-sigs/schema/values.yaml new file mode 100644 index 00000000..3b2f8598 --- /dev/null +++ b/external-dns-sigs/schema/values.yaml @@ -0,0 +1,19 @@ +# Custom values for schema creation. +# This is a YAML-formatted file. +# Declare variables to be passed into your schema. +resources: + requests: + cpu: 200m + memory: 128Mi + limits: + cpu: 200m + memory: 128Mi + +provider: + webhook: + requests: + cpu: 200m + memory: 128Mi + limits: + cpu: 300m + memory: 200Mi diff --git a/external-dns-sigs/templates/NOTES.txt b/external-dns-sigs/templates/NOTES.txt new file mode 100644 index 00000000..dedcff42 --- /dev/null +++ b/external-dns-sigs/templates/NOTES.txt @@ -0,0 +1,18 @@ +*********************************************************************** +* External DNS * +*********************************************************************** + Chart version: {{ .Chart.Version }} + App version: {{ .Chart.AppVersion }} + Image tag: {{ include "external-dns.image" . }} +*********************************************************************** + +{{- if eq (typeOf .Values.provider) "string" }} +🚧 DEPRECATIONS 🚧 + +The following features, functions, or methods are deprecated and no longer recommended for use. + +{{/* The deprecation message for legacy 'provider: name'. */}} +{{- if eq (typeOf .Values.provider) "string" -}} +❗❗❗ DEPRECATED ❗❗❗ The legacy 'provider: ' configuration is in use. Support will be removed in future releases. +{{- end -}} +{{- end }} diff --git a/external-dns-sigs/templates/_helpers.tpl b/external-dns-sigs/templates/_helpers.tpl new file mode 100644 index 00000000..aad09822 --- /dev/null +++ b/external-dns-sigs/templates/_helpers.tpl @@ -0,0 +1,114 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "external-dns.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "external-dns.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- .Release.Name | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "external-dns.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "external-dns.labels" -}} +helm.sh/chart: {{ include "external-dns.chart" . }} +{{ include "external-dns.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- with .Values.commonLabels }} +{{ toYaml . }} +{{- end }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "external-dns.selectorLabels" -}} +app.kubernetes.io/name: {{ include "external-dns.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "external-dns.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "external-dns.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} + +{{/* +The image to use +*/}} +{{- define "external-dns.image" -}} +{{- printf "%s:%s" .Values.image.repository (default (printf "v%s" .Chart.AppVersion) .Values.image.tag) }} +{{- end }} + +{{/* +Provider name, Keeps backward compatibility on provider +TODO: line eq (typeOf .Values.provider) "string" to be removed in future releases +*/}} +{{- define "external-dns.providerName" -}} +{{- if eq (typeOf .Values.provider) "string" }} +{{- .Values.provider }} +{{- else }} +{{- .Values.provider.name }} +{{- end }} +{{- end }} + +{{/* +The image to use for optional webhook sidecar +*/}} +{{- define "external-dns.webhookImage" -}} +{{- with .image }} +{{- if or (empty .repository) (empty .tag) }} +{{- fail "ERROR: webhook provider needs an image repository and a tag" }} +{{- end }} +{{- printf "%s:%s" .repository .tag }} +{{- end }} +{{- end }} + +{{/* +The pod affinity default label Selector +*/}} +{{- define "external-dns.labelSelector" -}} +labelSelector: + matchLabels: + {{ include "external-dns.selectorLabels" . | nindent 4 }} +{{- end }} + +{{/* +Check if any Gateway API sources are enabled +*/}} +{{- define "external-dns.hasGatewaySources" -}} +{{- if or (has "gateway-httproute" .Values.sources) (has "gateway-grpcroute" .Values.sources) (has "gateway-tlsroute" .Values.sources) (has "gateway-tcproute" .Values.sources) (has "gateway-udproute" .Values.sources) -}} +true +{{- end -}} +{{- end }} diff --git a/external-dns-sigs/templates/clusterrole.yaml b/external-dns-sigs/templates/clusterrole.yaml new file mode 100644 index 00000000..b3ef006c --- /dev/null +++ b/external-dns-sigs/templates/clusterrole.yaml @@ -0,0 +1,163 @@ +{{- if .Values.rbac.create -}} +apiVersion: rbac.authorization.k8s.io/v1 +kind: {{ .Values.namespaced | ternary "Role" "ClusterRole" }} +metadata: + name: {{ template "external-dns.fullname" . }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} +rules: +{{- if and (not .Values.namespaced) (or (has "node" .Values.sources) (has "pod" .Values.sources) (has "service" .Values.sources) (has "contour-httpproxy" .Values.sources) (has "gloo-proxy" .Values.sources) (has "openshift-route" .Values.sources) (has "skipper-routegroup" .Values.sources)) }} + - apiGroups: [""] + resources: ["nodes"] + verbs: ["list","watch"] +{{- end }} +{{- if or (has "pod" .Values.sources) (has "service" .Values.sources) (has "contour-httpproxy" .Values.sources) (has "gloo-proxy" .Values.sources) (has "openshift-route" .Values.sources) (has "skipper-routegroup" .Values.sources) }} + - apiGroups: [""] + resources: ["pods"] + verbs: ["get","watch","list"] +{{- end }} +{{- if or (has "service" .Values.sources) (has "contour-httpproxy" .Values.sources) (has "gloo-proxy" .Values.sources) (has "istio-gateway" .Values.sources) (has "istio-virtualservice" .Values.sources) (has "openshift-route" .Values.sources) (has "skipper-routegroup" .Values.sources) }} + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "service" .Values.sources }} + - apiGroups: ["discovery.k8s.io"] + resources: ["endpointslices"] + verbs: ["get","watch","list"] +{{- end }} +{{- if or (has "ingress" .Values.sources) (has "istio-gateway" .Values.sources) (has "istio-virtualservice" .Values.sources) (has "contour-httpproxy" .Values.sources) (has "openshift-route" .Values.sources) (has "skipper-routegroup" .Values.sources) (has "gloo-proxy" .Values.sources) }} + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] +{{- end }} +{{- if or (has "istio-gateway" .Values.sources) (has "istio-virtualservice" .Values.sources) }} + - apiGroups: ["networking.istio.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] +{{- end }} + +{{- if has "istio-virtualservice" .Values.sources }} + - apiGroups: ["networking.istio.io"] + resources: ["virtualservices"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "ambassador-host" .Values.sources }} + - apiGroups: ["getambassador.io"] + resources: ["hosts","ingresses"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "contour-httpproxy" .Values.sources }} + - apiGroups: ["projectcontour.io"] + resources: ["httpproxies"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "crd" .Values.sources }} + - apiGroups: ["externaldns.k8s.io"] + resources: ["dnsendpoints"] + verbs: ["get","watch","list"] + - apiGroups: ["externaldns.k8s.io"] + resources: ["dnsendpoints/status"] + verbs: ["*"] +{{- end }} +{{- if include "external-dns.hasGatewaySources" . }} +{{- if or (not .Values.namespaced) (and .Values.namespaced (not .Values.gatewayNamespace)) }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] +{{- end }} +{{- if not .Values.namespaced }} + - apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] +{{- end }} +{{- end }} +{{- if has "gateway-httproute" .Values.sources }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["httproutes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "gateway-grpcroute" .Values.sources }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["grpcroutes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "gateway-tlsroute" .Values.sources }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["tlsroutes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "gateway-tcproute" .Values.sources }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["tcproutes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "gateway-udproute" .Values.sources }} + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["udproutes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "gloo-proxy" .Values.sources }} + - apiGroups: ["gloo.solo.io","gateway.solo.io"] + resources: ["proxies","virtualservices","gateways"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "kong-tcpingress" .Values.sources }} + - apiGroups: ["configuration.konghq.com"] + resources: ["tcpingresses"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "traefik-proxy" .Values.sources }} + - apiGroups: ["traefik.containo.us", "traefik.io"] + resources: ["ingressroutes", "ingressroutetcps", "ingressrouteudps"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "openshift-route" .Values.sources }} + - apiGroups: ["route.openshift.io"] + resources: ["routes"] + verbs: ["get","watch","list"] +{{- end }} +{{- if has "skipper-routegroup" .Values.sources }} + - apiGroups: ["zalando.org"] + resources: ["routegroups"] + verbs: ["get","watch","list"] + - apiGroups: ["zalando.org"] + resources: ["routegroups/status"] + verbs: ["patch","update"] +{{- end }} +{{- if or (has "f5-virtualserver" .Values.sources) (has "f5-transportserver" .Values.sources) }} + - apiGroups: ["cis.f5.com"] + resources: ["virtualservers", "transportservers"] + verbs: ["get","watch","list"] +{{- end }} +{{- with .Values.rbac.additionalPermissions }} + {{- toYaml . | nindent 2 }} +{{- end }} +{{- if and .Values.rbac.create .Values.namespaced (include "external-dns.hasGatewaySources" .) }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: {{ template "external-dns.fullname" . }}-namespaces + labels: + {{- include "external-dns.labels" . | nindent 4 }} +rules: + - apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] +{{- if .Values.gatewayNamespace }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + name: {{ template "external-dns.fullname" . }}-gateway + namespace: {{ .Values.gatewayNamespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} +rules: + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] +{{- end }} +{{- end }} +{{- end }} diff --git a/external-dns-sigs/templates/clusterrolebinding.yaml b/external-dns-sigs/templates/clusterrolebinding.yaml new file mode 100644 index 00000000..49400c0b --- /dev/null +++ b/external-dns-sigs/templates/clusterrolebinding.yaml @@ -0,0 +1,51 @@ +{{- if .Values.rbac.create -}} +apiVersion: rbac.authorization.k8s.io/v1 +kind: {{ .Values.namespaced | ternary "RoleBinding" "ClusterRoleBinding" }} +metadata: + name: {{ printf "%s-viewer" (include "external-dns.fullname" .) }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: {{ .Values.namespaced | ternary "Role" "ClusterRole" }} + name: {{ template "external-dns.fullname" . }} +subjects: + - kind: ServiceAccount + name: {{ template "external-dns.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- if and .Values.rbac.create .Values.namespaced (include "external-dns.hasGatewaySources" .) }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: {{ template "external-dns.fullname" . }}-namespaces + labels: + {{- include "external-dns.labels" . | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: {{ template "external-dns.fullname" . }}-namespaces +subjects: + - kind: ServiceAccount + name: {{ template "external-dns.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- if .Values.gatewayNamespace }} +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: {{ template "external-dns.fullname" . }}-gateway + namespace: {{ .Values.gatewayNamespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: {{ template "external-dns.fullname" . }}-gateway +subjects: + - kind: ServiceAccount + name: {{ template "external-dns.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} +{{- end }} +{{- end }} +{{- end }} diff --git a/external-dns-sigs/templates/deployment.yaml b/external-dns-sigs/templates/deployment.yaml new file mode 100644 index 00000000..b213f754 --- /dev/null +++ b/external-dns-sigs/templates/deployment.yaml @@ -0,0 +1,304 @@ +{{- $defaultSelector := (include "external-dns.labelSelector" $ ) | fromYaml -}} +{{- $providerName := tpl (include "external-dns.providerName" .) $ }} +apiVersion: apps/v1 +kind: Deployment +metadata: + name: {{ include "external-dns.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} + {{- with .Values.deploymentAnnotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + replicas: 1 + selector: + matchLabels: + {{- include "external-dns.selectorLabels" . | nindent 6 }} + strategy: + {{- toYaml .Values.deploymentStrategy | nindent 4 }} + {{- if not (has (quote .Values.revisionHistoryLimit) (list "" (quote ""))) }} + revisionHistoryLimit: {{ .Values.revisionHistoryLimit | int64 }} + {{- end }} + template: + metadata: + labels: + {{- include "external-dns.selectorLabels" . | nindent 8 }} + {{- with .Values.podLabels }} + {{- toYaml . | nindent 8 }} + {{- end }} + {{- if or .Values.secretConfiguration.enabled .Values.podAnnotations }} + annotations: + {{- if .Values.secretConfiguration.enabled }} + checksum/secret: {{ tpl (toYaml .Values.secretConfiguration.data) . | sha256sum }} + {{- end }} + {{- with .Values.podAnnotations }} + {{- toYaml . | nindent 8 }} + {{- end }} + {{- end }} + spec: + {{- if not (quote .Values.automountServiceAccountToken | empty) }} + automountServiceAccountToken: {{ .Values.automountServiceAccountToken }} + {{- end }} + {{- with (default .Values.global.imagePullSecrets .Values.imagePullSecrets) }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: {{ include "external-dns.serviceAccountName" . }} + {{- with .Values.shareProcessNamespace }} + shareProcessNamespace: {{ . }} + {{- end }} + {{- with .Values.podSecurityContext }} + securityContext: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.priorityClassName }} + priorityClassName: {{ . | quote }} + {{- end }} + {{- with .Values.terminationGracePeriodSeconds }} + terminationGracePeriodSeconds: {{ . }} + {{- end }} + {{- with .Values.dnsPolicy }} + dnsPolicy: {{ . }} + {{- end }} + {{- with .Values.dnsConfig }} + dnsConfig: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.initContainers }} + initContainers: + {{- toYaml . | nindent 8 }} + {{- end }} + containers: + {{- with .Values.extraContainers }} + {{- toYaml . | nindent 8 }} + {{- end }} + - name: external-dns + {{- with .Values.securityContext }} + securityContext: + {{- toYaml . | nindent 12 }} + {{- end }} + image: {{ include "external-dns.image" . }} + imagePullPolicy: {{ .Values.image.pullPolicy }} + {{- with .Values.env }} + env: + {{- toYaml . | nindent 12 }} + {{- end }} + args: + - --log-level={{ .Values.logLevel }} + - --log-format={{ .Values.logFormat }} + - --interval={{ .Values.interval }} + {{- if .Values.triggerLoopOnEvent }} + - --events + {{- end }} + {{- range .Values.sources }} + - --source={{ . }} + {{- end }} + - --policy={{ .Values.policy }} + - --registry={{ .Values.registry }} + {{- if .Values.txtOwnerId }} + - --txt-owner-id={{ .Values.txtOwnerId }} + {{- end }} + {{- if and .Values.txtPrefix .Values.txtSuffix }} + {{- fail (printf "'txtPrefix' and 'txtSuffix' are mutually exclusive") }} + {{- end }} + {{- if .Values.txtPrefix }} + - --txt-prefix={{ .Values.txtPrefix }} + {{- else if .Values.txtSuffix }} + - --txt-suffix={{ .Values.txtSuffix }} + {{- end }} + {{- if .Values.namespaced }} + - --namespace={{ .Release.Namespace }} + {{- end }} + {{- if .Values.gatewayNamespace }} + - --gateway-namespace={{ .Values.gatewayNamespace }} + {{- end }} + {{- range .Values.domainFilters }} + - --domain-filter={{ . }} + {{- end }} + {{- range .Values.excludeDomains }} + - --exclude-domains={{ . }} + {{- end }} + {{- if .Values.labelFilter }} + - --label-filter={{ .Values.labelFilter }} + {{- end }} + {{- if .Values.annotationFilter }} + - --annotation-filter={{ .Values.annotationFilter }} + {{- end }} + {{- if .Values.annotationPrefix }} + - --annotation-prefix={{ .Values.annotationPrefix }} + {{- end }} + {{- range .Values.managedRecordTypes }} + - --managed-record-types={{ . }} + {{- end }} + - --provider={{ $providerName }} + {{- if kindIs "map" .Values.extraArgs }} + {{- range $key, $value := .Values.extraArgs }} + {{- if not (kindIs "invalid" $value) }} + {{- if kindIs "slice" $value }} + {{- range $value }} + - --{{ $key }}={{ tpl (. | toString) $ }} + {{- end }} + {{- else }} + - --{{ $key }}={{ tpl ($value | toString) $ }} + {{- end }} + {{- else }} + - --{{ $key }} + {{- end }} + {{- end }} + {{- end }} + {{- if kindIs "slice" .Values.extraArgs }} + {{- range .Values.extraArgs }} + - {{ tpl . $ }} + {{- end }} + {{- end }} + ports: + - name: http + protocol: TCP + containerPort: 7979 + livenessProbe: + {{- toYaml .Values.livenessProbe | nindent 12 }} + readinessProbe: + {{- toYaml .Values.readinessProbe | nindent 12 }} + {{- if or .Values.secretConfiguration.enabled .Values.extraVolumeMounts }} + volumeMounts: + {{- if .Values.secretConfiguration.enabled }} + - name: secrets + mountPath: {{ tpl .Values.secretConfiguration.mountPath $ }} + {{- with .Values.secretConfiguration.subPath }} + subPath: {{ tpl . $ }} + {{- end }} + {{- end }} + {{- with .Values.extraVolumeMounts }} + {{- toYaml . | nindent 12 }} + {{- end }} + {{- end }} + {{- with .Values.resources }} + resources: + {{- toYaml . | nindent 12 }} + {{- end }} + {{- if eq $providerName "webhook" }} + {{- with .Values.provider.webhook }} + - name: webhook + image: {{ include "external-dns.webhookImage" . }} + imagePullPolicy: {{ .image.pullPolicy }} + {{- with .env }} + env: + {{- toYaml . | nindent 12 }} + {{- end }} + {{- with .args }} + args: + {{- toYaml . | nindent 12 }} + {{- end }} + ports: + - name: http-webhook + protocol: TCP + containerPort: 8080 + livenessProbe: + {{- toYaml .livenessProbe | nindent 12 }} + readinessProbe: + {{- toYaml .readinessProbe | nindent 12 }} + {{- if .extraVolumeMounts }} + volumeMounts: + {{- with .extraVolumeMounts }} + {{- toYaml . | nindent 12 }} + {{- end }} + {{- end }} + {{- with .resources }} + resources: + {{- toYaml . | nindent 12 }} + {{- end }} + {{- with .securityContext }} + securityContext: + {{- toYaml . | nindent 12 }} + {{- end }} + {{- end }} + {{- end }} + {{- if or .Values.secretConfiguration.enabled .Values.extraVolumes }} + volumes: + {{- if .Values.secretConfiguration.enabled }} + - name: secrets + secret: + secretName: {{ include "external-dns.fullname" . }} + {{- end }} + {{- with .Values.extraVolumes }} + {{- toYaml . | nindent 8 }} + {{- end }} + {{- end }} + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- with .nodeAffinity }} + nodeAffinity: + {{- toYaml . | nindent 10 }} + {{- end }} + {{- with .podAffinity }} + podAffinity: + {{- with .preferredDuringSchedulingIgnoredDuringExecution }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- range . }} + - podAffinityTerm: + {{- if dig "podAffinityTerm" "labelSelector" nil . }} + {{- toYaml .podAffinityTerm | nindent 16 }} + {{- else }} + {{- (merge $defaultSelector .podAffinityTerm) | toYaml | nindent 16 }} + {{- end }} + weight: {{ .weight }} + {{- end }} + {{- end }} + {{- with .requiredDuringSchedulingIgnoredDuringExecution }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- range . }} + {{- if dig "labelSelector" nil . }} + - {{ toYaml . | indent 16 | trim }} + {{- else }} + - {{ (merge $defaultSelector .) | toYaml | indent 16 | trim }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- with .podAntiAffinity }} + podAntiAffinity: + {{- with .preferredDuringSchedulingIgnoredDuringExecution }} + preferredDuringSchedulingIgnoredDuringExecution: + {{- range . }} + - podAffinityTerm: + {{- if dig "podAffinityTerm" "labelSelector" nil . }} + {{- toYaml .podAffinityTerm | nindent 16 }} + {{- else }} + {{- (merge $defaultSelector .podAffinityTerm) | toYaml | nindent 16 }} + {{- end }} + weight: {{ .weight }} + {{- end }} + {{- end }} + {{- with .requiredDuringSchedulingIgnoredDuringExecution }} + requiredDuringSchedulingIgnoredDuringExecution: + {{- range . }} + {{- if dig "labelSelector" nil . }} + - {{ toYaml . | indent 16 | trim }} + {{- else }} + - {{ (merge $defaultSelector .) | toYaml | indent 16 | trim }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- end }} + {{- with .Values.topologySpreadConstraints }} + topologySpreadConstraints: + {{- range . }} + - {{ toYaml . | nindent 10 | trim }} + {{- if not (hasKey . "labelSelector") }} + labelSelector: + matchLabels: + {{- include "external-dns.selectorLabels" $ | nindent 14 }} + {{- end }} + {{- end }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/external-dns-sigs/templates/secret.yaml b/external-dns-sigs/templates/secret.yaml new file mode 100644 index 00000000..89ec1fe5 --- /dev/null +++ b/external-dns-sigs/templates/secret.yaml @@ -0,0 +1,13 @@ +{{- if .Values.secretConfiguration.enabled }} +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "external-dns.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} +data: +{{- range $key, $value := .Values.secretConfiguration.data }} + {{ $key }}: {{ tpl $value $ | b64enc | quote }} +{{- end }} +{{- end }} diff --git a/external-dns-sigs/templates/service.yaml b/external-dns-sigs/templates/service.yaml new file mode 100644 index 00000000..e55e2a36 --- /dev/null +++ b/external-dns-sigs/templates/service.yaml @@ -0,0 +1,36 @@ +{{- $providerName := include "external-dns.providerName" . }} +apiVersion: v1 +kind: Service +metadata: + name: {{ include "external-dns.fullname" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} + {{- with .Values.service.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} +spec: +{{- with .Values.service.ipFamilies }} + ipFamilies: + {{- toYaml . | nindent 4 }} +{{- end }} +{{- with .Values.service.ipFamilyPolicy }} + ipFamilyPolicy: {{ . }} +{{- end }} + type: ClusterIP + selector: + {{- include "external-dns.selectorLabels" . | nindent 4 }} + ports: + - name: http + port: {{ .Values.service.port }} + targetPort: http + protocol: TCP + {{- if eq $providerName "webhook" }} + {{- with .Values.provider.webhook.service }} + - name: http-webhook + port: {{ .port }} + targetPort: http-webhook + protocol: TCP + {{- end }} + {{- end }} diff --git a/external-dns-sigs/templates/serviceaccount.yaml b/external-dns-sigs/templates/serviceaccount.yaml new file mode 100644 index 00000000..27196a2a --- /dev/null +++ b/external-dns-sigs/templates/serviceaccount.yaml @@ -0,0 +1,19 @@ +{{- if .Values.serviceAccount.create -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "external-dns.serviceAccountName" . }} + namespace: {{ .Release.Namespace }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} + {{- with .Values.serviceAccount.labels }} + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .Values.serviceAccount.annotations }} + annotations: + {{- range $k, $v := . }} + {{- printf "%s: %s" (toYaml (tpl $k $)) (toYaml (tpl $v $)) | nindent 4 }} + {{- end }} + {{- end }} +automountServiceAccountToken: {{ .Values.serviceAccount.automountServiceAccountToken }} +{{- end }} diff --git a/external-dns-sigs/templates/servicemonitor.yaml b/external-dns-sigs/templates/servicemonitor.yaml new file mode 100644 index 00000000..004756c7 --- /dev/null +++ b/external-dns-sigs/templates/servicemonitor.yaml @@ -0,0 +1,86 @@ +{{- if .Values.serviceMonitor.enabled -}} +{{- $providerName := include "external-dns.providerName" . }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ include "external-dns.fullname" . }} + namespace: {{ default .Release.Namespace .Values.serviceMonitor.namespace }} + {{- with .Values.serviceMonitor.annotations }} + annotations: + {{- toYaml . | nindent 4 }} + {{- end }} + labels: + {{- include "external-dns.labels" . | nindent 4 }} + {{- with .Values.serviceMonitor.additionalLabels }} + {{- toYaml . | nindent 4 }} + {{- end }} +spec: + jobLabel: app.kubernetes.io/instance + namespaceSelector: + matchNames: + - {{ .Release.Namespace }} + selector: + matchLabels: + {{- include "external-dns.selectorLabels" . | nindent 6 }} + endpoints: + - port: http + path: /metrics + {{- with .Values.serviceMonitor.interval }} + interval: {{ . }} + {{- end }} + {{- with .Values.serviceMonitor.scheme }} + scheme: {{ . }} + {{- end }} + {{- with .Values.serviceMonitor.bearerTokenFile }} + bearerTokenFile: {{ . }} + {{- end }} + {{- with .Values.serviceMonitor.tlsConfig }} + tlsConfig: + {{- toYaml .| nindent 8 }} + {{- end }} + {{- with .Values.serviceMonitor.scrapeTimeout }} + scrapeTimeout: {{ . }} + {{- end }} + {{- with .Values.serviceMonitor.metricRelabelings }} + metricRelabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.serviceMonitor.relabelings }} + relabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- if eq $providerName "webhook" }} + {{- with .Values.provider.webhook.serviceMonitor }} + - port: http-webhook + path: /metrics + {{- with .interval }} + interval: {{ . }} + {{- end }} + {{- with .scheme }} + scheme: {{ . }} + {{- end }} + {{- with .bearerTokenFile }} + bearerTokenFile: {{ . }} + {{- end }} + {{- with .tlsConfig }} + tlsConfig: + {{- toYaml .| nindent 8 }} + {{- end }} + {{- with .scrapeTimeout }} + scrapeTimeout: {{ . }} + {{- end }} + {{- with .metricRelabelings }} + metricRelabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .relabelings }} + relabelings: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- end }} + {{- end }} + {{- with .Values.serviceMonitor.targetLabels }} + targetLabels: + {{- toYaml . | nindent 4 }} + {{- end }} +{{- end }} diff --git a/external-dns-sigs/tests/common-metadata_test.yaml b/external-dns-sigs/tests/common-metadata_test.yaml new file mode 100644 index 00000000..3a976b42 --- /dev/null +++ b/external-dns-sigs/tests/common-metadata_test.yaml @@ -0,0 +1,29 @@ +suite: All resources contains metadata +templates: + - "*.yaml" +release: + name: external-dns +chart: + version: "1.15.0" + appVersion: "0.15.0" +tests: + - it: "should contain labels metadata in each template" + set: + secretConfiguration: + enabled: true + mountPath: "/etc/kubernetes/" + serviceMonitor: + enabled: true + asserts: + - exists: + path: metadata.labels + - isNotEmpty: + path: metadata.labels + - equal: + path: metadata.labels + value: + helm.sh/chart: external-dns-1.15.0 + app.kubernetes.io/name: external-dns + app.kubernetes.io/instance: external-dns + app.kubernetes.io/version: "0.15.0" + app.kubernetes.io/managed-by: Helm diff --git a/external-dns-sigs/tests/deployment-config_test.yaml b/external-dns-sigs/tests/deployment-config_test.yaml new file mode 100644 index 00000000..513b8b79 --- /dev/null +++ b/external-dns-sigs/tests/deployment-config_test.yaml @@ -0,0 +1,81 @@ +suite: Deployment configuration +templates: + - deployment.yaml +release: + namespace: default +tests: + - it: should provide expected defaults + asserts: + - isKind: + of: Deployment + - hasDocuments: + count: 1 + - equal: + path: spec.replicas + value: 1 + - equal: + path: spec.strategy.type + value: Recreate + - equal: + path: metadata.namespace + value: default + - equal: + path: spec.template.spec.automountServiceAccountToken + value: true + + - it: should provide expected defaults for securityContext + asserts: + - isSubset: + path: spec.template.spec.containers[?(@.name == "external-dns")] + content: + securityContext: + allowPrivilegeEscalation: false + capabilities: + drop: + - ALL + privileged: false + readOnlyRootFilesystem: true + runAsGroup: 65532 + runAsNonRoot: true + runAsUser: 65532 + + - it: should provide expected defaults for liveness and readiness + asserts: + - isSubset: + path: spec.template.spec.containers[?(@.name == "external-dns")] + content: + readinessProbe: + failureThreshold: 6 + httpGet: + path: /healthz + port: http + initialDelaySeconds: 5 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + livenessProbe: + failureThreshold: 2 + httpGet: + path: /healthz + port: http + initialDelaySeconds: 10 + periodSeconds: 10 + successThreshold: 1 + timeoutSeconds: 5 + + - it: should have service account set + release: + name: test + asserts: + - equal: + path: spec.template.spec.serviceAccountName + value: test-external-dns + + - it: should have not be able to change replicas when specified via values + set: + deployment: + replicas: 3 + asserts: + - equal: + path: spec.replicas + value: 1 diff --git a/external-dns-sigs/tests/deployment-flags_test.yaml b/external-dns-sigs/tests/deployment-flags_test.yaml new file mode 100644 index 00000000..5ea11153 --- /dev/null +++ b/external-dns-sigs/tests/deployment-flags_test.yaml @@ -0,0 +1,204 @@ +suite: Deployment flags configurations +templates: + - deployment.yaml +release: + namespace: default +tests: + - it: should provide expected default flags + asserts: + - exists : + path: spec.template.spec.containers[?(@.name == "external-dns")] + - equal : + path: spec.template.spec.containers[?(@.name == "external-dns")].args + value: + - --log-level=info + - --log-format=text + - --interval=1m + - --source=service + - --source=ingress + - --policy=upsert-only + - --registry=txt + - --provider=aws + + - it: should configure 'txtSuffix' when not empty with 'txtPrefix' empty + set: + txtPrefix: "" + txtSuffix: "test-suffix" + asserts: + - exists : + path: spec.template.spec.containers[?(@.name == "external-dns")] + - equal : + path: spec.template.spec.containers[?(@.name == "external-dns")].args + value: + - --log-level=info + - --log-format=text + - --interval=1m + - --source=service + - --source=ingress + - --policy=upsert-only + - --registry=txt + - --txt-suffix=test-suffix + - --provider=aws + - notContains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--txt-prefix=test-prefix" + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--txt-suffix=test-suffix" + + - it: should configure 'txtSuffix' when set and 'txtPrefix' is not present + set: + txtSuffix: "custom-suffix" + asserts: + - exists : + path: spec.template.spec.containers[?(@.name == "external-dns")] + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--txt-suffix=custom-suffix" + + - it: should be able configure multiple sources + set: + sources: + - fake + - crd + asserts: + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--source=fake" + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--source=crd" + + - it: should be able to configure in single namespace + set: + namespaced: true + asserts: + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--namespace=default" + + - it: should manage multiple zones with 'extraArgs' + set: + extraArgs: + - --zone-id-filter=/hostedzone/Z00001 + - --zone-id-filter=/hostedzone/Z00002 + - --zone-id-filter=/hostedzone/Z00003 + - --zone-id-filter=/hostedzone/Z00004 + - --zone-id-filter=/hostedzone/Z00005 + asserts: + - equal: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + value: + - --log-level=info + - --log-format=text + - --interval=1m + - --source=service + - --source=ingress + - --policy=upsert-only + - --registry=txt + - --provider=aws + - --zone-id-filter=/hostedzone/Z00001 + - --zone-id-filter=/hostedzone/Z00002 + - --zone-id-filter=/hostedzone/Z00003 + - --zone-id-filter=/hostedzone/Z00004 + - --zone-id-filter=/hostedzone/Z00005 + + + - it: should allow 'extraArgs' to be a slice + set: + extraArgs: + - --extraArgA=valueA + - --extraArgB=valueB + - --extraArgC=valueC-1 + - --extraArgC=valueC-2 + + asserts: + - equal: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + value: + - --log-level=info + - --log-format=text + - --interval=1m + - --source=service + - --source=ingress + - --policy=upsert-only + - --registry=txt + - --provider=aws + - --extraArgA=valueA + - --extraArgB=valueB + - --extraArgC=valueC-1 + - --extraArgC=valueC-2 + + + - it: should allow 'extraArgs' to be a map with its entries potentially being slices (lists) themselves + set: + extraArgs: + extraArgA: valueA + extraArgB: valueB + extraArgC: + - valueC-1 + - valueC-2 + + asserts: + - equal: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + value: + - --log-level=info + - --log-format=text + - --interval=1m + - --source=service + - --source=ingress + - --policy=upsert-only + - --registry=txt + - --provider=aws + - --extraArgA=valueA + - --extraArgB=valueB + - --extraArgC=valueC-1 + - --extraArgC=valueC-2 + + + - it: should throw error when txtPrefix and txtSuffix are set + set: + txtPrefix: "test-prefix" + txtSuffix: "test-suffix" + asserts: + - failedTemplate: + errorMessage: "'txtPrefix' and 'txtSuffix' are mutually exclusive" + + - it: should configure custom annotation prefix + set: + annotationPrefix: "custom.io/" + asserts: + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--annotation-prefix=custom.io/" + + - it: should not include annotation-prefix flag when not set + set: + annotationPrefix: null + asserts: + - notContains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--annotation-prefix" + + - it: should configure annotation prefix with other flags + set: + annotationPrefix: "internal.company.io/" + provider: + name: cloudflare + sources: + - service + - ingress + asserts: + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--annotation-prefix=internal.company.io/" + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--provider=cloudflare" + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--source=service" + - contains: + path: spec.template.spec.containers[?(@.name == "external-dns")].args + content: "--source=ingress" diff --git a/external-dns-sigs/tests/deployment-scheduling_test.yaml b/external-dns-sigs/tests/deployment-scheduling_test.yaml new file mode 100644 index 00000000..0a61fbfd --- /dev/null +++ b/external-dns-sigs/tests/deployment-scheduling_test.yaml @@ -0,0 +1,139 @@ +suite: Deployment scheduling configuration +templates: + - deployment.yaml +release: + name: external-dns + namespace: default +tests: + - it: should not provide defaults for affinities or tolerations + asserts: + - isKind: + of: Deployment + - notExists: + path: spec.template.spec.tolerations + - notExists: + path: spec.template.spec.affinity + + - it: should provide support for custom affinities + set: + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: topology.kubernetes.io/zone + operator: In + values: + - zoneA + - zoneB + asserts: + - equal: + path: spec.template.spec.affinity + value: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: topology.kubernetes.io/zone + operator: In + values: + - zoneA + - zoneB + + - it: should provide support for configuring node and pod affinities + set: + affinity: + podAntiAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + - topologyKey: kubernetes.io/hostname + labelSelector: + matchExpressions: + - key: app + operator: In + values: + - test-pod-scheduling-config + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: datadog-agent + operator: In + values: + - standard + - key: iam/scope + operator: In + values: + - namespace + asserts: + - equal: + path: spec.template.spec.affinity + value: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: datadog-agent + operator: In + values: + - standard + - key: iam/scope + operator: In + values: + - namespace + podAntiAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + - labelSelector: + matchExpressions: + - key: app + operator: In + values: + - test-pod-scheduling-config + topologyKey: kubernetes.io/hostname + + - it: should provide support for configuring tolerations + set: + tolerations: + - key: "key1" + operator: "Equal" + value: "value1" + effect: "NoSchedule" + - key: iam/scope + operator: Equal + value: namespace + effect: NoExecute + asserts: + - notExists: + path: spec.template.spec.affinity + - exists: + path: spec.template.spec.tolerations + - equal: + path: spec.template.spec.tolerations + value: + - effect: NoSchedule + key: key1 + operator: Equal + value: value1 + - effect: NoExecute + key: iam/scope + operator: Equal + value: namespace + + - it: should include selector labels when setting topologySpreadConstraints + set: + topologySpreadConstraints: + - maxSkew: 1 + topologyKey: topology.kubernetes.io/zone + whenUnsatisfiable: ScheduleAnyway + asserts: + - exists: + path: spec.template.spec.topologySpreadConstraints + - equal: + path: spec.template.spec.topologySpreadConstraints + value: + - maxSkew: 1 + topologyKey: topology.kubernetes.io/zone + whenUnsatisfiable: ScheduleAnyway + labelSelector: + matchLabels: + app.kubernetes.io/name: external-dns + app.kubernetes.io/instance: external-dns diff --git a/external-dns-sigs/tests/json-schema_test.yaml b/external-dns-sigs/tests/json-schema_test.yaml new file mode 100644 index 00000000..3538cb75 --- /dev/null +++ b/external-dns-sigs/tests/json-schema_test.yaml @@ -0,0 +1,73 @@ +suite: Test json value schema validation +templates: + - templates/* +release: + name: notes + namespace: apps-notes +tests: + - it: should not throw an error when legacy provider is a string + set: + provider: legacy + asserts: + - notFailedTemplate: {} + + - it: should not throw an error when provider is an object + set: + provider: + name: aws + webhook: {} + asserts: + - notFailedTemplate: {} + + - it: should not throw an error when 'enabled' value is provided + set: + enabled: true + asserts: + - notFailedTemplate: {} + + - it: should throw an error when 'enabled' value is not a bool or nil + set: + enabled: "abrakadabra" + asserts: + - failedTemplate: + errorPattern: "got string, want null or boolean" + + - it: should fail if provider is null + set: + provider: null + asserts: + - failedTemplate: + errorPattern: 'executing "external-dns.providerName" at <.Values.provider.name>: nil pointer evaluating interface {}.name' + + - it: should not fail if provider block is empty + set: + provider: {} + asserts: + - notFailedTemplate: {} + + - it: should not fail when labelFilter has condition + set: + labelFilter: "mydomain.io/enable-dns-record in (true)" + asserts: + - notFailedTemplate: {} + + - it: should not fail when livenessProbe is null + set: + livenessProbe: null + asserts: + - notFailedTemplate: {} + + - it: should not fail when readinessProbe is null + set: + readinessProbe: null + asserts: + - notFailedTemplate: {} + + - it: should not fail when provider webhook serviceMonitor interval is not null + set: + provider: + webhook: + serviceMonitor: + interval: 30s + asserts: + - notFailedTemplate: {} diff --git a/external-dns-sigs/tests/notes-deprecation_test.yaml b/external-dns-sigs/tests/notes-deprecation_test.yaml new file mode 100644 index 00000000..059ff60a --- /dev/null +++ b/external-dns-sigs/tests/notes-deprecation_test.yaml @@ -0,0 +1,26 @@ +suite: Test NOTES.txt deprecations +templates: + - templates/NOTES.txt +release: + name: notes + namespace: apps-notes +tests: + - it: should output a deprecation message when legacy provider configuration is in use + set: + provider: legacy + asserts: + - matchRegexRaw: + pattern: "🚧 DEPRECATIONS 🚧" + - matchRegexRaw: + pattern: | + ❗❗❗ DEPRECATED ❗❗❗\sThe legacy 'provider: ' configuration is in use. Support will be removed in future releases. + + - it: should not output a deprecation message when supported provider configuration is in use + set: + provider: + name: non-legacy-config + asserts: + - notMatchRegexRaw: + pattern: "🚧 DEPRECATIONS 🚧" + - notMatchRegexRaw: + pattern: ❗❗❗ DEPRECATED ❗❗❗ diff --git a/external-dns-sigs/tests/notes_test.yaml b/external-dns-sigs/tests/notes_test.yaml new file mode 100644 index 00000000..c165ca2d --- /dev/null +++ b/external-dns-sigs/tests/notes_test.yaml @@ -0,0 +1,21 @@ +suite: NOTES.txt output +templates: + - NOTES.txt +chart: + appVersion: 0.15.0 + version: 1.15.0 +tests: + - it: should display message + set: + rbac: + namespaced: true + asserts: + - equalRaw: + value: | + *********************************************************************** + * External DNS * + *********************************************************************** + Chart version: 1.15.0 + App version: 0.15.0 + Image tag: registry.k8s.io/external-dns/external-dns:v0.15.0 + *********************************************************************** diff --git a/external-dns-sigs/tests/rbac_test.yaml b/external-dns-sigs/tests/rbac_test.yaml new file mode 100644 index 00000000..ab4a1576 --- /dev/null +++ b/external-dns-sigs/tests/rbac_test.yaml @@ -0,0 +1,546 @@ +suite: RBAC configuration +templates: + - clusterrole.yaml + - clusterrolebinding.yaml + - serviceaccount.yaml +release: + name: rbac +tests: + - it: should create default RBAC related objects + asserts: + - isKind: + of: ClusterRole + template: clusterrole.yaml + - equal: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + - isKind: + of: ClusterRoleBinding + template: clusterrolebinding.yaml + - equal: + path: metadata.name + value: rbac-external-dns-viewer + template: clusterrolebinding.yaml + - isKind: + of: ServiceAccount + template: serviceaccount.yaml + - equal: + path: metadata.name + value: rbac-external-dns + template: serviceaccount.yaml + + - it: should create default RBAC rules + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: [""] + resources: ["nodes"] + verbs: ["list", "watch"] + - apiGroups: [""] + resources: ["pods"] + verbs: ["get", "watch", "list"] + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["discovery.k8s.io"] + resources: ["endpointslices"] + verbs: ["get","watch","list"] + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + + - it: should create no RBAC rules when no sources are set + set: + sources: [] + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: null + + - it: should create default RBAC rules for 'ingresses' with source 'ingress' + set: + sources: + - ingress + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'nodes', 'pods', 'services' and 'endpointslices' with source 'service' + set: + sources: + - service + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: [""] + resources: ["nodes"] + verbs: ["list", "watch"] + - apiGroups: [""] + resources: ["pods"] + verbs: ["get", "watch", "list"] + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["discovery.k8s.io"] + resources: ["endpointslices"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'ambassador-host' + set: + sources: + - ambassador-host + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["getambassador.io"] + resources: ["hosts","ingresses"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'crd' and 'traefik-proxy' + set: + sources: + - crd + - traefik-proxy + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["externaldns.k8s.io"] + resources: ["dnsendpoints"] + verbs: ["get","watch","list"] + - apiGroups: ["externaldns.k8s.io"] + resources: ["dnsendpoints/status"] + verbs: ["*"] + - apiGroups: ["traefik.containo.us", "traefik.io"] + resources: ["ingressroutes", "ingressroutetcps", "ingressrouteudps"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'f5' when 'f5-virtualserver' is set + set: + sources: + - f5-virtualserver + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["cis.f5.com"] + resources: ["virtualservers", "transportservers"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'f5' when 'f5-transportserver' is set + set: + sources: + - f5-transportserver + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["cis.f5.com"] + resources: ["virtualservers", "transportservers"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'gateway-api' with source 'gateway-httproute' + set: + sources: + - gateway-httproute + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + - apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["httproutes"] + verbs: ["get","watch","list"] + + - it: should create default RBAC rules for 'gateway-api' with sources 'tlsroute,tcproute,udproute' + set: + sources: + - gateway-tlsroute + - gateway-tcproute + - gateway-udproute + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + - apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["tlsroutes"] + verbs: ["get","watch","list"] + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["tcproutes"] + verbs: ["get","watch","list"] + - apiGroups: ["gateway.networking.k8s.io"] + resources: ["udproutes"] + verbs: ["get","watch","list"] + + - it: should create Role instead of ClusterRole when namespaced is true + set: + namespaced: true + sources: + - service + asserts: + - isKind: + of: Role + template: clusterrole.yaml + - equal: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + + - it: should create RoleBinding instead of ClusterRoleBinding when namespaced is true + set: + namespaced: true + sources: + - service + asserts: + - isKind: + of: RoleBinding + template: clusterrolebinding.yaml + - equal: + path: metadata.name + value: rbac-external-dns-viewer + template: clusterrolebinding.yaml + + - it: should create all required resources when namespaced=true and gatewayNamespace is specified + set: + namespaced: true + gatewayNamespace: gateway-ns + sources: + - gateway-httproute + asserts: + # Should have: main Role + ClusterRole for namespaces + Gateway Role + - hasDocuments: + count: 3 + template: clusterrole.yaml + - hasDocuments: + count: 3 + template: clusterrolebinding.yaml + + # Main role should exist and contain route permissions but NOT gateway permissions + - isKind: + of: Role + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["httproutes"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + - notContains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + + # ClusterRole for namespaces should exist + - isKind: + of: ClusterRole + documentSelector: + path: metadata.name + value: rbac-external-dns-namespaces + template: clusterrole.yaml + + # Gateway role should exist and have gateway permissions only + - isKind: + of: Role + documentSelector: + path: metadata.name + value: rbac-external-dns-gateway + template: clusterrole.yaml + - equal: + path: metadata.namespace + value: gateway-ns + documentSelector: + path: metadata.name + value: rbac-external-dns-gateway + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns-gateway + template: clusterrole.yaml + + + - it: should create main Role with gateway permissions and ClusterRole for namespaces when namespaced=true and gatewayNamespace is not set + set: + namespaced: true + sources: + - gateway-httproute + asserts: + # Should have: main Role + ClusterRole for namespaces + - hasDocuments: + count: 2 + template: clusterrole.yaml + - hasDocuments: + count: 2 + template: clusterrolebinding.yaml + # Main Role should exist and contain gateway permissions + - isKind: + of: Role + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["httproutes"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns + template: clusterrole.yaml + # ClusterRole for namespaces should exist + - isKind: + of: ClusterRole + documentSelector: + path: metadata.name + value: rbac-external-dns-namespaces + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] + documentSelector: + path: metadata.name + value: rbac-external-dns-namespaces + template: clusterrole.yaml + + - it: should create ClusterRole with all permissions when namespaced=false and gateway sources exist + set: + namespaced: false + sources: + - gateway-httproute + asserts: + - hasDocuments: + count: 1 + template: clusterrole.yaml + - hasDocuments: + count: 1 + template: clusterrolebinding.yaml + - isKind: + of: ClusterRole + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + template: clusterrole.yaml + - contains: + path: rules + content: + apiGroups: [""] + resources: ["namespaces"] + verbs: ["get","watch","list"] + template: clusterrole.yaml + + - it: should create only ClusterRole when namespaced=false and no gateway sources + set: + namespaced: false + sources: + - service + - ingress + asserts: + - hasDocuments: + count: 1 + template: clusterrole.yaml + - hasDocuments: + count: 1 + template: clusterrolebinding.yaml + - isKind: + of: ClusterRole + template: clusterrole.yaml + - notContains: + path: rules + content: + apiGroups: ["gateway.networking.k8s.io"] + template: clusterrole.yaml + + - it: should create only Role when namespaced=true and no gateway sources + set: + namespaced: true + sources: + - service + - ingress + asserts: + - hasDocuments: + count: 1 + template: clusterrole.yaml + - hasDocuments: + count: 1 + template: clusterrolebinding.yaml + - isKind: + of: Role + template: clusterrole.yaml + - isKind: + of: RoleBinding + template: clusterrolebinding.yaml + + - it: should create only Role when namespaced=true for istio sources + set: + namespaced: true + sources: + - istio-virtualservice + - istio-gateway + asserts: + - isKind: + of: Role + template: clusterrole.yaml + - isKind: + of: RoleBinding + template: clusterrolebinding.yaml + - equal: + path: rules + value: + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + - apiGroups: ["networking.istio.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + - apiGroups: ["networking.istio.io"] + resources: ["virtualservices"] + verbs: ["get","watch","list"] + template: clusterrole.yaml + + - it: should create only ClusterRole for istio-gateway with ingress permissions + set: + namespaced: false + sources: + - istio-gateway + asserts: + - isKind: + of: ClusterRole + template: clusterrole.yaml + - isKind: + of: ClusterRoleBinding + template: clusterrolebinding.yaml + - equal: + path: rules + value: + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + - apiGroups: ["networking.istio.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + template: clusterrole.yaml + + - it: should create only ClusterRole for istio-virtualservice with ingress permissions required + set: + namespaced: false + sources: + - istio-virtualservice + asserts: + - isKind: + of: ClusterRole + template: clusterrole.yaml + - isKind: + of: ClusterRoleBinding + template: clusterrolebinding.yaml + - equal: + path: rules + value: + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + - apiGroups: ["networking.istio.io"] + resources: ["gateways"] + verbs: ["get","watch","list"] + - apiGroups: ["networking.istio.io"] + resources: ["virtualservices"] + verbs: ["get","watch","list"] + template: clusterrole.yaml + - it: should create default RBAC rules for 'GlooEdge' when 'gloo-proxy' is set + set: + sources: + - gloo-proxy + asserts: + - template: clusterrole.yaml + equal: + path: rules + value: + - apiGroups: [""] + resources: ["nodes"] + verbs: ["list","watch"] + - apiGroups: [""] + resources: ["pods"] + verbs: ["get","watch","list"] + - apiGroups: [""] + resources: ["services"] + verbs: ["get","watch","list"] + - apiGroups: ["extensions","networking.k8s.io"] + resources: ["ingresses"] + verbs: ["get","watch","list"] + - apiGroups: ["gloo.solo.io","gateway.solo.io"] + resources: ["proxies","virtualservices","gateways"] + verbs: ["get","watch","list"] diff --git a/external-dns-sigs/tests/secret_test.yaml b/external-dns-sigs/tests/secret_test.yaml new file mode 100644 index 00000000..67d8456b --- /dev/null +++ b/external-dns-sigs/tests/secret_test.yaml @@ -0,0 +1,42 @@ +suite: Secret configuration +templates: + - "secret.yaml" + - "deployment.yaml" +tests: + - it: should not provide secret by default + template: "secret.yaml" + asserts: + - hasDocuments: + count: 0 + + - it: should configure Azure secret + release: + name: under-test + set: + secretConfiguration: + enabled: true + mountPath: "/etc/kubernetes/" + data: + azure.json: | + { + "tenantId": "00000000-0000-0000-0000-000000000000", + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroup": "networking", + "useWorkloadIdentityExtension": true + } + asserts: + - hasDocuments: + count: 1 + - exists: + path: data["azure.json"] + template: "secret.yaml" + - exists: + path: spec.template.spec.volumes + template: "deployment.yaml" + - equal: + path: spec.template.spec.volumes + value: + - name: secrets + secret: + secretName: under-test-external-dns + template: "deployment.yaml" diff --git a/external-dns-sigs/tests/serviceaccount_test.yaml b/external-dns-sigs/tests/serviceaccount_test.yaml new file mode 100644 index 00000000..c1bde432 --- /dev/null +++ b/external-dns-sigs/tests/serviceaccount_test.yaml @@ -0,0 +1,61 @@ +suite: ServiceAccount configuration +templates: + - serviceaccount.yaml +release: + namespace: default +tests: + - it: should provide a single service account by default + asserts: + - isKind: + of: ServiceAccount + - hasDocuments: + count: 1 + - equal: + path: automountServiceAccountToken + value: true + + - it: should provide a way to disable service account + set: + serviceAccount: + create: false + asserts: + - hasDocuments: + count: 0 + + - it: should support annotations without template variables + set: + serviceAccount: + annotations: + eks.amazonaws.com/role-arn: arn:aws:iam::123456789:role/external-dns-role + eks.amazonaws.com/sts-regional-endpoints: "true" + asserts: + - hasDocuments: + count: 1 + - equal: + path: metadata.annotations + value: + eks.amazonaws.com/role-arn: arn:aws:iam::123456789:role/external-dns-role + eks.amazonaws.com/sts-regional-endpoints: "true" + + - it: should support annotations with template variables + release: + name: v1 + set: + account: 9876-dynamic-account-id + serviceAccount: + annotations: + eks.amazonaws.com/role-arn: arn:aws:iam::{{ .Values.account }}:role/external-dns-role + eks.amazonaws.com/sts-regional-endpoints: "true" + tags.k8s.io/service: service-{{ include "external-dns.fullname" . }} + asserts: + - hasDocuments: + count: 1 + - equal: + path: metadata.annotations + value: + eks.amazonaws.com/role-arn: arn:aws:iam::9876-dynamic-account-id:role/external-dns-role + eks.amazonaws.com/sts-regional-endpoints: "true" + tags.k8s.io/service: service-v1-external-dns + - isType: + path: metadata.annotations["eks.amazonaws.com/sts-regional-endpoints"] + type: string diff --git a/external-dns-sigs/values.schema.json b/external-dns-sigs/values.schema.json new file mode 100644 index 00000000..b4c5e3a4 --- /dev/null +++ b/external-dns-sigs/values.schema.json @@ -0,0 +1,892 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "type": "object", + "properties": { + "affinity": { + "description": "Affinity settings for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided for pod affinity or pod anti-affinity one will be created from the pod selector labels.", + "type": "object" + }, + "annotationFilter": { + "description": "Filter resources queried for endpoints by annotation selector.", + "type": [ + "string", + "null" + ] + }, + "annotationPrefix": { + "description": "Annotation prefix for external-dns annotations (useful for split horizon DNS with multiple instances).", + "type": [ + "string", + "null" + ] + }, + "automountServiceAccountToken": { + "description": "Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `Pod`.", + "type": "boolean" + }, + "commonLabels": { + "description": "Labels to add to all chart resources.", + "type": "object" + }, + "deploymentAnnotations": { + "description": "Annotations to add to the `Deployment`.", + "type": "object" + }, + "deploymentStrategy": { + "description": "[Deployment Strategy](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy).", + "type": "object", + "properties": { + "type": { + "default": "Recreate", + "type": "string", + "enum": [ + "Recreate", + "RollingUpdate" + ] + } + }, + "additionalProperties": true + }, + "dnsConfig": { + "description": "[DNS config](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config) for the pod, if not set the default will be used.", + "type": [ + "object", + "null" + ] + }, + "dnsPolicy": { + "description": "[DNS policy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) for the pod, if not set the default will be used.", + "type": [ + "string", + "null" + ] + }, + "domainFilters": { + "description": "Limit possible target zones by domain suffixes.", + "type": "array" + }, + "enabled": { + "description": "No effect - reserved for use in sub-charting", + "type": [ + "boolean", + "null" + ] + }, + "env": { + "description": "[Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `external-dns` container.", + "type": "array" + }, + "excludeDomains": { + "description": "Intentionally exclude domains from being managed.", + "type": "array" + }, + "extraArgs": { + "description": "Extra arguments to provide to _ExternalDNS_. An array or map can be used, with maps allowing for value overrides; maps also support slice values to use the same arg multiple times.", + "type": [ + "array", + "null", + "object" + ], + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "extraContainers": { + "description": "Extra containers to add to the `Deployment`.", + "type": "array" + }, + "extraVolumeMounts": { + "description": "Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `external-dns` container.", + "type": "array" + }, + "extraVolumes": { + "description": "Extra [volumes](https://kubernetes.io/docs/concepts/storage/volumes/) for the `Pod`.", + "type": "array" + }, + "fullnameOverride": { + "description": "Override the full name of the chart.", + "type": [ + "string", + "null" + ] + }, + "gatewayNamespace": { + "description": "_Gateway API_ gateway namespace to watch.", + "type": [ + "string", + "null" + ] + }, + "global": { + "type": "object", + "properties": { + "imagePullSecrets": { + "description": "Global image pull secrets.", + "type": "array", + "items": { + "type": "object" + } + } + } + }, + "image": { + "type": "object", + "properties": { + "pullPolicy": { + "description": "Image pull policy for the `external-dns` container.", + "type": "string", + "enum": [ + "IfNotPresent", + "Always" + ] + }, + "repository": { + "description": "Image repository for the `external-dns` container.", + "type": "string" + }, + "tag": { + "description": "Image tag for the `external-dns` container, this will default to `.Chart.AppVersion` if not set.", + "type": [ + "string", + "null" + ] + } + }, + "additionalProperties": false + }, + "imagePullSecrets": { + "description": "Image pull secrets.", + "type": "array", + "items": { + "type": "object" + } + }, + "initContainers": { + "description": "[Init containers](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) to add to the `Pod` definition.", + "type": "array" + }, + "interval": { + "description": "Interval for DNS updates.", + "type": "string" + }, + "labelFilter": { + "description": "Filter resources queried for endpoints by label selector.", + "type": [ + "string", + "null" + ] + }, + "livenessProbe": { + "description": "[Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container.", + "type": "object", + "properties": { + "failureThreshold": { + "type": "integer" + }, + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": "string" + }, + "port": { + "type": "string" + } + } + }, + "initialDelaySeconds": { + "type": "integer" + }, + "periodSeconds": { + "type": "integer" + }, + "successThreshold": { + "type": "integer" + }, + "timeoutSeconds": { + "type": "integer" + } + } + }, + "logFormat": { + "description": "Log format.", + "default": "text", + "type": "string", + "enum": [ + "text", + "json" + ] + }, + "logLevel": { + "description": "Log level.", + "default": "info", + "type": "string", + "enum": [ + "panic", + "debug", + "info", + "warning", + "error", + "fatal" + ] + }, + "managedRecordTypes": { + "description": "Record types to manage (default: A, AAAA, CNAME)", + "type": [ + "array", + "null" + ], + "uniqueItems": true, + "items": { + "type": "string" + } + }, + "nameOverride": { + "description": "Override the name of the chart.", + "type": [ + "string", + "null" + ] + }, + "namespaced": { + "description": "if `true`, _ExternalDNS_ will run in a namespaced scope (`Role`` and `Rolebinding`` will be namespaced too).", + "type": "boolean" + }, + "nodeSelector": { + "description": "Node labels to match for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).", + "type": "object" + }, + "podAnnotations": { + "description": "Annotations to add to the `Pod`.", + "type": "object" + }, + "podLabels": { + "description": "Labels to add to the `Pod`.", + "type": "object" + }, + "podSecurityContext": { + "description": "[Pod security context](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#podsecuritycontext-v1-core), this supports full customisation.", + "type": "object", + "properties": { + "fsGroup": { + "type": "integer" + }, + "runAsNonRoot": { + "type": "boolean" + }, + "seccompProfile": { + "type": "object", + "properties": { + "type": { + "type": "string" + } + } + } + } + }, + "policy": { + "description": "How DNS records are synchronized between sources and providers; available values are `create-only`, `sync`, \u0026 `upsert-only`.", + "default": "upsert-only", + "type": "string", + "enum": [ + "create-only", + "sync", + "upsert-only" + ] + }, + "priorityClassName": { + "description": "Priority class name for the `Pod`.", + "type": [ + "string", + "null" + ] + }, + "provider": { + "type": [ + "object", + "string" + ], + "properties": { + "name": { + "description": "_ExternalDNS_ provider name; for the available providers and how to configure them see [README](https://github.com/kubernetes-sigs/external-dns/blob/master/charts/external-dns/README.md#providers).", + "type": "string" + }, + "webhook": { + "type": "object", + "properties": { + "args": { + "description": "Extra arguments to provide for the `webhook` container.", + "type": "array" + }, + "env": { + "description": "[Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `webhook` container.", + "type": "array" + }, + "extraVolumeMounts": { + "description": "Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `webhook` container.", + "type": "array" + }, + "image": { + "type": "object", + "properties": { + "pullPolicy": { + "description": "Image pull policy for the `webhook` container.", + "type": "string" + }, + "repository": { + "description": "Image repository for the `webhook` container.", + "type": [ + "string", + "null" + ] + }, + "tag": { + "description": "Image tag for the `webhook` container.", + "type": [ + "string", + "null" + ] + } + } + }, + "limits": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + }, + "livenessProbe": { + "description": "[Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container.", + "type": "object", + "properties": { + "failureThreshold": { + "type": [ + "integer", + "null" + ] + }, + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": [ + "string", + "null" + ] + }, + "port": { + "default": "string", + "type": [ + "integer", + "string" + ] + } + } + }, + "initialDelaySeconds": { + "type": [ + "integer", + "null" + ] + }, + "periodSeconds": { + "type": [ + "integer", + "null" + ] + }, + "successThreshold": { + "type": [ + "integer", + "null" + ] + }, + "timeoutSeconds": { + "type": [ + "integer", + "null" + ] + } + } + }, + "readinessProbe": { + "description": "[Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `webhook` container.", + "type": "object", + "properties": { + "failureThreshold": { + "type": [ + "integer", + "null" + ] + }, + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": [ + "string", + "null" + ] + }, + "port": { + "default": "string", + "type": [ + "integer", + "string" + ] + } + } + }, + "initialDelaySeconds": { + "type": [ + "integer", + "null" + ] + }, + "periodSeconds": { + "type": [ + "integer", + "null" + ] + }, + "successThreshold": { + "type": [ + "integer", + "null" + ] + }, + "timeoutSeconds": { + "type": [ + "integer", + "null" + ] + } + } + }, + "requests": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + }, + "resources": { + "description": "[Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `webhook` container.", + "type": "object" + }, + "securityContext": { + "description": "[Pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `webhook` container.", + "type": "object" + }, + "service": { + "type": "object", + "properties": { + "port": { + "description": "Webhook exposed HTTP port for the service.", + "type": "integer" + } + } + }, + "serviceMonitor": { + "description": "Optional [Service Monitor](https://prometheus-operator.dev/docs/operator/design/#servicemonitor) configuration for the `webhook` container.", + "type": "object", + "properties": { + "bearerTokenFile": { + "type": [ + "string", + "null" + ] + }, + "interval": { + "type": [ + "string", + "null" + ] + }, + "metricRelabelings": { + "type": "array" + }, + "relabelings": { + "type": "array" + }, + "scheme": { + "type": [ + "string", + "null" + ] + }, + "scrapeTimeout": { + "type": [ + "string", + "null" + ] + }, + "tlsConfig": { + "type": "object" + } + } + } + } + } + } + }, + "rbac": { + "type": "object", + "properties": { + "additionalPermissions": { + "description": "Additional rules to add to the `ClusterRole`.", + "type": "array" + }, + "create": { + "description": "If `true`, create a `ClusterRole` \u0026 `ClusterRoleBinding` with access to the Kubernetes API.", + "type": "boolean" + } + }, + "additionalProperties": true + }, + "readinessProbe": { + "description": "[Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container.", + "type": "object", + "properties": { + "failureThreshold": { + "type": "integer" + }, + "httpGet": { + "type": "object", + "properties": { + "path": { + "type": "string" + }, + "port": { + "type": "string" + } + } + }, + "initialDelaySeconds": { + "type": "integer" + }, + "periodSeconds": { + "type": "integer" + }, + "successThreshold": { + "type": "integer" + }, + "timeoutSeconds": { + "type": "integer" + } + } + }, + "registry": { + "description": "Specify the registry for storing ownership and labels. Valid values are `txt`, `aws-sd`, `dynamodb` \u0026 `noop`.", + "default": "txt", + "type": "string", + "enum": [ + "txt", + "aws-sd", + "dynamodb", + "noop" + ] + }, + "resources": { + "description": "[Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `external-dns` container.", + "type": "object", + "properties": { + "limits": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + }, + "requests": { + "type": "object", + "properties": { + "cpu": { + "type": "string" + }, + "memory": { + "type": "string" + } + } + } + } + }, + "revisionHistoryLimit": { + "description": "Specify the number of old `ReplicaSets` to retain to allow rollback of the `Deployment``.", + "type": [ + "integer", + "null" + ], + "minimum": 0 + }, + "secretConfiguration": { + "type": "object", + "properties": { + "data": { + "description": "`Secret` data.", + "type": "object" + }, + "enabled": { + "description": "If `true`, create a `Secret` to store sensitive provider configuration (**DEPRECATED**).", + "type": "boolean" + }, + "mountPath": { + "description": "Mount path for the `Secret`, this can be templated.", + "type": [ + "string", + "null" + ] + }, + "subPath": { + "description": "Sub-path for mounting the `Secret`, this can be templated.", + "type": [ + "string", + "null" + ] + } + } + }, + "securityContext": { + "description": "[Security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `external-dns` container.", + "type": "object", + "properties": { + "allowPrivilegeEscalation": { + "type": "boolean" + }, + "capabilities": { + "type": "object", + "properties": { + "drop": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "privileged": { + "type": "boolean" + }, + "readOnlyRootFilesystem": { + "type": "boolean" + }, + "runAsGroup": { + "type": "integer" + }, + "runAsNonRoot": { + "type": "boolean" + }, + "runAsUser": { + "type": "integer" + } + } + }, + "service": { + "type": "object", + "properties": { + "annotations": { + "description": "Service annotations.", + "type": "object" + }, + "ipFamilies": { + "description": "Service IP families (e.g. IPv4 and/or IPv6).", + "type": [ + "array", + "null" + ], + "maxItems": 2, + "minItems": 0, + "uniqueItems": true, + "items": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + } + }, + "ipFamilyPolicy": { + "description": "Service IP family policy.", + "type": [ + "string", + "null" + ], + "enum": [ + "SingleStack", + "PreferDualStack", + "RequireDualStack", + null + ] + }, + "port": { + "description": "Service HTTP port.", + "default": 7979, + "type": "integer", + "minimum": 0 + } + } + }, + "serviceAccount": { + "type": "object", + "properties": { + "annotations": { + "description": "Annotations to add to the service account. Templates are allowed in both the key and the value. Example: `example.com/annotation/{{ .Values.nameOverride }}: {{ .Values.nameOverride }}`", + "type": "object" + }, + "automountServiceAccountToken": { + "description": "Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `ServiceAccount`.", + "type": "boolean" + }, + "create": { + "description": "If `true`, create a new `ServiceAccount`.", + "type": "boolean" + }, + "labels": { + "description": "Labels to add to the service account.", + "type": "object" + }, + "name": { + "description": "If this is set and `serviceAccount.create` is `true` this will be used for the created `ServiceAccount` name, if set and `serviceAccount.create` is `false` then this will define an existing `ServiceAccount` to use.", + "type": [ + "string", + "null" + ] + } + } + }, + "serviceMonitor": { + "type": "object", + "properties": { + "additionalLabels": { + "description": "Additional labels for the `ServiceMonitor`.", + "type": "object" + }, + "annotations": { + "description": "Annotations to add to the `ServiceMonitor`.", + "type": "object" + }, + "bearerTokenFile": { + "description": "Provide a bearer token file for the `ServiceMonitor`.", + "type": [ + "string", + "null" + ] + }, + "enabled": { + "description": "If `true`, create a `ServiceMonitor` resource to support the _Prometheus Operator_.", + "type": "boolean" + }, + "interval": { + "description": "If set override the _Prometheus_ default interval.", + "type": [ + "string", + "null" + ] + }, + "metricRelabelings": { + "description": "[Metric relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) to apply to samples before ingestion.", + "type": "array" + }, + "namespace": { + "description": "If set create the `ServiceMonitor` in an alternate namespace.", + "type": [ + "string", + "null" + ] + }, + "relabelings": { + "description": "[Relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) to apply to samples before ingestion.", + "type": "array" + }, + "scheme": { + "description": "If set overrides the _Prometheus_ default scheme.", + "type": [ + "string", + "null" + ] + }, + "scrapeTimeout": { + "description": "If set override the _Prometheus_ default scrape timeout.", + "type": [ + "string", + "null" + ] + }, + "targetLabels": { + "description": "Provide target labels for the `ServiceMonitor`.", + "type": "array" + }, + "tlsConfig": { + "description": "Configure the `ServiceMonitor` [TLS config](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig).", + "type": "object" + } + } + }, + "shareProcessNamespace": { + "description": "If `true`, the `Pod` will have [process namespace sharing](https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) enabled.", + "type": "boolean" + }, + "sources": { + "description": "_Kubernetes_ resources to monitor for DNS entries.", + "type": "array", + "items": { + "type": "string" + } + }, + "terminationGracePeriodSeconds": { + "description": "Termination grace period for the `Pod` in seconds.", + "type": [ + "integer", + "null" + ] + }, + "tolerations": { + "description": "Node taints which will be tolerated for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/).", + "type": "array" + }, + "topologySpreadConstraints": { + "description": "Topology spread constraints for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided one will be created from the pod selector labels.", + "type": "array" + }, + "triggerLoopOnEvent": { + "description": "If `true`, triggers run loop on create/update/delete events in addition of regular interval.", + "type": "boolean" + }, + "txtOwnerId": { + "description": "Specify an identifier for this instance of _ExternalDNS_ when using a registry other than `noop`.", + "type": [ + "string", + "null" + ] + }, + "txtPrefix": { + "description": "Specify a prefix for the domain names of TXT records created for the `txt` registry. Mutually exclusive with `txtSuffix`.", + "type": [ + "string", + "null" + ] + }, + "txtSuffix": { + "description": "Specify a suffix for the domain names of TXT records created for the `txt` registry. Mutually exclusive with `txtPrefix`.", + "type": [ + "string", + "null" + ] + } + }, + "additionalProperties": true +} diff --git a/external-dns-sigs/values.yaml b/external-dns-sigs/values.yaml new file mode 100644 index 00000000..46fbe8f7 --- /dev/null +++ b/external-dns-sigs/values.yaml @@ -0,0 +1,322 @@ +# Default values for external-dns. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. + +global: + # -- Global image pull secrets. + imagePullSecrets: [] # @schema item: object + +image: # @schema additionalProperties: false + # -- Image repository for the `external-dns` container. + repository: registry.k8s.io/external-dns/external-dns + # -- Image tag for the `external-dns` container, this will default to `.Chart.AppVersion` if not set. + tag: # @schema type:[string, null] + # -- Image pull policy for the `external-dns` container. + pullPolicy: IfNotPresent # @schema enum:[IfNotPresent, Always] + +# -- Image pull secrets. +imagePullSecrets: [] # @schema item: object + +# -- (string) Override the name of the chart. +nameOverride: # @schema type:[string, null]; default: null + +# -- (string) Override the full name of the chart. +fullnameOverride: # @schema type:[string, null]; default: null + +# -- Labels to add to all chart resources. +commonLabels: {} + +serviceAccount: + # -- If `true`, create a new `ServiceAccount`. + create: true + # -- Labels to add to the service account. + labels: {} + # -- Annotations to add to the service account. Templates are allowed in both the key and the value. Example: `example.com/annotation/{{ .Values.nameOverride }}: {{ .Values.nameOverride }}` + annotations: {} + # -- (string) If this is set and `serviceAccount.create` is `true` this will be used for the created `ServiceAccount` name, if set and `serviceAccount.create` is `false` then this will define an existing `ServiceAccount` to use. + name: # @schema type:[string, null]; default: null + # -- Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `ServiceAccount`. + automountServiceAccountToken: true + +service: + # -- Service annotations. + annotations: {} + # -- Service HTTP port. + port: 7979 # @schema minimum:0; default:7979 + # -- Service IP families (e.g. IPv4 and/or IPv6). + ipFamilies: [] # @schema type: [array, null]; item: string; itemEnum: ["IPv4", "IPv6"]; minItems:0; maxItems:2; uniqueItems: true + # - IPv4 + # - IPv6 + # -- Service IP family policy. + ipFamilyPolicy: # @schema type: [string, null]; enum:[SingleStack, PreferDualStack, RequireDualStack, null] + +rbac: # @schema additionalProperties: true + # -- If `true`, create a `ClusterRole` & `ClusterRoleBinding` with access to the Kubernetes API. + create: true + # -- Additional rules to add to the `ClusterRole`. + additionalPermissions: [] + +# -- Annotations to add to the `Deployment`. +deploymentAnnotations: {} + +# -- Extra containers to add to the `Deployment`. +extraContainers: [] + +# -- [Deployment Strategy](https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy). +deploymentStrategy: # @schema additionalProperties: true + type: Recreate # @schema enum:[Recreate, RollingUpdate]; type:string; default: Recreate + +# -- (int) Specify the number of old `ReplicaSets` to retain to allow rollback of the `Deployment``. +revisionHistoryLimit: # @schema type:[integer, null];minimum:0 + +# -- Labels to add to the `Pod`. +podLabels: {} + +# -- Annotations to add to the `Pod`. +podAnnotations: {} + +# -- (bool) Set this to `false` to [opt out of API credential automounting](https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#opt-out-of-api-credential-automounting) for the `Pod`. +automountServiceAccountToken: true + +# -- If `true`, the `Pod` will have [process namespace sharing](https://kubernetes.io/docs/tasks/configure-pod-container/share-process-namespace/) enabled. +shareProcessNamespace: false + +# -- [Pod security context](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.22/#podsecuritycontext-v1-core), this supports full customisation. +# @default -- See _values.yaml_ +podSecurityContext: + runAsNonRoot: true + fsGroup: 65534 + seccompProfile: + type: RuntimeDefault + +# -- (string) Priority class name for the `Pod`. +priorityClassName: # @schema type:[string, null]; default: null + +# -- (int) Termination grace period for the `Pod` in seconds. +terminationGracePeriodSeconds: # @schema type:[integer, null] + +# -- (string) [DNS policy](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy) for the pod, if not set the default will be used. +dnsPolicy: # @schema type:[string, null]; default: null + +# -- (object) [DNS config](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config) for the pod, if not set the default will be used. +dnsConfig: # @schema type:[object, null]; default: null + +# -- [Init containers](https://kubernetes.io/docs/concepts/workloads/pods/init-containers/) to add to the `Pod` definition. +initContainers: [] + +# -- [Security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `external-dns` container. +# @default -- See _values.yaml_ +securityContext: + privileged: false + allowPrivilegeEscalation: false + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 65532 + runAsGroup: 65532 + capabilities: + drop: ["ALL"] + +# -- [Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `external-dns` container. +env: [] + +# -- [Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. +# @default -- See _values.yaml_ +livenessProbe: + httpGet: + path: /healthz + port: http + initialDelaySeconds: 10 + periodSeconds: 10 + timeoutSeconds: 5 + failureThreshold: 2 + successThreshold: 1 + +# -- [Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. +# @default -- See _values.yaml_ +readinessProbe: + httpGet: + path: /healthz + port: http + initialDelaySeconds: 5 + periodSeconds: 10 + timeoutSeconds: 5 + failureThreshold: 6 + successThreshold: 1 + +# -- Extra [volumes](https://kubernetes.io/docs/concepts/storage/volumes/) for the `Pod`. +extraVolumes: [] + +# -- Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `external-dns` container. +extraVolumeMounts: [] + +# -- [Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `external-dns` container. +resources: {} + +# -- Node labels to match for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). +nodeSelector: {} + +# -- Affinity settings for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided for pod affinity or pod anti-affinity one will be created from the pod selector labels. +affinity: {} + +# -- Topology spread constraints for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). If an explicit label selector is not provided one will be created from the pod selector labels. +topologySpreadConstraints: [] + +# -- Node taints which will be tolerated for `Pod` [scheduling](https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/). +tolerations: [] + +serviceMonitor: + # -- If `true`, create a `ServiceMonitor` resource to support the _Prometheus Operator_. + enabled: false + # -- Additional labels for the `ServiceMonitor`. + additionalLabels: {} + # -- Annotations to add to the `ServiceMonitor`. + annotations: {} + # -- (string) If set create the `ServiceMonitor` in an alternate namespace. + namespace: # @schema type:[string, null]; default: null + # -- (string) If set override the _Prometheus_ default interval. + interval: # @schema type:[string, null]; default: null + # -- (string) If set override the _Prometheus_ default scrape timeout. + scrapeTimeout: # @schema type:[string, null]; default: null + # -- (string) If set overrides the _Prometheus_ default scheme. + scheme: # @schema type:[string, null]; default: null + # -- Configure the `ServiceMonitor` [TLS config](https://github.com/coreos/prometheus-operator/blob/master/Documentation/api.md#tlsconfig). + tlsConfig: {} + # -- (string) Provide a bearer token file for the `ServiceMonitor`. + bearerTokenFile: # @schema type:[string, null]; default: null + # -- [Relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#relabel_config) to apply to samples before ingestion. + relabelings: [] + # -- [Metric relabel configs](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#metric_relabel_configs) to apply to samples before ingestion. + metricRelabelings: [] + # -- Provide target labels for the `ServiceMonitor`. + targetLabels: [] + +# -- Log level. +logLevel: info # @schema enum:[panic, debug, info, warning, error, fatal]; type:string; default: "info" + +# -- Log format. +logFormat: text # @schema enum:["text", "json"]; type:string; default: "text" + +# -- Interval for DNS updates. +interval: 1m + +# -- If `true`, triggers run loop on create/update/delete events in addition of regular interval. +triggerLoopOnEvent: false + +# -- if `true`, _ExternalDNS_ will run in a namespaced scope (`Role`` and `Rolebinding`` will be namespaced too). +namespaced: false + +# -- _Gateway API_ gateway namespace to watch. +gatewayNamespace: # @schema type:[string, null]; default: null + +# -- _Kubernetes_ resources to monitor for DNS entries. +sources: + - service + - ingress + +# -- How DNS records are synchronized between sources and providers; available values are `create-only`, `sync`, & `upsert-only`. +policy: upsert-only # @schema enum:[create-only, sync, upsert-only]; type:string; default: "upsert-only" + +# -- Specify the registry for storing ownership and labels. +# Valid values are `txt`, `aws-sd`, `dynamodb` & `noop`. +registry: txt # @schema enum:[txt, aws-sd, dynamodb, noop]; default: "txt" +# -- (string) Specify an identifier for this instance of _ExternalDNS_ when using a registry other than `noop`. +txtOwnerId: # @schema type:[string, null]; default: null +# -- (string) Specify a prefix for the domain names of TXT records created for the `txt` registry. +# Mutually exclusive with `txtSuffix`. +txtPrefix: # @schema type:[string, null]; default: null +# -- (string) Specify a suffix for the domain names of TXT records created for the `txt` registry. +# Mutually exclusive with `txtPrefix`. +txtSuffix: # @schema type:[string, null]; default: null + +# -- Limit possible target zones by domain suffixes. +domainFilters: [] + +# -- Intentionally exclude domains from being managed. +excludeDomains: [] + +# -- Filter resources queried for endpoints by label selector. +labelFilter: # @schema type: [string,null]; default: null + +# -- Filter resources queried for endpoints by annotation selector. +annotationFilter: # @schema type: [string,null]; default: null + +# -- Annotation prefix for external-dns annotations (useful for split horizon DNS with multiple instances). +annotationPrefix: # @schema type: [string,null]; default: null + +# -- Record types to manage (default: A, AAAA, CNAME) +managedRecordTypes: [] # @schema type: [array, null]; item: string; uniqueItems: true + +provider: # @schema type: [object, string] + # -- _ExternalDNS_ provider name; for the available providers and how to configure them see [README](https://github.com/kubernetes-sigs/external-dns/blob/master/charts/external-dns/README.md#providers). + name: aws + webhook: + image: + # -- (string) Image repository for the `webhook` container. + repository: # @schema type:[string, null]; default: null + # -- (string) Image tag for the `webhook` container. + tag: # @schema type:[string, null]; default: null + # -- Image pull policy for the `webhook` container. + pullPolicy: IfNotPresent + # -- [Environment variables](https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/) for the `webhook` container. + env: [] + # -- Extra arguments to provide for the `webhook` container. + args: [] + # -- Extra [volume mounts](https://kubernetes.io/docs/concepts/storage/volumes/) for the `webhook` container. + extraVolumeMounts: [] + # -- [Resources](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) for the `webhook` container. + resources: {} + # -- [Pod security context](https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container) for the `webhook` container. + # @default -- See _values.yaml_ + securityContext: {} + # -- [Liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `external-dns` container. + # @default -- See _values.yaml_ + livenessProbe: + httpGet: + path: /healthz # @schema type:[string, null]; default: null + port: http-webhook # @schema type:[integer,string]; default: string + initialDelaySeconds: 10 # @schema type:[integer, null]; default: null + periodSeconds: 10 # @schema type:[integer, null]; default: null + timeoutSeconds: 5 # @schema type:[integer, null]; default: null + failureThreshold: 2 # @schema type:[integer, null]; default: null + successThreshold: 1 # @schema type:[integer, null]; default: null + # -- [Readiness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/) configuration for the `webhook` container. + # @default -- See _values.yaml_ + readinessProbe: + httpGet: + path: /healthz # @schema type:[string, null]; default: null + port: http-webhook # @schema type:[integer,string]; default: string + initialDelaySeconds: 5 # @schema type:[integer, null]; default: null + periodSeconds: 10 # @schema type:[integer, null]; default: null + timeoutSeconds: 5 # @schema type:[integer, null]; default: null + failureThreshold: 6 # @schema type:[integer, null]; default: null + successThreshold: 1 # @schema type:[integer, null]; default: null + service: + # -- Webhook exposed HTTP port for the service. + port: 8080 + # -- Optional [Service Monitor](https://prometheus-operator.dev/docs/operator/design/#servicemonitor) configuration for the `webhook` container. + # @default -- See _values.yaml_ + serviceMonitor: + interval: # @schema type:[string, null]; default: null + scheme: # @schema type:[string, null]; default: null + tlsConfig: {} + bearerTokenFile: # @schema type:[string, null]; default: null + scrapeTimeout: # @schema type:[string, null]; default: null + metricRelabelings: [] + relabelings: [] + +# -- Extra arguments to provide to _ExternalDNS_. +# An array or map can be used, with maps allowing for value overrides; maps also support slice values to use the same arg multiple times. +extraArgs: {} # @schema type: [array, null, object]; item: string; uniqueItems: true + +secretConfiguration: + # -- If `true`, create a `Secret` to store sensitive provider configuration (**DEPRECATED**). + enabled: false + # -- Mount path for the `Secret`, this can be templated. + mountPath: # @schema type:[string, null]; default: null + # -- Sub-path for mounting the `Secret`, this can be templated. + subPath: # @schema type:[string, null]; default: null + # -- `Secret` data. + data: {} + +# -- (bool) No effect - reserved for use in sub-charting. +enabled: # @schema type: [boolean, null]; description: No effect - reserved for use in sub-charting