typekro 0.33.9 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.d.ts +0 -33
- package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.js +63 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -1
- package/dist/compositions/typekro-runtime/types.d.ts +8 -0
- package/dist/compositions/typekro-runtime/types.d.ts.map +1 -1
- package/dist/compositions/typekro-runtime/types.js +1 -0
- package/dist/compositions/typekro-runtime/types.js.map +1 -1
- package/dist/core/aspects/values-merge.d.ts +17 -0
- package/dist/core/aspects/values-merge.d.ts.map +1 -1
- package/dist/core/aspects/values-merge.js +67 -8
- package/dist/core/aspects/values-merge.js.map +1 -1
- package/dist/core/deployment/direct-factory.d.ts +9 -0
- package/dist/core/deployment/direct-factory.d.ts.map +1 -1
- package/dist/core/deployment/direct-factory.js +37 -3
- package/dist/core/deployment/direct-factory.js.map +1 -1
- package/dist/core/deployment/engine.d.ts +34 -0
- package/dist/core/deployment/engine.d.ts.map +1 -1
- package/dist/core/deployment/engine.js +173 -29
- package/dist/core/deployment/engine.js.map +1 -1
- package/dist/core/deployment/index.d.ts +2 -0
- package/dist/core/deployment/index.d.ts.map +1 -1
- package/dist/core/deployment/index.js +1 -0
- package/dist/core/deployment/index.js.map +1 -1
- package/dist/core/deployment/k8s-helpers.d.ts +73 -0
- package/dist/core/deployment/k8s-helpers.d.ts.map +1 -1
- package/dist/core/deployment/k8s-helpers.js +198 -4
- package/dist/core/deployment/k8s-helpers.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +21 -1
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/deployment/status-leaf-resolution.d.ts +101 -0
- package/dist/core/deployment/status-leaf-resolution.d.ts.map +1 -0
- package/dist/core/deployment/status-leaf-resolution.js +232 -0
- package/dist/core/deployment/status-leaf-resolution.js.map +1 -0
- package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/base-strategy.js +31 -3
- package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
- package/dist/core/deployment/strategies/kro-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/kro-strategy.js +8 -1
- package/dist/core/deployment/strategies/kro-strategy.js.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-helpers.js +20 -2
- package/dist/core/expressions/composition/composition-analyzer-helpers.js.map +1 -1
- package/dist/core/kro/index.d.ts +6 -0
- package/dist/core/kro/index.d.ts.map +1 -0
- package/dist/core/kro/index.js +6 -0
- package/dist/core/kro/index.js.map +1 -0
- package/dist/core/kro/label-guard-capability.d.ts +141 -0
- package/dist/core/kro/label-guard-capability.d.ts.map +1 -0
- package/dist/core/kro/label-guard-capability.js +257 -0
- package/dist/core/kro/label-guard-capability.js.map +1 -0
- package/dist/core/kro/labels.d.ts +56 -0
- package/dist/core/kro/labels.d.ts.map +1 -0
- package/dist/core/kro/labels.js +62 -0
- package/dist/core/kro/labels.js.map +1 -0
- package/dist/core/kubernetes/api-capability.d.ts +196 -0
- package/dist/core/kubernetes/api-capability.d.ts.map +1 -0
- package/dist/core/kubernetes/api-capability.js +301 -0
- package/dist/core/kubernetes/api-capability.js.map +1 -0
- package/dist/core/kubernetes/index.d.ts +2 -0
- package/dist/core/kubernetes/index.d.ts.map +1 -1
- package/dist/core/kubernetes/index.js +2 -0
- package/dist/core/kubernetes/index.js.map +1 -1
- package/dist/core/kubernetes/naming.d.ts +100 -0
- package/dist/core/kubernetes/naming.d.ts.map +1 -0
- package/dist/core/kubernetes/naming.js +93 -0
- package/dist/core/kubernetes/naming.js.map +1 -0
- package/dist/core/planning/direct-runtime-adapter.d.ts.map +1 -1
- package/dist/core/planning/direct-runtime-adapter.js +54 -17
- package/dist/core/planning/direct-runtime-adapter.js.map +1 -1
- package/dist/core/planning/planner.d.ts.map +1 -1
- package/dist/core/planning/planner.js +17 -0
- package/dist/core/planning/planner.js.map +1 -1
- package/dist/core/planning/schema.d.ts.map +1 -1
- package/dist/core/planning/schema.js +7 -3
- package/dist/core/planning/schema.js.map +1 -1
- package/dist/core/references/cel-lexical-scanner.d.ts +100 -1
- package/dist/core/references/cel-lexical-scanner.d.ts.map +1 -1
- package/dist/core/references/cel-lexical-scanner.js +196 -2
- package/dist/core/references/cel-lexical-scanner.js.map +1 -1
- package/dist/core/references/cel.d.ts +249 -1
- package/dist/core/references/cel.d.ts.map +1 -1
- package/dist/core/references/cel.js +289 -8
- package/dist/core/references/cel.js.map +1 -1
- package/dist/core/serialization/arktype-ast.d.ts +21 -0
- package/dist/core/serialization/arktype-ast.d.ts.map +1 -0
- package/dist/core/serialization/arktype-ast.js +29 -0
- package/dist/core/serialization/arktype-ast.js.map +1 -0
- package/dist/core/serialization/cel-references.d.ts +133 -32
- package/dist/core/serialization/cel-references.d.ts.map +1 -1
- package/dist/core/serialization/cel-references.js +908 -109
- package/dist/core/serialization/cel-references.js.map +1 -1
- package/dist/core/serialization/core.d.ts.map +1 -1
- package/dist/core/serialization/core.js +13 -2
- package/dist/core/serialization/core.js.map +1 -1
- package/dist/core/serialization/schema.d.ts +16 -2
- package/dist/core/serialization/schema.d.ts.map +1 -1
- package/dist/core/serialization/schema.js +113 -21
- package/dist/core/serialization/schema.js.map +1 -1
- package/dist/core/types/composable.d.ts +7 -1
- package/dist/core/types/composable.d.ts.map +1 -1
- package/dist/core/types/deployment.d.ts +32 -2
- package/dist/core/types/deployment.d.ts.map +1 -1
- package/dist/core/types/serialization.d.ts +37 -0
- package/dist/core/types/serialization.d.ts.map +1 -1
- package/dist/core/validation/cel-dialect.d.ts +246 -0
- package/dist/core/validation/cel-dialect.d.ts.map +1 -0
- package/dist/core/validation/cel-dialect.js +1997 -0
- package/dist/core/validation/cel-dialect.js.map +1 -0
- package/dist/core/validation/cel-validator.d.ts.map +1 -1
- package/dist/core/validation/cel-validator.js +8 -1
- package/dist/core/validation/cel-validator.js.map +1 -1
- package/dist/core/validation/literal-status.d.ts +107 -0
- package/dist/core/validation/literal-status.d.ts.map +1 -0
- package/dist/core/validation/literal-status.js +346 -0
- package/dist/core/validation/literal-status.js.map +1 -0
- package/dist/core/validation/structural-spec-dependence.d.ts +179 -0
- package/dist/core/validation/structural-spec-dependence.d.ts.map +1 -0
- package/dist/core/validation/structural-spec-dependence.js +911 -0
- package/dist/core/validation/structural-spec-dependence.js.map +1 -0
- package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
- package/dist/factories/apisix/compositions/apisix-bootstrap.js +9 -0
- package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.d.ts +6 -0
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js +273 -23
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js.map +1 -1
- package/dist/factories/clickhouse/resources/index.d.ts +1 -0
- package/dist/factories/clickhouse/resources/index.d.ts.map +1 -1
- package/dist/factories/clickhouse/resources/index.js +1 -0
- package/dist/factories/clickhouse/resources/index.js.map +1 -1
- package/dist/factories/clickhouse/resources/installation.d.ts.map +1 -1
- package/dist/factories/clickhouse/resources/installation.js +31 -4
- package/dist/factories/clickhouse/resources/installation.js.map +1 -1
- package/dist/factories/clickhouse/resources/s3-backup.d.ts +215 -0
- package/dist/factories/clickhouse/resources/s3-backup.d.ts.map +1 -0
- package/dist/factories/clickhouse/resources/s3-backup.js +410 -0
- package/dist/factories/clickhouse/resources/s3-backup.js.map +1 -0
- package/dist/factories/clickhouse/types.d.ts +416 -20
- package/dist/factories/clickhouse/types.d.ts.map +1 -1
- package/dist/factories/clickhouse/types.js +235 -11
- package/dist/factories/clickhouse/types.js.map +1 -1
- package/dist/factories/clickhouse/utils/helm-values-mapper.d.ts +42 -0
- package/dist/factories/clickhouse/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/clickhouse/utils/helm-values-mapper.js +48 -0
- package/dist/factories/clickhouse/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/clickhouse/utils/index.d.ts +2 -0
- package/dist/factories/clickhouse/utils/index.d.ts.map +1 -1
- package/dist/factories/clickhouse/utils/index.js +2 -0
- package/dist/factories/clickhouse/utils/index.js.map +1 -1
- package/dist/factories/clickhouse/utils/s3-storage.d.ts +503 -0
- package/dist/factories/clickhouse/utils/s3-storage.d.ts.map +1 -0
- package/dist/factories/clickhouse/utils/s3-storage.js +1139 -0
- package/dist/factories/clickhouse/utils/s3-storage.js.map +1 -0
- package/dist/factories/clickhouse/utils/validation.d.ts +103 -0
- package/dist/factories/clickhouse/utils/validation.d.ts.map +1 -1
- package/dist/factories/clickhouse/utils/validation.js +129 -0
- package/dist/factories/clickhouse/utils/validation.js.map +1 -1
- package/dist/factories/clickhouse/utils/xml.d.ts +87 -0
- package/dist/factories/clickhouse/utils/xml.d.ts.map +1 -0
- package/dist/factories/clickhouse/utils/xml.js +151 -0
- package/dist/factories/clickhouse/utils/xml.js.map +1 -0
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +57 -0
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +266 -7
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js.map +1 -1
- package/dist/factories/clickstack/types.d.ts +205 -26
- package/dist/factories/clickstack/types.d.ts.map +1 -1
- package/dist/factories/clickstack/types.js +106 -8
- package/dist/factories/clickstack/types.js.map +1 -1
- package/dist/factories/clickstack/utils/collector-config.d.ts +104 -0
- package/dist/factories/clickstack/utils/collector-config.d.ts.map +1 -0
- package/dist/factories/clickstack/utils/collector-config.js +266 -0
- package/dist/factories/clickstack/utils/collector-config.js.map +1 -0
- package/dist/factories/clickstack/utils/helm-values-mapper.d.ts +26 -0
- package/dist/factories/clickstack/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/clickstack/utils/helm-values-mapper.js +53 -12
- package/dist/factories/clickstack/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/clickstack/utils/index.d.ts +2 -0
- package/dist/factories/clickstack/utils/index.d.ts.map +1 -1
- package/dist/factories/clickstack/utils/index.js +2 -0
- package/dist/factories/clickstack/utils/index.js.map +1 -1
- package/dist/factories/clickstack/utils/storage.d.ts +449 -0
- package/dist/factories/clickstack/utils/storage.d.ts.map +1 -0
- package/dist/factories/clickstack/utils/storage.js +698 -0
- package/dist/factories/clickstack/utils/storage.js.map +1 -0
- package/dist/factories/cnpg/resources/helm.d.ts.map +1 -1
- package/dist/factories/cnpg/resources/helm.js +4 -4
- package/dist/factories/cnpg/resources/helm.js.map +1 -1
- package/dist/factories/cnpg/types.d.ts +10 -1
- package/dist/factories/cnpg/types.d.ts.map +1 -1
- package/dist/factories/cnpg/types.js.map +1 -1
- package/dist/factories/cnpg/utils/helm-values-mapper.d.ts +19 -2
- package/dist/factories/cnpg/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/cnpg/utils/helm-values-mapper.js +22 -4
- package/dist/factories/cnpg/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/gateway.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/compositions/gateway.js +16 -3
- package/dist/factories/envoy-ai-gateway/compositions/gateway.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/constants.d.ts +5 -2
- package/dist/factories/envoy-ai-gateway/constants.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/constants.js +5 -2
- package/dist/factories/envoy-ai-gateway/constants.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/resources/gateway.d.ts +12 -0
- package/dist/factories/envoy-ai-gateway/resources/gateway.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/resources/gateway.js +27 -104
- package/dist/factories/envoy-ai-gateway/resources/gateway.js.map +1 -1
- package/dist/factories/envoy-ai-gateway/types.d.ts +15 -47
- package/dist/factories/envoy-ai-gateway/types.d.ts.map +1 -1
- package/dist/factories/envoy-ai-gateway/types.js.map +1 -1
- package/dist/factories/gateway-api/constants.d.ts +27 -0
- package/dist/factories/gateway-api/constants.d.ts.map +1 -0
- package/dist/factories/gateway-api/constants.js +27 -0
- package/dist/factories/gateway-api/constants.js.map +1 -0
- package/dist/factories/gateway-api/index.d.ts +14 -0
- package/dist/factories/gateway-api/index.d.ts.map +1 -0
- package/dist/factories/gateway-api/index.js +14 -0
- package/dist/factories/gateway-api/index.js.map +1 -0
- package/dist/factories/gateway-api/readiness.d.ts +67 -0
- package/dist/factories/gateway-api/readiness.d.ts.map +1 -0
- package/dist/factories/gateway-api/readiness.js +213 -0
- package/dist/factories/gateway-api/readiness.js.map +1 -0
- package/dist/factories/gateway-api/resources/gateway.d.ts +91 -0
- package/dist/factories/gateway-api/resources/gateway.d.ts.map +1 -0
- package/dist/factories/gateway-api/resources/gateway.js +99 -0
- package/dist/factories/gateway-api/resources/gateway.js.map +1 -0
- package/dist/factories/gateway-api/resources/index.d.ts +2 -0
- package/dist/factories/gateway-api/resources/index.d.ts.map +1 -0
- package/dist/factories/gateway-api/resources/index.js +2 -0
- package/dist/factories/gateway-api/resources/index.js.map +1 -0
- package/dist/factories/gateway-api/types.d.ts +1269 -0
- package/dist/factories/gateway-api/types.d.ts.map +1 -0
- package/dist/factories/gateway-api/types.js +417 -0
- package/dist/factories/gateway-api/types.js.map +1 -0
- package/dist/factories/helm/readiness-evaluators.d.ts +21 -3
- package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
- package/dist/factories/helm/readiness-evaluators.js +117 -11
- package/dist/factories/helm/readiness-evaluators.js.map +1 -1
- package/dist/factories/helm/types.d.ts +28 -0
- package/dist/factories/helm/types.d.ts.map +1 -1
- package/dist/factories/index.d.ts +2 -0
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/factories/index.js +8 -0
- package/dist/factories/index.js.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.js +10 -0
- package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -1
- package/dist/factories/kubernetes/admission/index.d.ts +2 -0
- package/dist/factories/kubernetes/admission/index.d.ts.map +1 -1
- package/dist/factories/kubernetes/admission/index.js +2 -0
- package/dist/factories/kubernetes/admission/index.js.map +1 -1
- package/dist/factories/kubernetes/admission/label-propagation-guard.d.ts +108 -0
- package/dist/factories/kubernetes/admission/label-propagation-guard.d.ts.map +1 -0
- package/dist/factories/kubernetes/admission/label-propagation-guard.js +247 -0
- package/dist/factories/kubernetes/admission/label-propagation-guard.js.map +1 -0
- package/dist/factories/kubernetes/admission/mutating-admission-policy.d.ts +286 -0
- package/dist/factories/kubernetes/admission/mutating-admission-policy.d.ts.map +1 -0
- package/dist/factories/kubernetes/admission/mutating-admission-policy.js +157 -0
- package/dist/factories/kubernetes/admission/mutating-admission-policy.js.map +1 -0
- package/dist/factories/opensearch/compositions/cluster.d.ts.map +1 -1
- package/dist/factories/opensearch/compositions/cluster.js +6 -1
- package/dist/factories/opensearch/compositions/cluster.js.map +1 -1
- package/dist/factories/ory/compositions/ory-identity-stack.d.ts +8 -8
- package/dist/factories/ory/types.d.ts +16 -16
- package/dist/factories/rook/compositions/object-storage-claim.d.ts +1 -1
- package/dist/factories/rook/compositions/rook-ceph-platform.js +8 -1
- package/dist/factories/rook/compositions/rook-ceph-platform.js.map +1 -1
- package/dist/factories/rook/types.d.ts +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.js +18 -13
- package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
- package/dist/factories/searxng/index.d.ts +3 -0
- package/dist/factories/searxng/index.d.ts.map +1 -1
- package/dist/factories/searxng/index.js +3 -0
- package/dist/factories/searxng/index.js.map +1 -1
- package/dist/factories/searxng/types.js +1 -1
- package/dist/factories/searxng/types.js.map +1 -1
- package/dist/factories/traefik/compositions/index.d.ts +6 -0
- package/dist/factories/traefik/compositions/index.d.ts.map +1 -0
- package/dist/factories/traefik/compositions/index.js +6 -0
- package/dist/factories/traefik/compositions/index.js.map +1 -0
- package/dist/factories/traefik/compositions/traefik-bootstrap.d.ts +185 -0
- package/dist/factories/traefik/compositions/traefik-bootstrap.d.ts.map +1 -0
- package/dist/factories/traefik/compositions/traefik-bootstrap.js +339 -0
- package/dist/factories/traefik/compositions/traefik-bootstrap.js.map +1 -0
- package/dist/factories/traefik/compositions/traefik-helm-repository.d.ts +16 -0
- package/dist/factories/traefik/compositions/traefik-helm-repository.d.ts.map +1 -0
- package/dist/factories/traefik/compositions/traefik-helm-repository.js +31 -0
- package/dist/factories/traefik/compositions/traefik-helm-repository.js.map +1 -0
- package/dist/factories/traefik/constants.d.ts +78 -0
- package/dist/factories/traefik/constants.d.ts.map +1 -0
- package/dist/factories/traefik/constants.js +104 -0
- package/dist/factories/traefik/constants.js.map +1 -0
- package/dist/factories/traefik/index.d.ts +25 -0
- package/dist/factories/traefik/index.d.ts.map +1 -0
- package/dist/factories/traefik/index.js +25 -0
- package/dist/factories/traefik/index.js.map +1 -0
- package/dist/factories/traefik/resources/common.d.ts +68 -0
- package/dist/factories/traefik/resources/common.d.ts.map +1 -0
- package/dist/factories/traefik/resources/common.js +59 -0
- package/dist/factories/traefik/resources/common.js.map +1 -0
- package/dist/factories/traefik/resources/gateway.d.ts +85 -0
- package/dist/factories/traefik/resources/gateway.d.ts.map +1 -0
- package/dist/factories/traefik/resources/gateway.js +109 -0
- package/dist/factories/traefik/resources/gateway.js.map +1 -0
- package/dist/factories/traefik/resources/helm.d.ts +56 -0
- package/dist/factories/traefik/resources/helm.d.ts.map +1 -0
- package/dist/factories/traefik/resources/helm.js +131 -0
- package/dist/factories/traefik/resources/helm.js.map +1 -0
- package/dist/factories/traefik/resources/index.d.ts +10 -0
- package/dist/factories/traefik/resources/index.d.ts.map +1 -0
- package/dist/factories/traefik/resources/index.js +10 -0
- package/dist/factories/traefik/resources/index.js.map +1 -0
- package/dist/factories/traefik/resources/middleware.d.ts +169 -0
- package/dist/factories/traefik/resources/middleware.d.ts.map +1 -0
- package/dist/factories/traefik/resources/middleware.js +225 -0
- package/dist/factories/traefik/resources/middleware.js.map +1 -0
- package/dist/factories/traefik/resources/routing.d.ts +113 -0
- package/dist/factories/traefik/resources/routing.d.ts.map +1 -0
- package/dist/factories/traefik/resources/routing.js +119 -0
- package/dist/factories/traefik/resources/routing.js.map +1 -0
- package/dist/factories/traefik/resources/tls.d.ts +85 -0
- package/dist/factories/traefik/resources/tls.d.ts.map +1 -0
- package/dist/factories/traefik/resources/tls.js +93 -0
- package/dist/factories/traefik/resources/tls.js.map +1 -0
- package/dist/factories/traefik/types.d.ts +2690 -0
- package/dist/factories/traefik/types.d.ts.map +1 -0
- package/dist/factories/traefik/types.js +1084 -0
- package/dist/factories/traefik/types.js.map +1 -0
- package/dist/factories/traefik/utils/helm-values-mapper.d.ts +198 -0
- package/dist/factories/traefik/utils/helm-values-mapper.d.ts.map +1 -0
- package/dist/factories/traefik/utils/helm-values-mapper.js +372 -0
- package/dist/factories/traefik/utils/helm-values-mapper.js.map +1 -0
- package/dist/factories/traefik/utils/index.d.ts +6 -0
- package/dist/factories/traefik/utils/index.d.ts.map +1 -0
- package/dist/factories/traefik/utils/index.js +6 -0
- package/dist/factories/traefik/utils/index.js.map +1 -0
- package/dist/factories/traefik/utils/middleware-validation.d.ts +42 -0
- package/dist/factories/traefik/utils/middleware-validation.d.ts.map +1 -0
- package/dist/factories/traefik/utils/middleware-validation.js +78 -0
- package/dist/factories/traefik/utils/middleware-validation.js.map +1 -0
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.js +10 -0
- package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/package.json +9 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"composition-analyzer-helpers.js","sourceRoot":"","sources":["../../../../src/core/expressions/composition/composition-analyzer-helpers.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"composition-analyzer-helpers.js","sourceRoot":"","sources":["../../../../src/core/expressions/composition/composition-analyzer-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KRO-facing core primitives shared by factories, compositions and tests.
|
|
3
|
+
*/
|
|
4
|
+
export { DISABLE_LABEL_GUARD_ENV, discoverLabelPropagationGuardSupport, LABEL_GUARD_ALTERNATIVES, LABEL_GUARD_API_VERSION_ENV, LABEL_GUARD_CAPABILITY, LABEL_GUARD_UNRESOLVED_REASON, type LabelPropagationGuardCapability, type LabelPropagationGuardStatus, probeLabelPropagationGuardSupport, resetLabelGuardCapabilityCache, resetLabelPropagationGuardCapabilityCache, resolveLabelPropagationGuardCapability, setLabelPropagationGuardCapability, withLabelPropagationGuardCapability, } from './label-guard-capability.js';
|
|
5
|
+
export { isKroOwnershipLabel, KRO_OWNERSHIP_LABELS, type KroOwnershipLabel } from './labels.js';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/kro/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,uBAAuB,EACvB,oCAAoC,EACpC,wBAAwB,EACxB,2BAA2B,EAC3B,sBAAsB,EACtB,6BAA6B,EAC7B,KAAK,+BAA+B,EACpC,KAAK,2BAA2B,EAChC,iCAAiC,EACjC,8BAA8B,EAC9B,yCAAyC,EACzC,sCAAsC,EACtC,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KRO-facing core primitives shared by factories, compositions and tests.
|
|
3
|
+
*/
|
|
4
|
+
export { DISABLE_LABEL_GUARD_ENV, discoverLabelPropagationGuardSupport, LABEL_GUARD_ALTERNATIVES, LABEL_GUARD_API_VERSION_ENV, LABEL_GUARD_CAPABILITY, LABEL_GUARD_UNRESOLVED_REASON, probeLabelPropagationGuardSupport, resetLabelGuardCapabilityCache, resetLabelPropagationGuardCapabilityCache, resolveLabelPropagationGuardCapability, setLabelPropagationGuardCapability, withLabelPropagationGuardCapability, } from './label-guard-capability.js';
|
|
5
|
+
export { isKroOwnershipLabel, KRO_OWNERSHIP_LABELS } from './labels.js';
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/kro/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,uBAAuB,EACvB,oCAAoC,EACpC,wBAAwB,EACxB,2BAA2B,EAC3B,sBAAsB,EACtB,6BAA6B,EAG7B,iCAAiC,EACjC,8BAA8B,EAC9B,yCAAyC,EACzC,sCAAsC,EACtC,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAA0B,MAAM,aAAa,CAAC"}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether — and at which group version — the KRO label-propagation guard can be
|
|
3
|
+
* installed on the target cluster.
|
|
4
|
+
*
|
|
5
|
+
* `MutatingAdmissionPolicy` is beta from Kubernetes 1.34
|
|
6
|
+
* (`admissionregistration.k8s.io/v1beta1`) and GA from 1.36
|
|
7
|
+
* (`admissionregistration.k8s.io/v1`); the two group versions never overlap on
|
|
8
|
+
* a given server, and nothing below 1.34 serves the kind at all. So the group
|
|
9
|
+
* version is **never assumed**. It is resolved from the cluster or the guard is
|
|
10
|
+
* not emitted:
|
|
11
|
+
*
|
|
12
|
+
* 1. `TYPEKRO_DISABLE_LABEL_GUARD` — break-glass, nothing is emitted.
|
|
13
|
+
* 2. `TYPEKRO_LABEL_GUARD_API_VERSION` — an explicit pin, used verbatim. This
|
|
14
|
+
* is what an offline `toYaml()` render or a GitOps pipeline uses.
|
|
15
|
+
* 3. A capability resolved against the cluster this build **explicitly** names.
|
|
16
|
+
* The direct deployment path resolves it and publishes the target for the
|
|
17
|
+
* duration of the deploy; a caller building outside a deployment probes and
|
|
18
|
+
* then wraps the build in `withLabelPropagationGuardCapability()`. Either
|
|
19
|
+
* way the cluster is carried by an `AsyncLocalStorage` scope, so the graph
|
|
20
|
+
* is built at the version *that* API server serves and concurrent builds for
|
|
21
|
+
* different clusters cannot see each other's answer.
|
|
22
|
+
* 4. Otherwise — no pin and no cluster to ask — the guard is **skipped with a
|
|
23
|
+
* warning**. A composition built with no cluster knowledge does not get to
|
|
24
|
+
* guess a GA API that a 1.34 cluster would reject, taking the whole runtime
|
|
25
|
+
* bootstrap down with it.
|
|
26
|
+
*
|
|
27
|
+
* A skip is reported with the reason that actually applies: the cluster does
|
|
28
|
+
* not serve `MutatingAdmissionPolicy`, or discovery against it failed, or no
|
|
29
|
+
* cluster was named. The three are not interchangeable — telling a user their
|
|
30
|
+
* 1.36 cluster is too old because a probe hit an RBAC error sends them to fix
|
|
31
|
+
* the wrong thing.
|
|
32
|
+
*/
|
|
33
|
+
import type * as k8s from '@kubernetes/client-node';
|
|
34
|
+
import type { MutatingAdmissionPolicyApiVersion } from '../../factories/kubernetes/admission/mutating-admission-policy.js';
|
|
35
|
+
import { type ApiGroupDiscovery, type ClusterCapabilityRequirement } from '../kubernetes/api-capability.js';
|
|
36
|
+
/**
|
|
37
|
+
* Break-glass: set to `1`/`true` to build the runtime bootstrap without the
|
|
38
|
+
* guard on a cluster where the policy misbehaves. There is deliberately no
|
|
39
|
+
* config option — the guard is a floor, not a feature.
|
|
40
|
+
*/
|
|
41
|
+
export declare const DISABLE_LABEL_GUARD_ENV = "TYPEKRO_DISABLE_LABEL_GUARD";
|
|
42
|
+
/**
|
|
43
|
+
* Pin the group version the guard is rendered at, e.g.
|
|
44
|
+
* `admissionregistration.k8s.io/v1beta1` for a 1.34/1.35 cluster. Needed when
|
|
45
|
+
* rendering YAML or an RGD offline, where no cluster can be asked.
|
|
46
|
+
*/
|
|
47
|
+
export declare const LABEL_GUARD_API_VERSION_ENV = "TYPEKRO_LABEL_GUARD_API_VERSION";
|
|
48
|
+
/** The cluster capability the guard depends on. */
|
|
49
|
+
export declare const LABEL_GUARD_CAPABILITY: ClusterCapabilityRequirement;
|
|
50
|
+
export type LabelPropagationGuardStatus = 'active' | 'unavailable';
|
|
51
|
+
export type LabelPropagationGuardCapability = {
|
|
52
|
+
status: 'active';
|
|
53
|
+
apiVersion: MutatingAdmissionPolicyApiVersion;
|
|
54
|
+
} | {
|
|
55
|
+
status: 'unavailable';
|
|
56
|
+
reason: string;
|
|
57
|
+
};
|
|
58
|
+
/**
|
|
59
|
+
* What a caller should do instead when the guard cannot be installed. Kept as
|
|
60
|
+
* one string so the warning, the docs and the error text cannot drift apart.
|
|
61
|
+
*/
|
|
62
|
+
export declare const LABEL_GUARD_ALTERNATIVES: string;
|
|
63
|
+
/** The reason reported when nothing resolved the group version. */
|
|
64
|
+
export declare const LABEL_GUARD_UNRESOLVED_REASON: string;
|
|
65
|
+
/**
|
|
66
|
+
* Resolve the guard's capability for the cluster this build targets.
|
|
67
|
+
*
|
|
68
|
+
* Order: break-glass env var, explicit group-version env var, a capability
|
|
69
|
+
* scoped to this build, the process-wide asserted capability, the capability
|
|
70
|
+
* resolved for the current deploy target, then **skip**. There is no assumed
|
|
71
|
+
* group version at the end of the chain — that is what makes the guard safe on
|
|
72
|
+
* a cluster below 1.36 rather than an apply failure for the whole bootstrap.
|
|
73
|
+
*
|
|
74
|
+
* Every cluster-derived answer comes from an explicitly scoped target. There is
|
|
75
|
+
* no ambient "last cluster anyone probed" fallback: a build that names no
|
|
76
|
+
* cluster gets no cluster's answer, rather than silently inheriting one from an
|
|
77
|
+
* unrelated probe elsewhere in the process.
|
|
78
|
+
*/
|
|
79
|
+
export declare function resolveLabelPropagationGuardCapability(): LabelPropagationGuardCapability;
|
|
80
|
+
/**
|
|
81
|
+
* Run `build` with `capability` as the guard's answer, for exactly that build.
|
|
82
|
+
*
|
|
83
|
+
* This is the explicit half of the "probe, then build" flow: the cluster is
|
|
84
|
+
* carried by the scope rather than by a module global, so two concurrent builds
|
|
85
|
+
* for two clusters cannot see each other's answer.
|
|
86
|
+
*
|
|
87
|
+
* ```typescript
|
|
88
|
+
* const capability = await probeLabelPropagationGuardSupport(kubeConfig);
|
|
89
|
+
* const runtime = withLabelPropagationGuardCapability(capability, () =>
|
|
90
|
+
* typeKroRuntimeBootstrap()
|
|
91
|
+
* );
|
|
92
|
+
* ```
|
|
93
|
+
*/
|
|
94
|
+
export declare function withLabelPropagationGuardCapability<T>(capability: LabelPropagationGuardCapability, build: () => T): T;
|
|
95
|
+
/**
|
|
96
|
+
* Resolve the guard's capability against a cluster and **return** it.
|
|
97
|
+
*
|
|
98
|
+
* The result is the caller's to carry: pass it to
|
|
99
|
+
* {@link withLabelPropagationGuardCapability}, or scope the build with
|
|
100
|
+
* `runWithDeployTarget(clusterId, build)`. Probing does not make this cluster
|
|
101
|
+
* ambiently current for anything else in the process — that fallback existed
|
|
102
|
+
* and was removed, because a probe of cluster A followed by an untargeted build
|
|
103
|
+
* for cluster B rendered A's answer into B's graph.
|
|
104
|
+
*
|
|
105
|
+
* The direct deployment path calls this before it re-executes the composition.
|
|
106
|
+
* Callers who build a graph outside a deployment (an RGD render aimed at a
|
|
107
|
+
* known cluster) can call it themselves and then build inside the scope.
|
|
108
|
+
*/
|
|
109
|
+
export declare function probeLabelPropagationGuardSupport(kubeConfig: k8s.KubeConfig, options?: {
|
|
110
|
+
discovery?: ApiGroupDiscovery;
|
|
111
|
+
refresh?: boolean;
|
|
112
|
+
}): Promise<LabelPropagationGuardCapability>;
|
|
113
|
+
/**
|
|
114
|
+
* Probe a cluster. Populates the per-cluster capability cache but does not make
|
|
115
|
+
* that cluster the ambient deploy target.
|
|
116
|
+
*/
|
|
117
|
+
export declare function discoverLabelPropagationGuardSupport(kubeConfig: k8s.KubeConfig, options?: {
|
|
118
|
+
discovery?: ApiGroupDiscovery;
|
|
119
|
+
refresh?: boolean;
|
|
120
|
+
}): Promise<LabelPropagationGuardCapability>;
|
|
121
|
+
/**
|
|
122
|
+
* Reset every cached capability answer and the process-wide asserted override.
|
|
123
|
+
* Test seam.
|
|
124
|
+
*
|
|
125
|
+
* Clears the whole per-cluster cache rather than one cluster's entry: a test
|
|
126
|
+
* that has finished with one fake cluster has finished with all of them. The
|
|
127
|
+
* scoped capability needs no reset — it ends with its scope.
|
|
128
|
+
*/
|
|
129
|
+
export declare function resetLabelGuardCapabilityCache(): void;
|
|
130
|
+
/** @deprecated Use {@link resetLabelGuardCapabilityCache}. */
|
|
131
|
+
export declare const resetLabelPropagationGuardCapabilityCache: typeof resetLabelGuardCapabilityCache;
|
|
132
|
+
/**
|
|
133
|
+
* Assert the capability process-wide, for an offline build that knows the
|
|
134
|
+
* answer and for tests. Overrides cluster resolution; `undefined` clears it.
|
|
135
|
+
*
|
|
136
|
+
* Prefer {@link withLabelPropagationGuardCapability} where the assertion covers
|
|
137
|
+
* one build: it cannot outlive that build, whereas this value persists until it
|
|
138
|
+
* is cleared and is therefore visible to everything built afterwards.
|
|
139
|
+
*/
|
|
140
|
+
export declare function setLabelPropagationGuardCapability(capability: LabelPropagationGuardCapability | undefined): void;
|
|
141
|
+
//# sourceMappingURL=label-guard-capability.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"label-guard-capability.d.ts","sourceRoot":"","sources":["../../../src/core/kro/label-guard-capability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,KAAK,GAAG,MAAM,yBAAyB,CAAC;AACpD,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,mEAAmE,CAAC;AAE3H,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,4BAA4B,EAQlC,MAAM,iCAAiC,CAAC;AAKzC;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,gCAAgC,CAAC;AAErE;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,oCAAoC,CAAC;AAE7E,mDAAmD;AACnD,eAAO,MAAM,sBAAsB,EAAE,4BASpC,CAAC;AAOF,MAAM,MAAM,2BAA2B,GAAG,QAAQ,GAAG,aAAa,CAAC;AAEnE,MAAM,MAAM,+BAA+B,GACvC;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,iCAAiC,CAAA;CAAE,GACnE;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9C;;;GAGG;AACH,eAAO,MAAM,wBAAwB,QAIM,CAAC;AAE5C,mEAAmE;AACnE,eAAO,MAAM,6BAA6B,QAE2B,CAAC;AAmDtE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sCAAsC,IAAI,+BAA+B,CAuCxF;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mCAAmC,CAAC,CAAC,EACnD,UAAU,EAAE,+BAA+B,EAC3C,KAAK,EAAE,MAAM,CAAC,GACb,CAAC,CAEH;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,iCAAiC,CACrD,UAAU,EAAE,GAAG,CAAC,UAAU,EAC1B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACjE,OAAO,CAAC,+BAA+B,CAAC,CAQ1C;AAED;;;GAGG;AACH,wBAAsB,oCAAoC,CACxD,UAAU,EAAE,GAAG,CAAC,UAAU,EAC1B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GACjE,OAAO,CAAC,+BAA+B,CAAC,CA2B1C;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAGrD;AAED,8DAA8D;AAC9D,eAAO,MAAM,yCAAyC,uCAAiC,CAAC;AAExF;;;;;;;GAOG;AACH,wBAAgB,kCAAkC,CAChD,UAAU,EAAE,+BAA+B,GAAG,SAAS,GACtD,IAAI,CAEN"}
|
|
@@ -0,0 +1,257 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether — and at which group version — the KRO label-propagation guard can be
|
|
3
|
+
* installed on the target cluster.
|
|
4
|
+
*
|
|
5
|
+
* `MutatingAdmissionPolicy` is beta from Kubernetes 1.34
|
|
6
|
+
* (`admissionregistration.k8s.io/v1beta1`) and GA from 1.36
|
|
7
|
+
* (`admissionregistration.k8s.io/v1`); the two group versions never overlap on
|
|
8
|
+
* a given server, and nothing below 1.34 serves the kind at all. So the group
|
|
9
|
+
* version is **never assumed**. It is resolved from the cluster or the guard is
|
|
10
|
+
* not emitted:
|
|
11
|
+
*
|
|
12
|
+
* 1. `TYPEKRO_DISABLE_LABEL_GUARD` — break-glass, nothing is emitted.
|
|
13
|
+
* 2. `TYPEKRO_LABEL_GUARD_API_VERSION` — an explicit pin, used verbatim. This
|
|
14
|
+
* is what an offline `toYaml()` render or a GitOps pipeline uses.
|
|
15
|
+
* 3. A capability resolved against the cluster this build **explicitly** names.
|
|
16
|
+
* The direct deployment path resolves it and publishes the target for the
|
|
17
|
+
* duration of the deploy; a caller building outside a deployment probes and
|
|
18
|
+
* then wraps the build in `withLabelPropagationGuardCapability()`. Either
|
|
19
|
+
* way the cluster is carried by an `AsyncLocalStorage` scope, so the graph
|
|
20
|
+
* is built at the version *that* API server serves and concurrent builds for
|
|
21
|
+
* different clusters cannot see each other's answer.
|
|
22
|
+
* 4. Otherwise — no pin and no cluster to ask — the guard is **skipped with a
|
|
23
|
+
* warning**. A composition built with no cluster knowledge does not get to
|
|
24
|
+
* guess a GA API that a 1.34 cluster would reject, taking the whole runtime
|
|
25
|
+
* bootstrap down with it.
|
|
26
|
+
*
|
|
27
|
+
* A skip is reported with the reason that actually applies: the cluster does
|
|
28
|
+
* not serve `MutatingAdmissionPolicy`, or discovery against it failed, or no
|
|
29
|
+
* cluster was named. The three are not interchangeable — telling a user their
|
|
30
|
+
* 1.36 cluster is too old because a probe hit an RBAC error sends them to fix
|
|
31
|
+
* the wrong thing.
|
|
32
|
+
*/
|
|
33
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
34
|
+
import { MUTATING_ADMISSION_POLICY_API_VERSIONS } from '../../factories/kubernetes/admission/mutating-admission-policy.js';
|
|
35
|
+
import { clusterIdentity, getCachedClusterCapability, getCurrentDeployTarget, kubeConfigApiGroupDiscovery, registerDeployTimeCapability, resetClusterCapabilityCache, resolveClusterCapability, } from '../kubernetes/api-capability.js';
|
|
36
|
+
import { getComponentLogger } from '../logging/index.js';
|
|
37
|
+
const logger = getComponentLogger('kro-label-guard');
|
|
38
|
+
/**
|
|
39
|
+
* Break-glass: set to `1`/`true` to build the runtime bootstrap without the
|
|
40
|
+
* guard on a cluster where the policy misbehaves. There is deliberately no
|
|
41
|
+
* config option — the guard is a floor, not a feature.
|
|
42
|
+
*/
|
|
43
|
+
export const DISABLE_LABEL_GUARD_ENV = 'TYPEKRO_DISABLE_LABEL_GUARD';
|
|
44
|
+
/**
|
|
45
|
+
* Pin the group version the guard is rendered at, e.g.
|
|
46
|
+
* `admissionregistration.k8s.io/v1beta1` for a 1.34/1.35 cluster. Needed when
|
|
47
|
+
* rendering YAML or an RGD offline, where no cluster can be asked.
|
|
48
|
+
*/
|
|
49
|
+
export const LABEL_GUARD_API_VERSION_ENV = 'TYPEKRO_LABEL_GUARD_API_VERSION';
|
|
50
|
+
/** The cluster capability the guard depends on. */
|
|
51
|
+
export const LABEL_GUARD_CAPABILITY = {
|
|
52
|
+
id: 'kro-label-propagation-guard',
|
|
53
|
+
group: 'admissionregistration.k8s.io',
|
|
54
|
+
kind: 'MutatingAdmissionPolicy',
|
|
55
|
+
// Bare versions, GA first, derived from the factory's group-version list so
|
|
56
|
+
// the two cannot drift.
|
|
57
|
+
versions: MUTATING_ADMISSION_POLICY_API_VERSIONS.map((apiVersion) => apiVersion.split('/')[1] ?? apiVersion),
|
|
58
|
+
};
|
|
59
|
+
// Resolved by the direct deployment path before it re-executes a composition,
|
|
60
|
+
// so a bootstrap deployed to a live cluster renders the guard at the group
|
|
61
|
+
// version that cluster actually serves.
|
|
62
|
+
registerDeployTimeCapability(LABEL_GUARD_CAPABILITY);
|
|
63
|
+
/**
|
|
64
|
+
* What a caller should do instead when the guard cannot be installed. Kept as
|
|
65
|
+
* one string so the warning, the docs and the error text cannot drift apart.
|
|
66
|
+
*/
|
|
67
|
+
export const LABEL_GUARD_ALTERNATIVES = 'Use the operator-side propagation filter where the operator has one ' +
|
|
68
|
+
'(configure it from KRO_OWNERSHIP_LABELS), or isolate the CR in its own ' +
|
|
69
|
+
'single-kind ResourceGraphDefinition via singleton() so the prune sweep ' +
|
|
70
|
+
'never lists the operator-created kinds.';
|
|
71
|
+
/** The reason reported when nothing resolved the group version. */
|
|
72
|
+
export const LABEL_GUARD_UNRESOLVED_REASON = 'the MutatingAdmissionPolicy group version was not resolved against a cluster ' +
|
|
73
|
+
`(no live deployment target and no ${LABEL_GUARD_API_VERSION_ENV})`;
|
|
74
|
+
/**
|
|
75
|
+
* A capability scoped to one build.
|
|
76
|
+
*
|
|
77
|
+
* This is the supported way to carry a probe result into a build:
|
|
78
|
+
* {@link withLabelPropagationGuardCapability} runs the build inside it, and two
|
|
79
|
+
* concurrent builds for different clusters each see their own. Same mechanism
|
|
80
|
+
* as the deploy target — `AsyncLocalStorage`, not a module variable — so
|
|
81
|
+
* nothing can bleed from one build into the next.
|
|
82
|
+
*/
|
|
83
|
+
const SCOPED_CAPABILITY = new AsyncLocalStorage();
|
|
84
|
+
/**
|
|
85
|
+
* A process-wide asserted capability, used when a caller knows the answer and
|
|
86
|
+
* there is no cluster to ask — an offline render, or a test.
|
|
87
|
+
*
|
|
88
|
+
* This one really is a module global, and it is kept that way deliberately:
|
|
89
|
+
* it exists for the "set it once for the whole process" case (a CLI that has
|
|
90
|
+
* decided the group version before it builds anything), which is exactly what a
|
|
91
|
+
* scope cannot express. That makes it a leak path by construction — it outlives
|
|
92
|
+
* any single build — so it is only ever written by an explicit
|
|
93
|
+
* {@link setLabelPropagationGuardCapability} call, never by a probe, and
|
|
94
|
+
* {@link resetLabelGuardCapabilityCache} clears it for tests. Prefer
|
|
95
|
+
* {@link withLabelPropagationGuardCapability}, which outranks it.
|
|
96
|
+
*/
|
|
97
|
+
let assertedCapability;
|
|
98
|
+
function isTruthyEnv(value) {
|
|
99
|
+
return value === '1' || value === 'true';
|
|
100
|
+
}
|
|
101
|
+
function parseApiVersionEnv(value) {
|
|
102
|
+
if (!value)
|
|
103
|
+
return undefined;
|
|
104
|
+
const match = MUTATING_ADMISSION_POLICY_API_VERSIONS.find((known) => known === value);
|
|
105
|
+
if (!match) {
|
|
106
|
+
logger.warn(`Ignoring ${LABEL_GUARD_API_VERSION_ENV}: not a group version that serves MutatingAdmissionPolicy`, { value, supported: [...MUTATING_ADMISSION_POLICY_API_VERSIONS] });
|
|
107
|
+
return undefined;
|
|
108
|
+
}
|
|
109
|
+
return match;
|
|
110
|
+
}
|
|
111
|
+
function asGuardApiVersion(apiVersion) {
|
|
112
|
+
return MUTATING_ADMISSION_POLICY_API_VERSIONS.find((known) => known === apiVersion);
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Resolve the guard's capability for the cluster this build targets.
|
|
116
|
+
*
|
|
117
|
+
* Order: break-glass env var, explicit group-version env var, a capability
|
|
118
|
+
* scoped to this build, the process-wide asserted capability, the capability
|
|
119
|
+
* resolved for the current deploy target, then **skip**. There is no assumed
|
|
120
|
+
* group version at the end of the chain — that is what makes the guard safe on
|
|
121
|
+
* a cluster below 1.36 rather than an apply failure for the whole bootstrap.
|
|
122
|
+
*
|
|
123
|
+
* Every cluster-derived answer comes from an explicitly scoped target. There is
|
|
124
|
+
* no ambient "last cluster anyone probed" fallback: a build that names no
|
|
125
|
+
* cluster gets no cluster's answer, rather than silently inheriting one from an
|
|
126
|
+
* unrelated probe elsewhere in the process.
|
|
127
|
+
*/
|
|
128
|
+
export function resolveLabelPropagationGuardCapability() {
|
|
129
|
+
if (isTruthyEnv(process.env[DISABLE_LABEL_GUARD_ENV])) {
|
|
130
|
+
return {
|
|
131
|
+
status: 'unavailable',
|
|
132
|
+
reason: `disabled by ${DISABLE_LABEL_GUARD_ENV}`,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
const pinned = parseApiVersionEnv(process.env[LABEL_GUARD_API_VERSION_ENV]);
|
|
136
|
+
if (pinned) {
|
|
137
|
+
return { status: 'active', apiVersion: pinned };
|
|
138
|
+
}
|
|
139
|
+
const scoped = SCOPED_CAPABILITY.getStore();
|
|
140
|
+
if (scoped) {
|
|
141
|
+
return scoped;
|
|
142
|
+
}
|
|
143
|
+
if (assertedCapability) {
|
|
144
|
+
return assertedCapability;
|
|
145
|
+
}
|
|
146
|
+
const clusterId = getCurrentDeployTarget();
|
|
147
|
+
if (clusterId) {
|
|
148
|
+
const resolved = getCachedClusterCapability(LABEL_GUARD_CAPABILITY, clusterId);
|
|
149
|
+
if (resolved?.status === 'served') {
|
|
150
|
+
const apiVersion = asGuardApiVersion(resolved.apiVersion);
|
|
151
|
+
if (apiVersion)
|
|
152
|
+
return { status: 'active', apiVersion };
|
|
153
|
+
}
|
|
154
|
+
if (resolved?.status === 'unserved' || resolved?.status === 'unknown') {
|
|
155
|
+
// Both are `unavailable`, but the reason strings differ: `unserved` says
|
|
156
|
+
// the cluster does not serve the kind, `unknown` says discovery failed.
|
|
157
|
+
// Collapsing them here is what made the guard claim a 1.36 cluster was
|
|
158
|
+
// too old whenever a probe hit an RBAC or network error.
|
|
159
|
+
return { status: 'unavailable', reason: resolved.reason };
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
return { status: 'unavailable', reason: LABEL_GUARD_UNRESOLVED_REASON };
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Run `build` with `capability` as the guard's answer, for exactly that build.
|
|
166
|
+
*
|
|
167
|
+
* This is the explicit half of the "probe, then build" flow: the cluster is
|
|
168
|
+
* carried by the scope rather than by a module global, so two concurrent builds
|
|
169
|
+
* for two clusters cannot see each other's answer.
|
|
170
|
+
*
|
|
171
|
+
* ```typescript
|
|
172
|
+
* const capability = await probeLabelPropagationGuardSupport(kubeConfig);
|
|
173
|
+
* const runtime = withLabelPropagationGuardCapability(capability, () =>
|
|
174
|
+
* typeKroRuntimeBootstrap()
|
|
175
|
+
* );
|
|
176
|
+
* ```
|
|
177
|
+
*/
|
|
178
|
+
export function withLabelPropagationGuardCapability(capability, build) {
|
|
179
|
+
return SCOPED_CAPABILITY.run(capability, build);
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Resolve the guard's capability against a cluster and **return** it.
|
|
183
|
+
*
|
|
184
|
+
* The result is the caller's to carry: pass it to
|
|
185
|
+
* {@link withLabelPropagationGuardCapability}, or scope the build with
|
|
186
|
+
* `runWithDeployTarget(clusterId, build)`. Probing does not make this cluster
|
|
187
|
+
* ambiently current for anything else in the process — that fallback existed
|
|
188
|
+
* and was removed, because a probe of cluster A followed by an untargeted build
|
|
189
|
+
* for cluster B rendered A's answer into B's graph.
|
|
190
|
+
*
|
|
191
|
+
* The direct deployment path calls this before it re-executes the composition.
|
|
192
|
+
* Callers who build a graph outside a deployment (an RGD render aimed at a
|
|
193
|
+
* known cluster) can call it themselves and then build inside the scope.
|
|
194
|
+
*/
|
|
195
|
+
export async function probeLabelPropagationGuardSupport(kubeConfig, options = {}) {
|
|
196
|
+
const capability = await discoverLabelPropagationGuardSupport(kubeConfig, options);
|
|
197
|
+
if (capability.status === 'unavailable') {
|
|
198
|
+
logger.warn(`KRO label-propagation guard unavailable: ${capability.reason}. ${LABEL_GUARD_ALTERNATIVES}`);
|
|
199
|
+
}
|
|
200
|
+
return capability;
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Probe a cluster. Populates the per-cluster capability cache but does not make
|
|
204
|
+
* that cluster the ambient deploy target.
|
|
205
|
+
*/
|
|
206
|
+
export async function discoverLabelPropagationGuardSupport(kubeConfig, options = {}) {
|
|
207
|
+
const clusterId = clusterIdentity(kubeConfig);
|
|
208
|
+
if (!clusterId) {
|
|
209
|
+
return {
|
|
210
|
+
status: 'unavailable',
|
|
211
|
+
reason: 'the kubeconfig names no current cluster, so no capability could be resolved',
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
const resolution = await resolveClusterCapability(LABEL_GUARD_CAPABILITY, {
|
|
215
|
+
clusterId,
|
|
216
|
+
discovery: options.discovery ?? kubeConfigApiGroupDiscovery(kubeConfig),
|
|
217
|
+
...(options.refresh !== undefined && { refresh: options.refresh }),
|
|
218
|
+
});
|
|
219
|
+
if (resolution.status === 'served') {
|
|
220
|
+
const apiVersion = asGuardApiVersion(resolution.apiVersion);
|
|
221
|
+
if (apiVersion)
|
|
222
|
+
return { status: 'active', apiVersion };
|
|
223
|
+
return {
|
|
224
|
+
status: 'unavailable',
|
|
225
|
+
reason: `the cluster serves MutatingAdmissionPolicy at an unsupported group version (${resolution.apiVersion})`,
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
// `unserved` and `unknown` are both unavailable, and both carry a reason that
|
|
229
|
+
// says which: the cluster does not serve the kind, or discovery failed.
|
|
230
|
+
return { status: 'unavailable', reason: resolution.reason };
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Reset every cached capability answer and the process-wide asserted override.
|
|
234
|
+
* Test seam.
|
|
235
|
+
*
|
|
236
|
+
* Clears the whole per-cluster cache rather than one cluster's entry: a test
|
|
237
|
+
* that has finished with one fake cluster has finished with all of them. The
|
|
238
|
+
* scoped capability needs no reset — it ends with its scope.
|
|
239
|
+
*/
|
|
240
|
+
export function resetLabelGuardCapabilityCache() {
|
|
241
|
+
assertedCapability = undefined;
|
|
242
|
+
resetClusterCapabilityCache();
|
|
243
|
+
}
|
|
244
|
+
/** @deprecated Use {@link resetLabelGuardCapabilityCache}. */
|
|
245
|
+
export const resetLabelPropagationGuardCapabilityCache = resetLabelGuardCapabilityCache;
|
|
246
|
+
/**
|
|
247
|
+
* Assert the capability process-wide, for an offline build that knows the
|
|
248
|
+
* answer and for tests. Overrides cluster resolution; `undefined` clears it.
|
|
249
|
+
*
|
|
250
|
+
* Prefer {@link withLabelPropagationGuardCapability} where the assertion covers
|
|
251
|
+
* one build: it cannot outlive that build, whereas this value persists until it
|
|
252
|
+
* is cleared and is therefore visible to everything built afterwards.
|
|
253
|
+
*/
|
|
254
|
+
export function setLabelPropagationGuardCapability(capability) {
|
|
255
|
+
assertedCapability = capability;
|
|
256
|
+
}
|
|
257
|
+
//# sourceMappingURL=label-guard-capability.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"label-guard-capability.js","sourceRoot":"","sources":["../../../src/core/kro/label-guard-capability.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The label keys KRO uses to claim ownership of the objects an instance applies.
|
|
3
|
+
*
|
|
4
|
+
* KRO stamps these on every object it applies for a `ResourceGraphDefinition`
|
|
5
|
+
* instance and then uses them to decide what belongs to the instance. Any
|
|
6
|
+
* *other* actor that copies them onto an object KRO did not apply corrupts that
|
|
7
|
+
* bookkeeping — see `KRO_OWNERSHIP_LABELS` for what goes wrong and
|
|
8
|
+
* `labelPropagationGuard()` for the cluster-side mitigation.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Label keys that only KRO may introduce on an object.
|
|
12
|
+
*
|
|
13
|
+
* Many operators copy the *entire* label map of the custom resource they
|
|
14
|
+
* reconcile onto the children they create (Hyperspike Valkey does
|
|
15
|
+
* `maps.Clone(valkey.Labels)`; the Altinity ClickHouse operator defaults to
|
|
16
|
+
* `label.include: []`, meaning "include all"). When the parent CR is a node in
|
|
17
|
+
* a KRO graph it carries the labels below, so the operator's children inherit
|
|
18
|
+
* them and KRO then treats objects it never applied as members of its ApplySet.
|
|
19
|
+
*
|
|
20
|
+
* Each key and why it is in the set:
|
|
21
|
+
*
|
|
22
|
+
* - `applyset.kubernetes.io/part-of` — the ApplySet id KRO's pruner selects on.
|
|
23
|
+
* A child carrying it is listed as an ApplySet member for every GroupKind the
|
|
24
|
+
* graph declares; because its UID is not in the set KRO applied, the pruner
|
|
25
|
+
* deletes it on the next requeue, forever (kubernetes-sigs/kro#1153).
|
|
26
|
+
* - `applyset.kubernetes.io/id` — the hashed companion of `part-of` that makes
|
|
27
|
+
* the ApplySet self-identifying. Copied onto a child it makes that child look
|
|
28
|
+
* like the ApplySet parent to any ApplySet-aware tooling, so it has to travel
|
|
29
|
+
* with `part-of` rather than being left behind.
|
|
30
|
+
* - `kro.run/owned` — KRO's own "this object belongs to an instance" marker,
|
|
31
|
+
* read by KRO's ownership and adoption checks and by TypeKro's hoist guards.
|
|
32
|
+
* - `kro.run/node-id` — the graph node that applied the object. A child that
|
|
33
|
+
* inherits it claims to be a node it is not, which mis-attributes both KRO's
|
|
34
|
+
* diffing and TypeKro's deployment-state discovery.
|
|
35
|
+
* - `kro.run/kro-version` — the KRO build that applied the object. This is the
|
|
36
|
+
* one that bites on *upgrade* rather than on create: bumping KRO rewrites the
|
|
37
|
+
* value on the parent CR, the operator re-copies the new value onto the
|
|
38
|
+
* children, and where the operator also derives a `spec.selector` or a pod
|
|
39
|
+
* template from that same label map, the Service selector moves to a value no
|
|
40
|
+
* running pod carries. The Service silently loses all endpoints until the
|
|
41
|
+
* pods are recreated.
|
|
42
|
+
*
|
|
43
|
+
* `app.kubernetes.io/managed-by` is deliberately *not* in this set. KRO 0.9.2
|
|
44
|
+
* overwrites it with `kro` on graph children, but it carries no ownership
|
|
45
|
+
* meaning for the pruner and operators legitimately set it on their own
|
|
46
|
+
* children; stripping it would fight the operator for no safety benefit.
|
|
47
|
+
*
|
|
48
|
+
* @see labelPropagationGuard - installs a cluster-side guard that enforces
|
|
49
|
+
* "only KRO may introduce these labels".
|
|
50
|
+
*/
|
|
51
|
+
export declare const KRO_OWNERSHIP_LABELS: readonly ["applyset.kubernetes.io/part-of", "applyset.kubernetes.io/id", "kro.run/owned", "kro.run/node-id", "kro.run/kro-version"];
|
|
52
|
+
/** A key from {@link KRO_OWNERSHIP_LABELS}. */
|
|
53
|
+
export type KroOwnershipLabel = (typeof KRO_OWNERSHIP_LABELS)[number];
|
|
54
|
+
/** Type guard for {@link KRO_OWNERSHIP_LABELS} membership. */
|
|
55
|
+
export declare function isKroOwnershipLabel(key: string): key is KroOwnershipLabel;
|
|
56
|
+
//# sourceMappingURL=labels.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../../src/core/kro/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,eAAO,MAAM,oBAAoB,qIAMvB,CAAC;AAEX,+CAA+C;AAC/C,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,8DAA8D;AAC9D,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,iBAAiB,CAEzE"}
|