typekro 0.33.10 → 0.35.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/alchemy/clickhouse-schema/executor.d.ts +25 -0
- package/dist/alchemy/clickhouse-schema/executor.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/executor.js +144 -0
- package/dist/alchemy/clickhouse-schema/executor.js.map +1 -0
- package/dist/alchemy/clickhouse-schema/index.d.ts +12 -0
- package/dist/alchemy/clickhouse-schema/index.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/index.js +11 -0
- package/dist/alchemy/clickhouse-schema/index.js.map +1 -0
- package/dist/alchemy/clickhouse-schema/resource.d.ts +54 -0
- package/dist/alchemy/clickhouse-schema/resource.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/resource.js +158 -0
- package/dist/alchemy/clickhouse-schema/resource.js.map +1 -0
- package/dist/alchemy/clickhouse-schema/runner.d.ts +154 -0
- package/dist/alchemy/clickhouse-schema/runner.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/runner.js +613 -0
- package/dist/alchemy/clickhouse-schema/runner.js.map +1 -0
- package/dist/alchemy/clickhouse-schema/sql.d.ts +109 -0
- package/dist/alchemy/clickhouse-schema/sql.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/sql.js +368 -0
- package/dist/alchemy/clickhouse-schema/sql.js.map +1 -0
- package/dist/alchemy/clickhouse-schema/types.d.ts +394 -0
- package/dist/alchemy/clickhouse-schema/types.d.ts.map +1 -0
- package/dist/alchemy/clickhouse-schema/types.js +370 -0
- package/dist/alchemy/clickhouse-schema/types.js.map +1 -0
- package/dist/alchemy/index.d.ts +1 -0
- package/dist/alchemy/index.d.ts.map +1 -1
- package/dist/alchemy/index.js +2 -0
- package/dist/alchemy/index.js.map +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/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/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/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":"types.d.ts","sourceRoot":"","sources":["../../../src/compositions/typekro-runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,SAAS,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;IACnE,UAAU,EAAE;QACV,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/compositions/typekro-runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,EAAQ,MAAM,SAAS,CAAC;AAE1C,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,SAAS,GAAG,YAAY,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;IACnE,UAAU,EAAE;QACV,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;KACpB,CAAC;IACF;;;;;;OAMG;IACH,qBAAqB,EAAE,QAAQ,GAAG,aAAa,CAAC;CACjD;AAED,eAAO,MAAM,kBAAkB,EAAE,IAAI,CAAC,sBAAsB,CAE1D,CAAC;AAEH,eAAO,MAAM,oBAAoB,EAAE,IAAI,CAAC,wBAAwB,CAO9D,CAAC;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,QAAQ,GAAG,eAAe,GAAG,QAAQ,GAAG;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/E,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IAC1C;;;;;OAKG;IACH,IAAI,CAAC,EAAE,QAAQ,CAAC;CACjB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/compositions/typekro-runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,IAAI,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/compositions/typekro-runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,IAAI,EAAE,MAAM,SAAS,CAAC;AAsB1C,MAAM,CAAC,MAAM,kBAAkB,GAAiC,IAAI,CAAC;IACnE,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAmC,IAAI,CAAC;IACvE,KAAK,EAAE,6DAA6D;IACpE,UAAU,EAAE;QACV,UAAU,EAAE,SAAS;QACrB,SAAS,EAAE,SAAS;KACrB;IACD,qBAAqB,EAAE,0BAA0B;CAClD,CAAC,CAAC"}
|
|
@@ -5,6 +5,23 @@ export interface ValuesMergeExpression {
|
|
|
5
5
|
}
|
|
6
6
|
export declare function isValuesMergeExpression(value: unknown): value is ValuesMergeExpression;
|
|
7
7
|
export declare function mergeValuesExpression(base: unknown, overlay: unknown): ValuesMergeExpression;
|
|
8
|
+
/**
|
|
9
|
+
* Layer a factory's static chart defaults UNDER caller-supplied values.
|
|
10
|
+
*
|
|
11
|
+
* Replaces the `{ ...defaults, ...values }` spread that silently mangles an
|
|
12
|
+
* opaque values argument: spreading a schema reference asks the proxy for keys
|
|
13
|
+
* that only exist per instance, so the reference is lost and the emitted chart
|
|
14
|
+
* values carry a placeholder key instead (issue #190). Plain objects keep the
|
|
15
|
+
* exact build-time shallow-merge semantics the spread had.
|
|
16
|
+
*
|
|
17
|
+
* A default is never dropped for being unmergeable at build time. When the
|
|
18
|
+
* merge base is opaque — a `KubernetesRef`, a CEL expression, or any other
|
|
19
|
+
* value whose keys are not enumerable now — the defaults become the base of a
|
|
20
|
+
* {@link ValuesMergeExpression} with the runtime values layered over them, the
|
|
21
|
+
* same shape the chart values mappers emit, and KRO does the merge per
|
|
22
|
+
* instance.
|
|
23
|
+
*/
|
|
24
|
+
export declare function withChartValueDefaults(defaults: Record<string, unknown>, values: unknown): unknown;
|
|
8
25
|
/**
|
|
9
26
|
* Resolve TypeKro's internal Helm-values merge nodes for concrete/direct execution.
|
|
10
27
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values-merge.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/values-merge.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;CACvC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CAMtF;
|
|
1
|
+
{"version":3,"file":"values-merge.d.ts","sourceRoot":"","sources":["../../../src/core/aspects/values-merge.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,oBAAoB,EAAE,IAAI,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;CACvC;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,qBAAqB,CAMtF;AAYD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,qBAAqB,CAU5F;AAiBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,MAAM,EAAE,OAAO,GACd,OAAO,CAwBT;AAiCD;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAoDzE"}
|
|
@@ -4,21 +4,81 @@ export function isValuesMergeExpression(value) {
|
|
|
4
4
|
typeof value === 'object' &&
|
|
5
5
|
value.__typekroValuesMerge === true);
|
|
6
6
|
}
|
|
7
|
+
/**
|
|
8
|
+
* The overlay list of a merge node, normalized. Nodes built before the list
|
|
9
|
+
* form carry a single `overlay` instead, and a hand-written one may carry
|
|
10
|
+
* neither.
|
|
11
|
+
*/
|
|
12
|
+
function overlaysOf(node) {
|
|
13
|
+
if (Array.isArray(node.overlays))
|
|
14
|
+
return node.overlays;
|
|
15
|
+
return 'overlay' in node ? [node.overlay] : [];
|
|
16
|
+
}
|
|
7
17
|
export function mergeValuesExpression(base, overlay) {
|
|
8
18
|
if (isValuesMergeExpression(base)) {
|
|
9
|
-
const overlays = Array.isArray(base.overlays)
|
|
10
|
-
? base.overlays
|
|
11
|
-
: 'overlay' in base
|
|
12
|
-
? [base.overlay]
|
|
13
|
-
: [];
|
|
14
19
|
return {
|
|
15
20
|
__typekroValuesMerge: true,
|
|
16
21
|
base: base.base,
|
|
17
|
-
overlays: [...
|
|
22
|
+
overlays: [...overlaysOf(base), overlay],
|
|
18
23
|
};
|
|
19
24
|
}
|
|
20
25
|
return { __typekroValuesMerge: true, base, overlays: [overlay] };
|
|
21
26
|
}
|
|
27
|
+
/**
|
|
28
|
+
* True when a chart-values argument cannot be enumerated at build time: a
|
|
29
|
+
* whole-object schema/resource reference, a CEL expression, a mixed template,
|
|
30
|
+
* or an existing runtime merge node.
|
|
31
|
+
*/
|
|
32
|
+
function isOpaqueChartValues(value) {
|
|
33
|
+
return (isValuesMergeExpression(value) ||
|
|
34
|
+
isKubernetesRef(value) ||
|
|
35
|
+
isResourceReference(value) ||
|
|
36
|
+
isCelExpression(value) ||
|
|
37
|
+
isMixedTemplate(value));
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Layer a factory's static chart defaults UNDER caller-supplied values.
|
|
41
|
+
*
|
|
42
|
+
* Replaces the `{ ...defaults, ...values }` spread that silently mangles an
|
|
43
|
+
* opaque values argument: spreading a schema reference asks the proxy for keys
|
|
44
|
+
* that only exist per instance, so the reference is lost and the emitted chart
|
|
45
|
+
* values carry a placeholder key instead (issue #190). Plain objects keep the
|
|
46
|
+
* exact build-time shallow-merge semantics the spread had.
|
|
47
|
+
*
|
|
48
|
+
* A default is never dropped for being unmergeable at build time. When the
|
|
49
|
+
* merge base is opaque — a `KubernetesRef`, a CEL expression, or any other
|
|
50
|
+
* value whose keys are not enumerable now — the defaults become the base of a
|
|
51
|
+
* {@link ValuesMergeExpression} with the runtime values layered over them, the
|
|
52
|
+
* same shape the chart values mappers emit, and KRO does the merge per
|
|
53
|
+
* instance.
|
|
54
|
+
*/
|
|
55
|
+
export function withChartValueDefaults(defaults, values) {
|
|
56
|
+
if (isValuesMergeExpression(values)) {
|
|
57
|
+
// A plain base still merges statically. An opaque one is pushed down into
|
|
58
|
+
// the overlay chain so the defaults sit underneath it rather than being
|
|
59
|
+
// replaced by it — dropping `base` here is what lost the defaults before.
|
|
60
|
+
const overlays = overlaysOf(values);
|
|
61
|
+
return isPlainMergeObject(values.base)
|
|
62
|
+
? {
|
|
63
|
+
__typekroValuesMerge: true,
|
|
64
|
+
base: { ...defaults, ...values.base },
|
|
65
|
+
overlays,
|
|
66
|
+
}
|
|
67
|
+
: {
|
|
68
|
+
__typekroValuesMerge: true,
|
|
69
|
+
base: defaults,
|
|
70
|
+
overlays: [values.base, ...overlays],
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
if (isOpaqueChartValues(values))
|
|
74
|
+
return mergeValuesExpression(defaults, values);
|
|
75
|
+
if (isPlainMergeObject(values))
|
|
76
|
+
return { ...defaults, ...values };
|
|
77
|
+
// Nothing to layer the defaults under: `undefined`, or an argument that is
|
|
78
|
+
// not a values object at all. The defaults stand alone rather than being
|
|
79
|
+
// dropped.
|
|
80
|
+
return { ...defaults };
|
|
81
|
+
}
|
|
22
82
|
function isPlainMergeObject(value) {
|
|
23
83
|
if (!value ||
|
|
24
84
|
typeof value !== 'object' ||
|
|
@@ -62,8 +122,7 @@ export function materializeValuesMergeExpressions(value) {
|
|
|
62
122
|
}
|
|
63
123
|
visiting.add(current);
|
|
64
124
|
let merged = materialize(current.base);
|
|
65
|
-
const
|
|
66
|
-
for (const overlay of overlays) {
|
|
125
|
+
for (const overlay of overlaysOf(current)) {
|
|
67
126
|
merged = mergeMaterializedValues(merged, materialize(overlay));
|
|
68
127
|
}
|
|
69
128
|
visiting.delete(current);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"values-merge.js","sourceRoot":"","sources":["../../../src/core/aspects/values-merge.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,eAAe,EACf,eAAe,EACf,mBAAmB,GACpB,MAAM,4BAA4B,CAAC;AAQpC,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,OAAO,CACL,CAAC,CAAC,KAAK;QACP,OAAO,KAAK,KAAK,QAAQ;QACxB,KAA4C,CAAC,oBAAoB,KAAK,IAAI,CAC5E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAa,EAAE,OAAgB;IACnE,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,
|
|
1
|
+
{"version":3,"file":"values-merge.js","sourceRoot":"","sources":["../../../src/core/aspects/values-merge.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,6 +59,15 @@ export declare class DirectResourceFactoryImpl<TSpec extends KroCompatibleType,
|
|
|
59
59
|
*/
|
|
60
60
|
deploy(spec: TSpec, opts?: InternalResourceFactoryDeployOptions): Promise<Enhanced<TSpec, TStatus>>;
|
|
61
61
|
private deployWithinOperation;
|
|
62
|
+
/**
|
|
63
|
+
* Run API discovery for every registered deploy-time capability against this
|
|
64
|
+
* factory's cluster and return that cluster's identity.
|
|
65
|
+
*
|
|
66
|
+
* Returns `undefined` when there is no usable client — no kubeconfig, no
|
|
67
|
+
* current cluster, an unreachable server. That is not an error here: it means
|
|
68
|
+
* no capability was resolved, so capability-gated resources are skipped.
|
|
69
|
+
*/
|
|
70
|
+
private resolveDeployTimeCapabilities;
|
|
62
71
|
/**
|
|
63
72
|
* Get the appropriate deployment strategy based on configuration
|
|
64
73
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"direct-factory.d.ts","sourceRoot":"","sources":["../../../src/core/deployment/direct-factory.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"direct-factory.d.ts","sourceRoot":"","sources":["../../../src/core/deployment/direct-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,6 +17,7 @@ import { DEFAULT_DELETE_TIMEOUT, DEFAULT_FAST_POLL_INTERVAL, DEFAULT_MAX_RECURSI
|
|
|
17
17
|
import { KUBERNETES_REF_SCHEMA_MARKER_SOURCE } from '../constants/brands.js';
|
|
18
18
|
import { DependencyResolver } from '../dependencies/index.js';
|
|
19
19
|
import { ensureError, ResourceGraphFactoryError, TypeKroError, ValidationError, } from '../errors.js';
|
|
20
|
+
import { resolveDeployTimeCapabilities, runWithDeployTarget, } from '../kubernetes/api-capability.js';
|
|
20
21
|
import { createBunCompatibleCoreV1Api } from '../kubernetes/index.js';
|
|
21
22
|
import { getComponentLogger } from '../logging/index.js';
|
|
22
23
|
import { copyResourceMetadata, getIncludeWhen, getMetadataField, getReadinessEvaluator, getResourceId, setResourceId, } from '../metadata/index.js';
|
|
@@ -33,9 +34,9 @@ import { logHandleSnapshot } from './handle-tracing.js';
|
|
|
33
34
|
import { isConflictError, isNotFoundError } from './k8s-helpers.js';
|
|
34
35
|
import { synthesizeNestedCompositionStatus } from './nested-composition-status.js';
|
|
35
36
|
import { ResourceReadinessChecker } from './readiness.js';
|
|
37
|
+
import { SINGLETON_SPEC_FINGERPRINT_ANNOTATION } from './resource-tagging.js';
|
|
36
38
|
import { extractSerializableKubeConfigOptions, generateInstanceName, getSingletonInstanceName, validateSpec, } from './shared-utilities.js';
|
|
37
39
|
import { assertNoDeployedSingletonSpecDrift, assertNoDiscoveredSingletonSpecDrift, singletonSpecFingerprintAnnotationValue, } from './singleton-owner-drift.js';
|
|
38
|
-
import { SINGLETON_SPEC_FINGERPRINT_ANNOTATION } from './resource-tagging.js';
|
|
39
40
|
import { DirectDeploymentStrategy } from './strategies/index.js';
|
|
40
41
|
function deployedResourceDeletionIdentity(resource) {
|
|
41
42
|
const clusterScoped = getMetadataField(resource.manifest, 'scope') === 'cluster';
|
|
@@ -177,7 +178,20 @@ export class DirectResourceFactoryImpl {
|
|
|
177
178
|
strategyType: strategy.constructor.name,
|
|
178
179
|
});
|
|
179
180
|
await this.ensureSingletonOwners(spec, abortSignal);
|
|
180
|
-
|
|
181
|
+
// Resolve-before-apply seam. A resource whose group version depends on the
|
|
182
|
+
// API server's version (MutatingAdmissionPolicy: beta on 1.34/1.35, GA from
|
|
183
|
+
// 1.36, absent below) cannot be rendered from a synchronous composition
|
|
184
|
+
// body. Discovery runs once here, against the cluster this deployment
|
|
185
|
+
// actually targets, and the answer is published for the duration of the
|
|
186
|
+
// deploy so composition re-execution builds the graph at the served
|
|
187
|
+
// version. When there is no cluster to ask, nothing is resolved, and every
|
|
188
|
+
// gated resource is skipped with a warning rather than emitted at a guessed
|
|
189
|
+
// version that would fail the whole apply.
|
|
190
|
+
const clusterId = await this.resolveDeployTimeCapabilities();
|
|
191
|
+
const runDeploy = () => strategy.deploy(spec, { ...opts, abortSignal });
|
|
192
|
+
const instance = clusterId
|
|
193
|
+
? await runWithDeployTarget(clusterId, runDeploy)
|
|
194
|
+
: await runDeploy();
|
|
181
195
|
// Check if deployment failed and throw for user-facing error handling
|
|
182
196
|
if (instance.metadata?.annotations?.['typekro.io/deployment-status'] === 'failed') {
|
|
183
197
|
const errorMessage = instance.metadata?.annotations?.['typekro.io/deployment-error'] ||
|
|
@@ -189,6 +203,26 @@ export class DirectResourceFactoryImpl {
|
|
|
189
203
|
this.deployedInstances.set(instanceName, instance);
|
|
190
204
|
return instance;
|
|
191
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* Run API discovery for every registered deploy-time capability against this
|
|
208
|
+
* factory's cluster and return that cluster's identity.
|
|
209
|
+
*
|
|
210
|
+
* Returns `undefined` when there is no usable client — no kubeconfig, no
|
|
211
|
+
* current cluster, an unreachable server. That is not an error here: it means
|
|
212
|
+
* no capability was resolved, so capability-gated resources are skipped.
|
|
213
|
+
*/
|
|
214
|
+
async resolveDeployTimeCapabilities() {
|
|
215
|
+
try {
|
|
216
|
+
const kubeConfig = this.factoryOptions.kubeConfig ?? this.getClientProvider().getKubeConfig();
|
|
217
|
+
return await resolveDeployTimeCapabilities(kubeConfig);
|
|
218
|
+
}
|
|
219
|
+
catch (error) {
|
|
220
|
+
this.logger.debug('Deploy-time capability resolution unavailable', {
|
|
221
|
+
error: ensureError(error).message,
|
|
222
|
+
});
|
|
223
|
+
return undefined;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
192
226
|
/**
|
|
193
227
|
* Get the appropriate deployment strategy based on configuration
|
|
194
228
|
*/
|
|
@@ -2370,7 +2404,7 @@ function disambiguatedAlchemyResourceId(legacyId, canonicalKubernetesIdentity) {
|
|
|
2370
2404
|
function directAlchemyKubernetesIdentity(resource, factoryNamespace) {
|
|
2371
2405
|
const namespace = getMetadataField(resource, 'scope') === 'cluster'
|
|
2372
2406
|
? undefined
|
|
2373
|
-
: resource.metadata?.namespace ?? factoryNamespace;
|
|
2407
|
+
: (resource.metadata?.namespace ?? factoryNamespace);
|
|
2374
2408
|
const identity = {
|
|
2375
2409
|
group: kubernetesApiGroup(resource.apiVersion),
|
|
2376
2410
|
kind: resource.kind,
|