typekro 0.28.1 → 0.29.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/advanced/index.d.ts +5 -1
- package/dist/advanced/index.d.ts.map +1 -1
- package/dist/advanced/index.js +2 -3
- package/dist/advanced/index.js.map +1 -1
- package/dist/alchemy/deployers.d.ts +6 -4
- package/dist/alchemy/deployers.d.ts.map +1 -1
- package/dist/alchemy/deployers.js +46 -9
- package/dist/alchemy/deployers.js.map +1 -1
- package/dist/alchemy/index.d.ts +2 -3
- package/dist/alchemy/index.d.ts.map +1 -1
- package/dist/alchemy/index.js +1 -1
- package/dist/alchemy/index.js.map +1 -1
- package/dist/alchemy/kro-delete.d.ts +6 -5
- package/dist/alchemy/kro-delete.d.ts.map +1 -1
- package/dist/alchemy/kro-delete.js +169 -22
- package/dist/alchemy/kro-delete.js.map +1 -1
- package/dist/alchemy/resource-registration.d.ts +24 -31
- package/dist/alchemy/resource-registration.d.ts.map +1 -1
- package/dist/alchemy/resource-registration.js +439 -75
- package/dist/alchemy/resource-registration.js.map +1 -1
- package/dist/alchemy/types.d.ts +56 -14
- package/dist/alchemy/types.d.ts.map +1 -1
- package/dist/alchemy/utilities.d.ts +2 -2
- package/dist/alchemy/utilities.d.ts.map +1 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.d.ts.map +1 -1
- package/dist/compositions/typekro-runtime/typekro-runtime.js +31 -28
- package/dist/compositions/typekro-runtime/typekro-runtime.js.map +1 -1
- package/dist/compositions/typekro-runtime/types.d.ts +12 -0
- package/dist/compositions/typekro-runtime/types.d.ts.map +1 -1
- package/dist/core/composition/analysis-metadata.d.ts +15 -0
- package/dist/core/composition/analysis-metadata.d.ts.map +1 -0
- package/dist/core/composition/analysis-metadata.js +20 -0
- package/dist/core/composition/analysis-metadata.js.map +1 -0
- package/dist/core/composition/imperative.d.ts.map +1 -1
- package/dist/core/composition/imperative.js +38 -9
- package/dist/core/composition/imperative.js.map +1 -1
- package/dist/core/composition/nested-status-cel.js +3 -3
- package/dist/core/composition/nested-status-cel.js.map +1 -1
- package/dist/core/constants/brands.d.ts +1 -1
- package/dist/core/constants/brands.d.ts.map +1 -1
- package/dist/core/constants/brands.js +1 -1
- package/dist/core/constants/brands.js.map +1 -1
- package/dist/core/dependencies/resolver.d.ts +3 -1
- package/dist/core/dependencies/resolver.d.ts.map +1 -1
- package/dist/core/dependencies/resolver.js +29 -13
- package/dist/core/dependencies/resolver.js.map +1 -1
- package/dist/core/deployment/deletion-result.d.ts +22 -0
- package/dist/core/deployment/deletion-result.d.ts.map +1 -0
- package/dist/core/deployment/deletion-result.js +108 -0
- package/dist/core/deployment/deletion-result.js.map +1 -0
- package/dist/core/deployment/deployment-state-discovery.d.ts +1 -0
- package/dist/core/deployment/deployment-state-discovery.d.ts.map +1 -1
- package/dist/core/deployment/deployment-state-discovery.js +89 -9
- package/dist/core/deployment/deployment-state-discovery.js.map +1 -1
- package/dist/core/deployment/direct-factory.d.ts +46 -25
- package/dist/core/deployment/direct-factory.d.ts.map +1 -1
- package/dist/core/deployment/direct-factory.js +536 -126
- package/dist/core/deployment/direct-factory.js.map +1 -1
- package/dist/core/deployment/engine.d.ts +4 -1
- package/dist/core/deployment/engine.d.ts.map +1 -1
- package/dist/core/deployment/engine.js +105 -34
- package/dist/core/deployment/engine.js.map +1 -1
- package/dist/core/deployment/errors.d.ts +20 -1
- package/dist/core/deployment/errors.d.ts.map +1 -1
- package/dist/core/deployment/errors.js +55 -0
- package/dist/core/deployment/errors.js.map +1 -1
- package/dist/core/deployment/event-monitor.d.ts +4 -3
- package/dist/core/deployment/event-monitor.d.ts.map +1 -1
- package/dist/core/deployment/event-monitor.js +17 -5
- package/dist/core/deployment/event-monitor.js.map +1 -1
- package/dist/core/deployment/index.d.ts +1 -1
- package/dist/core/deployment/index.d.ts.map +1 -1
- package/dist/core/deployment/index.js +1 -1
- package/dist/core/deployment/index.js.map +1 -1
- package/dist/core/deployment/k8s-helpers.d.ts +1 -1
- package/dist/core/deployment/k8s-helpers.d.ts.map +1 -1
- package/dist/core/deployment/k8s-helpers.js +11 -5
- package/dist/core/deployment/k8s-helpers.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts +54 -30
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +2002 -259
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/deployment/kro-instance-admission.d.ts +17 -0
- package/dist/core/deployment/kro-instance-admission.d.ts.map +1 -0
- package/dist/core/deployment/kro-instance-admission.js +73 -0
- package/dist/core/deployment/kro-instance-admission.js.map +1 -0
- package/dist/core/deployment/kro-instance-safety.d.ts +0 -3
- package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -1
- package/dist/core/deployment/kro-instance-safety.js +0 -11
- package/dist/core/deployment/kro-instance-safety.js.map +1 -1
- package/dist/core/deployment/kro-namespace-teardown.d.ts +63 -5
- package/dist/core/deployment/kro-namespace-teardown.d.ts.map +1 -1
- package/dist/core/deployment/kro-namespace-teardown.js +124 -12
- package/dist/core/deployment/kro-namespace-teardown.js.map +1 -1
- package/dist/core/deployment/kro-readiness.d.ts +2 -0
- package/dist/core/deployment/kro-readiness.d.ts.map +1 -1
- package/dist/core/deployment/kro-readiness.js +23 -6
- package/dist/core/deployment/kro-readiness.js.map +1 -1
- package/dist/core/deployment/poll-timeout.d.ts +1 -1
- package/dist/core/deployment/poll-timeout.d.ts.map +1 -1
- package/dist/core/deployment/poll-timeout.js +12 -1
- package/dist/core/deployment/poll-timeout.js.map +1 -1
- package/dist/core/deployment/resource-applier.d.ts +19 -3
- package/dist/core/deployment/resource-applier.d.ts.map +1 -1
- package/dist/core/deployment/resource-applier.js +263 -44
- package/dist/core/deployment/resource-applier.js.map +1 -1
- package/dist/core/deployment/rollback-manager.d.ts +6 -1
- package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
- package/dist/core/deployment/rollback-manager.js +38 -12
- package/dist/core/deployment/rollback-manager.js.map +1 -1
- package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -1
- package/dist/core/deployment/schema-cel-evaluator.js +63 -0
- package/dist/core/deployment/schema-cel-evaluator.js.map +1 -1
- package/dist/core/deployment/shared-utilities.d.ts +11 -6
- package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
- package/dist/core/deployment/shared-utilities.js +169 -14
- package/dist/core/deployment/shared-utilities.js.map +1 -1
- package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
- package/dist/core/deployment/singleton-gitops.js +0 -2
- package/dist/core/deployment/singleton-gitops.js.map +1 -1
- package/dist/core/deployment/singleton-owner-drift.d.ts +11 -2
- package/dist/core/deployment/singleton-owner-drift.d.ts.map +1 -1
- package/dist/core/deployment/singleton-owner-drift.js +30 -13
- package/dist/core/deployment/singleton-owner-drift.js.map +1 -1
- package/dist/core/deployment/strategies/base-strategy.d.ts +2 -0
- package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/base-strategy.js +19 -2
- package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
- package/dist/core/deployment/strategies/direct-strategy.d.ts +3 -0
- package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/direct-strategy.js +31 -8
- package/dist/core/deployment/strategies/direct-strategy.js.map +1 -1
- package/dist/core/deployment/strategies/index.d.ts +1 -1
- package/dist/core/deployment/strategies/index.d.ts.map +1 -1
- package/dist/core/deployment/strategies/index.js +1 -1
- package/dist/core/deployment/strategies/index.js.map +1 -1
- package/dist/core/errors.d.ts +2 -2
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js.map +1 -1
- package/dist/core/expressions/analysis/cel-emitter.d.ts.map +1 -1
- package/dist/core/expressions/analysis/cel-emitter.js +17 -13
- package/dist/core/expressions/analysis/cel-emitter.js.map +1 -1
- package/dist/core/expressions/analysis/expression-metadata.d.ts +15 -0
- package/dist/core/expressions/analysis/expression-metadata.d.ts.map +1 -0
- package/dist/core/expressions/analysis/expression-metadata.js +10 -0
- package/dist/core/expressions/analysis/expression-metadata.js.map +1 -0
- package/dist/core/expressions/analysis/ready-when.d.ts +3 -0
- package/dist/core/expressions/analysis/ready-when.d.ts.map +1 -0
- package/dist/core/expressions/analysis/ready-when.js +127 -0
- package/dist/core/expressions/analysis/ready-when.js.map +1 -0
- package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts +3 -2
- package/dist/core/expressions/composition/composition-analyzer-helpers.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-helpers.js +6 -4
- package/dist/core/expressions/composition/composition-analyzer-helpers.js.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts +3 -2
- package/dist/core/expressions/composition/composition-analyzer-ternary.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-ternary.js +12 -12
- package/dist/core/expressions/composition/composition-analyzer-ternary.js.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-traversal.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-traversal.js +68 -4
- package/dist/core/expressions/composition/composition-analyzer-traversal.js.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer-types.d.ts +2 -0
- package/dist/core/expressions/composition/composition-analyzer-types.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer.d.ts.map +1 -1
- package/dist/core/expressions/composition/composition-analyzer.js +2 -0
- package/dist/core/expressions/composition/composition-analyzer.js.map +1 -1
- package/dist/core/expressions/factory/status-builder-analyzer.d.ts.map +1 -1
- package/dist/core/expressions/factory/status-builder-analyzer.js +14 -1
- package/dist/core/expressions/factory/status-builder-analyzer.js.map +1 -1
- package/dist/core/kubernetes/api.d.ts.map +1 -1
- package/dist/core/kubernetes/api.js +2 -3
- package/dist/core/kubernetes/api.js.map +1 -1
- package/dist/core/kubernetes/bun-api-client.d.ts +1 -1
- package/dist/core/kubernetes/bun-api-client.d.ts.map +1 -1
- package/dist/core/kubernetes/bun-api-client.js +17 -17
- package/dist/core/kubernetes/bun-api-client.js.map +1 -1
- package/dist/core/kubernetes/bun-http-library.d.ts +16 -0
- package/dist/core/kubernetes/bun-http-library.d.ts.map +1 -1
- package/dist/core/kubernetes/bun-http-library.js +7 -1
- package/dist/core/kubernetes/bun-http-library.js.map +1 -1
- package/dist/core/kubernetes/bun-watch.d.ts +30 -0
- package/dist/core/kubernetes/bun-watch.d.ts.map +1 -0
- package/dist/core/kubernetes/bun-watch.js +144 -0
- package/dist/core/kubernetes/bun-watch.js.map +1 -0
- package/dist/core/kubernetes/client-node-runtime.d.ts +10 -0
- package/dist/core/kubernetes/client-node-runtime.d.ts.map +1 -0
- package/dist/core/kubernetes/client-node-runtime.js +15 -0
- package/dist/core/kubernetes/client-node-runtime.js.map +1 -0
- package/dist/core/kubernetes/client-provider.d.ts +21 -1
- package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
- package/dist/core/kubernetes/client-provider.js +10 -10
- package/dist/core/kubernetes/client-provider.js.map +1 -1
- package/dist/core/kubernetes/index.d.ts +1 -1
- package/dist/core/kubernetes/index.d.ts.map +1 -1
- package/dist/core/kubernetes/index.js.map +1 -1
- package/dist/core/metadata/resource-metadata.d.ts +24 -1
- package/dist/core/metadata/resource-metadata.d.ts.map +1 -1
- package/dist/core/metadata/resource-metadata.js +8 -4
- package/dist/core/metadata/resource-metadata.js.map +1 -1
- package/dist/core/planning/artifact-codec.d.ts +14 -0
- package/dist/core/planning/artifact-codec.d.ts.map +1 -0
- package/dist/core/planning/artifact-codec.js +329 -0
- package/dist/core/planning/artifact-codec.js.map +1 -0
- package/dist/core/planning/artifacts.d.ts +212 -0
- package/dist/core/planning/artifacts.d.ts.map +1 -0
- package/dist/core/planning/artifacts.js +5 -0
- package/dist/core/planning/artifacts.js.map +1 -0
- package/dist/core/planning/aspects.d.ts +11 -0
- package/dist/core/planning/aspects.d.ts.map +1 -0
- package/dist/core/planning/aspects.js +77 -0
- package/dist/core/planning/aspects.js.map +1 -0
- package/dist/core/planning/canonical.d.ts +10 -0
- package/dist/core/planning/canonical.d.ts.map +1 -0
- package/dist/core/planning/canonical.js +54 -0
- package/dist/core/planning/canonical.js.map +1 -0
- package/dist/core/planning/capabilities.d.ts +16 -0
- package/dist/core/planning/capabilities.d.ts.map +1 -0
- package/dist/core/planning/capabilities.js +90 -0
- package/dist/core/planning/capabilities.js.map +1 -0
- package/dist/core/planning/capture.d.ts +29 -0
- package/dist/core/planning/capture.d.ts.map +1 -0
- package/dist/core/planning/capture.js +18 -0
- package/dist/core/planning/capture.js.map +1 -0
- package/dist/core/planning/compiler.d.ts +12 -0
- package/dist/core/planning/compiler.d.ts.map +1 -0
- package/dist/core/planning/compiler.js +631 -0
- package/dist/core/planning/compiler.js.map +1 -0
- package/dist/core/planning/direct-runtime-adapter.d.ts +39 -0
- package/dist/core/planning/direct-runtime-adapter.d.ts.map +1 -0
- package/dist/core/planning/direct-runtime-adapter.js +238 -0
- package/dist/core/planning/direct-runtime-adapter.js.map +1 -0
- package/dist/core/planning/execution-record.d.ts +21 -0
- package/dist/core/planning/execution-record.d.ts.map +1 -0
- package/dist/core/planning/execution-record.js +304 -0
- package/dist/core/planning/execution-record.js.map +1 -0
- package/dist/core/planning/index.d.ts +20 -0
- package/dist/core/planning/index.d.ts.map +1 -0
- package/dist/core/planning/index.js +18 -0
- package/dist/core/planning/index.js.map +1 -0
- package/dist/core/planning/kro-bundle.d.ts +24 -0
- package/dist/core/planning/kro-bundle.d.ts.map +1 -0
- package/dist/core/planning/kro-bundle.js +314 -0
- package/dist/core/planning/kro-bundle.js.map +1 -0
- package/dist/core/planning/kro-runtime-adapter.d.ts +28 -0
- package/dist/core/planning/kro-runtime-adapter.d.ts.map +1 -0
- package/dist/core/planning/kro-runtime-adapter.js +211 -0
- package/dist/core/planning/kro-runtime-adapter.js.map +1 -0
- package/dist/core/planning/materialization.d.ts +54 -0
- package/dist/core/planning/materialization.d.ts.map +1 -0
- package/dist/core/planning/materialization.js +489 -0
- package/dist/core/planning/materialization.js.map +1 -0
- package/dist/core/planning/plan-codec.d.ts +11 -0
- package/dist/core/planning/plan-codec.d.ts.map +1 -0
- package/dist/core/planning/plan-codec.js +555 -0
- package/dist/core/planning/plan-codec.js.map +1 -0
- package/dist/core/planning/planner.d.ts +21 -0
- package/dist/core/planning/planner.d.ts.map +1 -0
- package/dist/core/planning/planner.js +1518 -0
- package/dist/core/planning/planner.js.map +1 -0
- package/dist/core/planning/schema.d.ts +10 -0
- package/dist/core/planning/schema.d.ts.map +1 -0
- package/dist/core/planning/schema.js +159 -0
- package/dist/core/planning/schema.js.map +1 -0
- package/dist/core/planning/types.d.ts +441 -0
- package/dist/core/planning/types.d.ts.map +1 -0
- package/dist/core/planning/types.js +3 -0
- package/dist/core/planning/types.js.map +1 -0
- package/dist/core/planning/values.d.ts +76 -0
- package/dist/core/planning/values.d.ts.map +1 -0
- package/dist/core/planning/values.js +852 -0
- package/dist/core/planning/values.js.map +1 -0
- package/dist/core/proxy/create-resource.d.ts +12 -0
- package/dist/core/proxy/create-resource.d.ts.map +1 -1
- package/dist/core/proxy/create-resource.js +39 -9
- package/dist/core/proxy/create-resource.js.map +1 -1
- package/dist/core/readiness/evaluator-factories.d.ts +3 -1
- package/dist/core/readiness/evaluator-factories.d.ts.map +1 -1
- package/dist/core/readiness/evaluator-factories.js +130 -5
- package/dist/core/readiness/evaluator-factories.js.map +1 -1
- package/dist/core/readiness/index.d.ts +2 -1
- package/dist/core/readiness/index.d.ts.map +1 -1
- package/dist/core/readiness/index.js +2 -1
- package/dist/core/readiness/index.js.map +1 -1
- package/dist/core/readiness/portable-strategies.d.ts +28 -0
- package/dist/core/readiness/portable-strategies.d.ts.map +1 -0
- package/dist/core/readiness/portable-strategies.js +55 -0
- package/dist/core/readiness/portable-strategies.js.map +1 -0
- package/dist/core/readiness/strategy-configuration.d.ts +12 -0
- package/dist/core/readiness/strategy-configuration.d.ts.map +1 -0
- package/dist/core/readiness/strategy-configuration.js +51 -0
- package/dist/core/readiness/strategy-configuration.js.map +1 -0
- package/dist/core/references/cel-evaluator.d.ts +5 -0
- package/dist/core/references/cel-evaluator.d.ts.map +1 -1
- package/dist/core/references/cel-evaluator.js +33 -2
- package/dist/core/references/cel-evaluator.js.map +1 -1
- package/dist/core/references/external-refs.d.ts +2 -0
- package/dist/core/references/external-refs.d.ts.map +1 -1
- package/dist/core/references/external-refs.js +3 -1
- package/dist/core/references/external-refs.js.map +1 -1
- package/dist/core/references/resolver.d.ts +7 -1
- package/dist/core/references/resolver.d.ts.map +1 -1
- package/dist/core/references/resolver.js +91 -9
- package/dist/core/references/resolver.js.map +1 -1
- package/dist/core/references/schema-proxy.d.ts.map +1 -1
- package/dist/core/references/schema-proxy.js +35 -21
- package/dist/core/references/schema-proxy.js.map +1 -1
- package/dist/core/resources/factory-registry.d.ts +64 -2
- package/dist/core/resources/factory-registry.d.ts.map +1 -1
- package/dist/core/resources/factory-registry.js +74 -3
- package/dist/core/resources/factory-registry.js.map +1 -1
- package/dist/core/resources/index.d.ts +3 -2
- package/dist/core/resources/index.d.ts.map +1 -1
- package/dist/core/resources/index.js +2 -1
- package/dist/core/resources/index.js.map +1 -1
- package/dist/core/resources/live-comparison.d.ts +58 -0
- package/dist/core/resources/live-comparison.d.ts.map +1 -0
- package/dist/core/resources/live-comparison.js +293 -0
- package/dist/core/resources/live-comparison.js.map +1 -0
- package/dist/core/runtime/standalone-operation.d.ts +12 -0
- package/dist/core/runtime/standalone-operation.d.ts.map +1 -0
- package/dist/core/runtime/standalone-operation.js +62 -0
- package/dist/core/runtime/standalone-operation.js.map +1 -0
- package/dist/core/serialization/cel-references.d.ts.map +1 -1
- package/dist/core/serialization/cel-references.js +11 -1
- 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 +277 -182
- package/dist/core/serialization/core.js.map +1 -1
- package/dist/core/serialization/schema.d.ts.map +1 -1
- package/dist/core/serialization/schema.js +3 -3
- package/dist/core/serialization/schema.js.map +1 -1
- package/dist/core/serialization/status-analysis-pipeline.d.ts +1 -1
- package/dist/core/serialization/status-analysis-pipeline.d.ts.map +1 -1
- package/dist/core/serialization/status-analysis-pipeline.js +14 -11
- package/dist/core/serialization/status-analysis-pipeline.js.map +1 -1
- package/dist/core/serialization/yaml.d.ts +5 -1
- package/dist/core/serialization/yaml.d.ts.map +1 -1
- package/dist/core/serialization/yaml.js +35 -182
- package/dist/core/serialization/yaml.js.map +1 -1
- package/dist/core/types/deployment.d.ts +135 -14
- package/dist/core/types/deployment.d.ts.map +1 -1
- package/dist/core/types/kubernetes.d.ts +3 -0
- package/dist/core/types/kubernetes.d.ts.map +1 -1
- package/dist/core/types/resource-graph.d.ts +7 -1
- package/dist/core/types/resource-graph.d.ts.map +1 -1
- package/dist/core/types/serialization.d.ts +8 -1
- package/dist/core/types/serialization.d.ts.map +1 -1
- package/dist/core/validation/cel-validator.d.ts.map +1 -1
- package/dist/core/validation/cel-validator.js +25 -16
- package/dist/core/validation/cel-validator.js.map +1 -1
- package/dist/experimental-planning.d.ts +13 -0
- package/dist/experimental-planning.d.ts.map +1 -0
- package/dist/experimental-planning.js +12 -0
- package/dist/experimental-planning.js.map +1 -0
- package/dist/factories/apisix/compositions/apisix-bootstrap.d.ts.map +1 -1
- package/dist/factories/apisix/compositions/apisix-bootstrap.js +27 -22
- package/dist/factories/apisix/compositions/apisix-bootstrap.js.map +1 -1
- package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts +15 -0
- package/dist/factories/apisix/compositions/apisix-helm-repository.d.ts.map +1 -0
- package/dist/factories/apisix/compositions/apisix-helm-repository.js +28 -0
- package/dist/factories/apisix/compositions/apisix-helm-repository.js.map +1 -0
- package/dist/factories/apisix/compositions/index.d.ts +1 -0
- package/dist/factories/apisix/compositions/index.d.ts.map +1 -1
- package/dist/factories/apisix/compositions/index.js +1 -0
- package/dist/factories/apisix/compositions/index.js.map +1 -1
- package/dist/factories/apisix/types.d.ts +22 -0
- package/dist/factories/apisix/types.d.ts.map +1 -1
- package/dist/factories/apisix/types.js +16 -0
- package/dist/factories/apisix/types.js.map +1 -1
- package/dist/factories/apisix/utils/admin-credentials.d.ts +1 -0
- package/dist/factories/apisix/utils/admin-credentials.d.ts.map +1 -1
- package/dist/factories/apisix/utils/admin-credentials.js +5 -4
- package/dist/factories/apisix/utils/admin-credentials.js.map +1 -1
- package/dist/factories/caddy/compositions/caddy-ingress.d.ts.map +1 -1
- package/dist/factories/caddy/compositions/caddy-ingress.js +9 -2
- package/dist/factories/caddy/compositions/caddy-ingress.js.map +1 -1
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.d.ts.map +1 -1
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js +11 -25
- package/dist/factories/cert-manager/compositions/cert-manager-bootstrap.js.map +1 -1
- package/dist/factories/cert-manager/resources/certificates.d.ts.map +1 -1
- package/dist/factories/cert-manager/resources/certificates.js +2 -1
- package/dist/factories/cert-manager/resources/certificates.js.map +1 -1
- package/dist/factories/cert-manager/resources/challenges.d.ts.map +1 -1
- package/dist/factories/cert-manager/resources/challenges.js +3 -0
- package/dist/factories/cert-manager/resources/challenges.js.map +1 -1
- package/dist/factories/cilium/compositions/cilium-bootstrap.d.ts +4 -4
- package/dist/factories/cilium/resources/gateway.d.ts.map +1 -1
- package/dist/factories/cilium/resources/gateway.js +13 -12
- package/dist/factories/cilium/resources/gateway.js.map +1 -1
- package/dist/factories/cilium/resources/networking.d.ts.map +1 -1
- package/dist/factories/cilium/resources/networking.js +9 -0
- package/dist/factories/cilium/resources/networking.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +2 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +2 -6
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js.map +1 -1
- package/dist/factories/clickhouse/resources/installation.d.ts.map +1 -1
- package/dist/factories/clickhouse/resources/installation.js +2 -0
- package/dist/factories/clickhouse/resources/installation.js.map +1 -1
- package/dist/factories/clickhouse/resources/keeper.d.ts.map +1 -1
- package/dist/factories/clickhouse/resources/keeper.js +2 -0
- package/dist/factories/clickhouse/resources/keeper.js.map +1 -1
- package/dist/factories/clickhouse/types.d.ts +5 -2
- package/dist/factories/clickhouse/types.d.ts.map +1 -1
- package/dist/factories/clickhouse/types.js +2 -1
- package/dist/factories/clickhouse/types.js.map +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +4 -2
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.js +2 -5
- package/dist/factories/clickstack/compositions/k8s-telemetry.js.map +1 -1
- package/dist/factories/clickstack/types.d.ts +2 -1
- package/dist/factories/clickstack/types.d.ts.map +1 -1
- package/dist/factories/clickstack/types.js +3 -1
- package/dist/factories/clickstack/types.js.map +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +2 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts.map +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +3 -8
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.js.map +1 -1
- package/dist/factories/cnpg/resources/backup.d.ts.map +1 -1
- package/dist/factories/cnpg/resources/backup.js +2 -0
- package/dist/factories/cnpg/resources/backup.js.map +1 -1
- package/dist/factories/cnpg/resources/cluster.d.ts.map +1 -1
- package/dist/factories/cnpg/resources/cluster.js +2 -1
- package/dist/factories/cnpg/resources/cluster.js.map +1 -1
- package/dist/factories/cnpg/resources/pooler.d.ts.map +1 -1
- package/dist/factories/cnpg/resources/pooler.js +2 -0
- package/dist/factories/cnpg/resources/pooler.js.map +1 -1
- package/dist/factories/cnpg/resources/scheduled-backup.d.ts.map +1 -1
- package/dist/factories/cnpg/resources/scheduled-backup.js +2 -1
- package/dist/factories/cnpg/resources/scheduled-backup.js.map +1 -1
- package/dist/factories/cnpg/types.d.ts +6 -3
- package/dist/factories/cnpg/types.d.ts.map +1 -1
- package/dist/factories/cnpg/types.js +2 -1
- package/dist/factories/cnpg/types.js.map +1 -1
- package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts +2 -0
- package/dist/factories/dagster/compositions/dagster-bootstrap.d.ts.map +1 -1
- package/dist/factories/dagster/types.d.ts +5 -0
- package/dist/factories/dagster/types.d.ts.map +1 -1
- package/dist/factories/dagster/types.js +1 -0
- package/dist/factories/dagster/types.js.map +1 -1
- package/dist/factories/dagster/utils/helm-values-mapper.js +3 -0
- package/dist/factories/dagster/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.d.ts.map +1 -1
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.js +7 -4
- package/dist/factories/external-dns/compositions/external-dns-bootstrap.js.map +1 -1
- package/dist/factories/external-dns/resources/dns-endpoint.d.ts.map +1 -1
- package/dist/factories/external-dns/resources/dns-endpoint.js +20 -18
- package/dist/factories/external-dns/resources/dns-endpoint.js.map +1 -1
- package/dist/factories/flux/git-repository.d.ts.map +1 -1
- package/dist/factories/flux/git-repository.js +41 -34
- package/dist/factories/flux/git-repository.js.map +1 -1
- package/dist/factories/flux/kustomize/readiness-evaluators.d.ts +0 -6
- package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
- package/dist/factories/flux/kustomize/readiness-evaluators.js +12 -2
- package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
- package/dist/factories/harbor/compositions/harbor-installation.d.ts +46 -38
- package/dist/factories/harbor/compositions/harbor-installation.d.ts.map +1 -1
- package/dist/factories/harbor/compositions/harbor-installation.js +4 -2
- package/dist/factories/harbor/compositions/harbor-installation.js.map +1 -1
- package/dist/factories/harbor/types.d.ts +13 -11
- package/dist/factories/harbor/types.d.ts.map +1 -1
- package/dist/factories/harbor/types.js +11 -9
- package/dist/factories/harbor/types.js.map +1 -1
- package/dist/factories/helm/helm-repository.d.ts.map +1 -1
- package/dist/factories/helm/helm-repository.js +14 -1
- package/dist/factories/helm/helm-repository.js.map +1 -1
- package/dist/factories/helm/index.d.ts +2 -0
- package/dist/factories/helm/index.d.ts.map +1 -1
- package/dist/factories/helm/index.js +1 -0
- package/dist/factories/helm/index.js.map +1 -1
- package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
- package/dist/factories/helm/readiness-evaluators.js +46 -7
- package/dist/factories/helm/readiness-evaluators.js.map +1 -1
- package/dist/factories/helm/status.d.ts +18 -0
- package/dist/factories/helm/status.d.ts.map +1 -0
- package/dist/factories/helm/status.js +38 -0
- package/dist/factories/helm/status.js.map +1 -0
- package/dist/factories/index.d.ts +2 -2
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/factories/index.js +4 -4
- package/dist/factories/index.js.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.js +2 -4
- package/dist/factories/inngest/compositions/inngest-bootstrap.js.map +1 -1
- package/dist/factories/inngest/resources/helm.d.ts.map +1 -1
- package/dist/factories/inngest/resources/helm.js +12 -3
- package/dist/factories/inngest/resources/helm.js.map +1 -1
- package/dist/factories/inngest/types.d.ts +3 -7
- package/dist/factories/inngest/types.d.ts.map +1 -1
- package/dist/factories/inngest/types.js +1 -1
- package/dist/factories/inngest/types.js.map +1 -1
- package/dist/factories/kro/kro-crd.d.ts.map +1 -1
- package/dist/factories/kro/kro-crd.js +32 -33
- package/dist/factories/kro/kro-crd.js.map +1 -1
- package/dist/factories/kro/kro-custom-resource.d.ts.map +1 -1
- package/dist/factories/kro/kro-custom-resource.js +91 -85
- package/dist/factories/kro/kro-custom-resource.js.map +1 -1
- package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
- package/dist/factories/kro/resource-graph-definition.js +127 -117
- package/dist/factories/kro/resource-graph-definition.js.map +1 -1
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.d.ts.map +1 -1
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js +27 -26
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js.map +1 -1
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -1
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js +22 -22
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js.map +1 -1
- package/dist/factories/kubernetes/certificates/certificate-signing-request.d.ts.map +1 -1
- package/dist/factories/kubernetes/certificates/certificate-signing-request.js +41 -39
- package/dist/factories/kubernetes/certificates/certificate-signing-request.js.map +1 -1
- package/dist/factories/kubernetes/core/component-status.d.ts.map +1 -1
- package/dist/factories/kubernetes/core/component-status.js +14 -16
- package/dist/factories/kubernetes/core/component-status.js.map +1 -1
- package/dist/factories/kubernetes/core/namespace.d.ts.map +1 -1
- package/dist/factories/kubernetes/core/namespace.js +31 -38
- package/dist/factories/kubernetes/core/namespace.js.map +1 -1
- package/dist/factories/kubernetes/core/node.d.ts.map +1 -1
- package/dist/factories/kubernetes/core/node.js +17 -25
- package/dist/factories/kubernetes/core/node.js.map +1 -1
- package/dist/factories/kubernetes/core/pod.d.ts.map +1 -1
- package/dist/factories/kubernetes/core/pod.js +31 -35
- package/dist/factories/kubernetes/core/pod.js.map +1 -1
- package/dist/factories/kubernetes/extensions/custom-resource-definition.d.ts.map +1 -1
- package/dist/factories/kubernetes/extensions/custom-resource-definition.js +34 -36
- package/dist/factories/kubernetes/extensions/custom-resource-definition.js.map +1 -1
- package/dist/factories/kubernetes/extensions/custom-resource.d.ts.map +1 -1
- package/dist/factories/kubernetes/extensions/custom-resource.js +2 -4
- package/dist/factories/kubernetes/extensions/custom-resource.js.map +1 -1
- package/dist/factories/kubernetes/networking/endpoints.d.ts.map +1 -1
- package/dist/factories/kubernetes/networking/endpoints.js +29 -30
- package/dist/factories/kubernetes/networking/endpoints.js.map +1 -1
- package/dist/factories/kubernetes/networking/ingress.d.ts.map +1 -1
- package/dist/factories/kubernetes/networking/ingress.js +46 -57
- package/dist/factories/kubernetes/networking/ingress.js.map +1 -1
- package/dist/factories/kubernetes/networking/network-policy.d.ts +9 -0
- package/dist/factories/kubernetes/networking/network-policy.d.ts.map +1 -1
- package/dist/factories/kubernetes/networking/network-policy.js +51 -1
- package/dist/factories/kubernetes/networking/network-policy.js.map +1 -1
- package/dist/factories/kubernetes/networking/service.d.ts.map +1 -1
- package/dist/factories/kubernetes/networking/service.js +48 -40
- package/dist/factories/kubernetes/networking/service.js.map +1 -1
- package/dist/factories/kubernetes/policy/pod-disruption-budget.d.ts.map +1 -1
- package/dist/factories/kubernetes/policy/pod-disruption-budget.js +40 -46
- package/dist/factories/kubernetes/policy/pod-disruption-budget.js.map +1 -1
- package/dist/factories/kubernetes/policy/resource-quota.d.ts.map +1 -1
- package/dist/factories/kubernetes/policy/resource-quota.js +30 -34
- package/dist/factories/kubernetes/policy/resource-quota.js.map +1 -1
- package/dist/factories/kubernetes/storage/persistent-volume-claim.d.ts.map +1 -1
- package/dist/factories/kubernetes/storage/persistent-volume-claim.js +22 -21
- package/dist/factories/kubernetes/storage/persistent-volume-claim.js.map +1 -1
- package/dist/factories/kubernetes/storage/persistent-volume.d.ts.map +1 -1
- package/dist/factories/kubernetes/storage/persistent-volume.js +32 -38
- package/dist/factories/kubernetes/storage/persistent-volume.js.map +1 -1
- package/dist/factories/kubernetes/storage/volume-attachment.d.ts.map +1 -1
- package/dist/factories/kubernetes/storage/volume-attachment.js +12 -11
- package/dist/factories/kubernetes/storage/volume-attachment.js.map +1 -1
- package/dist/factories/kubernetes/workloads/cron-job.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/cron-job.js +39 -34
- package/dist/factories/kubernetes/workloads/cron-job.js.map +1 -1
- package/dist/factories/kubernetes/workloads/daemon-set.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/daemon-set.js +24 -23
- package/dist/factories/kubernetes/workloads/daemon-set.js.map +1 -1
- package/dist/factories/kubernetes/workloads/deployment.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/deployment.js +45 -35
- package/dist/factories/kubernetes/workloads/deployment.js.map +1 -1
- package/dist/factories/kubernetes/workloads/job.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/job.js +87 -77
- package/dist/factories/kubernetes/workloads/job.js.map +1 -1
- package/dist/factories/kubernetes/workloads/replica-set.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/replica-set.js +24 -24
- package/dist/factories/kubernetes/workloads/replica-set.js.map +1 -1
- package/dist/factories/kubernetes/workloads/replication-controller.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/replication-controller.js +37 -26
- package/dist/factories/kubernetes/workloads/replication-controller.js.map +1 -1
- package/dist/factories/kubernetes/workloads/stateful-set.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/stateful-set.js +69 -55
- package/dist/factories/kubernetes/workloads/stateful-set.js.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-artifact-applier.d.ts +15 -0
- package/dist/factories/kubernetes/yaml/yaml-artifact-applier.d.ts.map +1 -0
- package/dist/factories/kubernetes/yaml/yaml-artifact-applier.js +69 -0
- package/dist/factories/kubernetes/yaml/yaml-artifact-applier.js.map +1 -0
- package/dist/factories/kubernetes/yaml/yaml-directory.d.ts +2 -1
- package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-directory.js +3 -34
- package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-file.d.ts +13 -91
- package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-file.js +21 -311
- package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
- package/dist/factories/nats/compositions/nats-bootstrap.d.ts +2 -2
- package/dist/factories/nats/compositions/nats-bootstrap.d.ts.map +1 -1
- package/dist/factories/nats/compositions/nats-bootstrap.js +2 -3
- package/dist/factories/nats/compositions/nats-bootstrap.js.map +1 -1
- package/dist/factories/nats/resources/jetstream.d.ts.map +1 -1
- package/dist/factories/nats/resources/jetstream.js +2 -0
- package/dist/factories/nats/resources/jetstream.js.map +1 -1
- package/dist/factories/nats/types.d.ts +3 -3
- package/dist/factories/nats/types.js +1 -1
- package/dist/factories/nats/types.js.map +1 -1
- package/dist/factories/ory/compositions/ory-platform-stack.d.ts.map +1 -1
- package/dist/factories/ory/compositions/ory-platform-stack.js +35 -9
- package/dist/factories/ory/compositions/ory-platform-stack.js.map +1 -1
- package/dist/factories/ory/resources/oathkeeper-rule.d.ts.map +1 -1
- package/dist/factories/ory/resources/oathkeeper-rule.js +11 -8
- package/dist/factories/ory/resources/oathkeeper-rule.js.map +1 -1
- package/dist/factories/ory/resources/oauth2-client.d.ts.map +1 -1
- package/dist/factories/ory/resources/oauth2-client.js +12 -9
- package/dist/factories/ory/resources/oauth2-client.js.map +1 -1
- package/dist/factories/ory/types.d.ts +3 -0
- package/dist/factories/ory/types.d.ts.map +1 -1
- package/dist/factories/ory/types.js +1 -0
- package/dist/factories/ory/types.js.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +2 -2
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -1
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +2 -3
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -1
- package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -1
- package/dist/factories/rook/resources/ceph-object-store-user.js +2 -0
- package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -1
- package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -1
- package/dist/factories/rook/resources/ceph-object-store.js +2 -0
- package/dist/factories/rook/resources/ceph-object-store.js.map +1 -1
- package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -1
- package/dist/factories/rook/resources/object-bucket-claim.js +2 -0
- package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -1
- package/dist/factories/rook/types.d.ts +1 -1
- package/dist/factories/rook/types.js +1 -1
- package/dist/factories/rook/types.js.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.d.ts.map +1 -1
- package/dist/factories/searxng/compositions/searxng-bootstrap.js +2 -2
- package/dist/factories/searxng/compositions/searxng-bootstrap.js.map +1 -1
- package/dist/factories/searxng/resources/searxng.d.ts.map +1 -1
- package/dist/factories/searxng/resources/searxng.js +2 -0
- package/dist/factories/searxng/resources/searxng.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +2 -2
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.js +4 -9
- package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
- package/dist/factories/valkey/resources/valkey.d.ts.map +1 -1
- package/dist/factories/valkey/resources/valkey.js +2 -1
- package/dist/factories/valkey/resources/valkey.js.map +1 -1
- package/dist/factories/valkey/types.d.ts +3 -7
- package/dist/factories/valkey/types.d.ts.map +1 -1
- package/dist/factories/valkey/types.js +1 -1
- package/dist/factories/valkey/types.js.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +3 -2
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.js +7 -6
- package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
- package/dist/factories/webapp/types.d.ts +1 -0
- package/dist/factories/webapp/types.d.ts.map +1 -1
- package/dist/factories/webapp/types.js +2 -0
- package/dist/factories/webapp/types.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/shared/brands.d.ts +7 -0
- package/dist/shared/brands.d.ts.map +1 -1
- package/dist/shared/brands.js +7 -0
- package/dist/shared/brands.js.map +1 -1
- package/dist/utils/index.d.ts +3 -3
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +3 -3
- package/dist/utils/index.js.map +1 -1
- package/package.json +20 -5
- package/dist/factories/kubernetes/yaml/conflict-handler.d.ts +0 -23
- package/dist/factories/kubernetes/yaml/conflict-handler.d.ts.map +0 -1
- package/dist/factories/kubernetes/yaml/conflict-handler.js +0 -83
- package/dist/factories/kubernetes/yaml/conflict-handler.js.map +0 -1
|
@@ -33,12 +33,10 @@
|
|
|
33
33
|
* const namespaces = await coreApi.listNamespace();
|
|
34
34
|
* ```
|
|
35
35
|
*/
|
|
36
|
-
import * as k8s from '@kubernetes/client-node';
|
|
37
|
-
import { createConfiguration } from '@kubernetes/client-node/dist/gen/configuration.js';
|
|
38
|
-
import { ServerConfiguration } from '@kubernetes/client-node/dist/gen/servers.js';
|
|
39
36
|
import { KubernetesClientError } from '../errors.js';
|
|
40
37
|
import { getComponentLogger } from '../logging/index.js';
|
|
41
38
|
import { BunCompatibleHttpLibrary, isBunRuntime, } from './bun-http-library.js';
|
|
39
|
+
import { getKubernetesClientNode } from './client-node-runtime.js';
|
|
42
40
|
const logger = getComponentLogger('bun-api-client');
|
|
43
41
|
// Re-export isBunRuntime and HttpTimeoutConfig for convenience
|
|
44
42
|
export { isBunRuntime };
|
|
@@ -71,8 +69,9 @@ export function createBunCompatibleApiClient(kubeConfig, apiClientClass, timeout
|
|
|
71
69
|
const authConfig = {
|
|
72
70
|
default: kubeConfig,
|
|
73
71
|
};
|
|
74
|
-
const
|
|
75
|
-
const
|
|
72
|
+
const clientNode = getKubernetesClientNode();
|
|
73
|
+
const baseServerConfig = new clientNode.ServerConfiguration(cluster.server, {});
|
|
74
|
+
const config = clientNode.createConfiguration({
|
|
76
75
|
baseServer: baseServerConfig,
|
|
77
76
|
authMethods: authConfig,
|
|
78
77
|
httpApi: new BunCompatibleHttpLibrary(timeoutConfig),
|
|
@@ -91,7 +90,7 @@ export function createBunCompatibleApiClient(kubeConfig, apiClientClass, timeout
|
|
|
91
90
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
92
91
|
*/
|
|
93
92
|
export function createBunCompatibleCoreV1Api(kubeConfig, timeoutConfig) {
|
|
94
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
93
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().CoreV1Api, timeoutConfig);
|
|
95
94
|
}
|
|
96
95
|
/**
|
|
97
96
|
* Create an AppsV1Api client that works in Bun runtime.
|
|
@@ -99,7 +98,7 @@ export function createBunCompatibleCoreV1Api(kubeConfig, timeoutConfig) {
|
|
|
99
98
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
100
99
|
*/
|
|
101
100
|
export function createBunCompatibleAppsV1Api(kubeConfig, timeoutConfig) {
|
|
102
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
101
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().AppsV1Api, timeoutConfig);
|
|
103
102
|
}
|
|
104
103
|
/**
|
|
105
104
|
* Create a CustomObjectsApi client that works in Bun runtime.
|
|
@@ -107,7 +106,7 @@ export function createBunCompatibleAppsV1Api(kubeConfig, timeoutConfig) {
|
|
|
107
106
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
108
107
|
*/
|
|
109
108
|
export function createBunCompatibleCustomObjectsApi(kubeConfig, timeoutConfig) {
|
|
110
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
109
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().CustomObjectsApi, timeoutConfig);
|
|
111
110
|
}
|
|
112
111
|
/**
|
|
113
112
|
* Create a BatchV1Api client that works in Bun runtime.
|
|
@@ -115,7 +114,7 @@ export function createBunCompatibleCustomObjectsApi(kubeConfig, timeoutConfig) {
|
|
|
115
114
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
116
115
|
*/
|
|
117
116
|
export function createBunCompatibleBatchV1Api(kubeConfig, timeoutConfig) {
|
|
118
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
117
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().BatchV1Api, timeoutConfig);
|
|
119
118
|
}
|
|
120
119
|
/**
|
|
121
120
|
* Create a NetworkingV1Api client that works in Bun runtime.
|
|
@@ -123,7 +122,7 @@ export function createBunCompatibleBatchV1Api(kubeConfig, timeoutConfig) {
|
|
|
123
122
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
124
123
|
*/
|
|
125
124
|
export function createBunCompatibleNetworkingV1Api(kubeConfig, timeoutConfig) {
|
|
126
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
125
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().NetworkingV1Api, timeoutConfig);
|
|
127
126
|
}
|
|
128
127
|
/**
|
|
129
128
|
* Create an RbacAuthorizationV1Api client that works in Bun runtime.
|
|
@@ -131,7 +130,7 @@ export function createBunCompatibleNetworkingV1Api(kubeConfig, timeoutConfig) {
|
|
|
131
130
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
132
131
|
*/
|
|
133
132
|
export function createBunCompatibleRbacAuthorizationV1Api(kubeConfig, timeoutConfig) {
|
|
134
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
133
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().RbacAuthorizationV1Api, timeoutConfig);
|
|
135
134
|
}
|
|
136
135
|
/**
|
|
137
136
|
* Create a StorageV1Api client that works in Bun runtime.
|
|
@@ -139,7 +138,7 @@ export function createBunCompatibleRbacAuthorizationV1Api(kubeConfig, timeoutCon
|
|
|
139
138
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
140
139
|
*/
|
|
141
140
|
export function createBunCompatibleStorageV1Api(kubeConfig, timeoutConfig) {
|
|
142
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
141
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().StorageV1Api, timeoutConfig);
|
|
143
142
|
}
|
|
144
143
|
/**
|
|
145
144
|
* Create an ApiextensionsV1Api client that works in Bun runtime.
|
|
@@ -147,7 +146,7 @@ export function createBunCompatibleStorageV1Api(kubeConfig, timeoutConfig) {
|
|
|
147
146
|
* @param timeoutConfig - Optional HTTP timeout configuration
|
|
148
147
|
*/
|
|
149
148
|
export function createBunCompatibleApiextensionsV1Api(kubeConfig, timeoutConfig) {
|
|
150
|
-
return createBunCompatibleApiClient(kubeConfig,
|
|
149
|
+
return createBunCompatibleApiClient(kubeConfig, getKubernetesClientNode().ApiextensionsV1Api, timeoutConfig);
|
|
151
150
|
}
|
|
152
151
|
/**
|
|
153
152
|
* Create a KubernetesObjectApi client that works in Bun runtime.
|
|
@@ -162,7 +161,7 @@ export function createBunCompatibleApiextensionsV1Api(kubeConfig, timeoutConfig)
|
|
|
162
161
|
export function createBunCompatibleKubernetesObjectApi(kubeConfig, timeoutConfig) {
|
|
163
162
|
// If not running in Bun, use standard method
|
|
164
163
|
if (!isBunRuntime()) {
|
|
165
|
-
return
|
|
164
|
+
return getKubernetesClientNode().KubernetesObjectApi.makeApiClient(kubeConfig);
|
|
166
165
|
}
|
|
167
166
|
const cluster = kubeConfig.getCurrentCluster();
|
|
168
167
|
if (!cluster) {
|
|
@@ -172,12 +171,13 @@ export function createBunCompatibleKubernetesObjectApi(kubeConfig, timeoutConfig
|
|
|
172
171
|
const authConfig = {
|
|
173
172
|
default: kubeConfig,
|
|
174
173
|
};
|
|
175
|
-
const
|
|
176
|
-
const
|
|
174
|
+
const clientNode = getKubernetesClientNode();
|
|
175
|
+
const baseServerConfig = new clientNode.ServerConfiguration(cluster.server, {});
|
|
176
|
+
const config = clientNode.createConfiguration({
|
|
177
177
|
baseServer: baseServerConfig,
|
|
178
178
|
authMethods: authConfig,
|
|
179
179
|
httpApi: new BunCompatibleHttpLibrary(timeoutConfig),
|
|
180
180
|
});
|
|
181
|
-
return new
|
|
181
|
+
return new (getKubernetesClientNode().KubernetesObjectApi)(config);
|
|
182
182
|
}
|
|
183
183
|
//# sourceMappingURL=bun-api-client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bun-api-client.js","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-api-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;
|
|
1
|
+
{"version":3,"file":"bun-api-client.js","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,22 @@ export interface HttpTimeoutConfig {
|
|
|
58
58
|
*/
|
|
59
59
|
delete?: number;
|
|
60
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* TLS-related options extracted from an https.Agent at runtime.
|
|
63
|
+
* Node.js stores these on agent.options but it's not part of the public type.
|
|
64
|
+
*/
|
|
65
|
+
export interface AgentTlsOptions {
|
|
66
|
+
rejectUnauthorized?: boolean;
|
|
67
|
+
cert?: string | Buffer;
|
|
68
|
+
key?: string | Buffer;
|
|
69
|
+
ca?: string | Buffer | Array<string | Buffer>;
|
|
70
|
+
pfx?: string | Buffer;
|
|
71
|
+
passphrase?: string;
|
|
72
|
+
servername?: string;
|
|
73
|
+
ciphers?: string;
|
|
74
|
+
}
|
|
75
|
+
/** Extract the TLS material KubeConfig placed on an https.Agent. */
|
|
76
|
+
export declare function extractAgentTlsOptions(agent: unknown): AgentTlsOptions;
|
|
61
77
|
/**
|
|
62
78
|
* Check if we're running in Bun runtime
|
|
63
79
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bun-http-library.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-http-library.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,eAAe,EAChB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,8CAA8C,CAAC;AASrF;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"bun-http-library.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-http-library.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,eAAe,EAChB,MAAM,+CAA+C,CAAC;AACvD,OAAO,EAAQ,KAAK,UAAU,EAAE,MAAM,8CAA8C,CAAC;AASrF;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAC9C,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,oEAAoE;AACpE,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAItE;AAcD;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;;;;;;;GAQG;AACH,qBAAa,wBAAyB,YAAW,WAAW;IAC1D,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,MAAM,CAA0C;IAExD;;;OAGG;gBACS,aAAa,CAAC,EAAE,iBAAiB;IAkBtC,IAAI,CAAC,OAAO,EAAE,cAAc,GAAG,UAAU,CAAC,eAAe,CAAC;IAKjE;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IAyB5B,OAAO,CAAC,WAAW;CA8KpB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,CAAC,EAAE,iBAAiB,GAChC,WAAW,GAAG,SAAS,CAKzB;AAGD,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC"}
|
|
@@ -16,6 +16,12 @@ import * as https from 'node:https';
|
|
|
16
16
|
import { from } from '@kubernetes/client-node/dist/gen/rxjsStub.js';
|
|
17
17
|
import { DEFAULT_HTTP_DELETE_TIMEOUT, DEFAULT_HTTP_READ_TIMEOUT, DEFAULT_HTTP_WATCH_TIMEOUT, DEFAULT_HTTP_WRITE_TIMEOUT, } from '../config/defaults.js';
|
|
18
18
|
import { getComponentLogger } from '../logging/index.js';
|
|
19
|
+
/** Extract the TLS material KubeConfig placed on an https.Agent. */
|
|
20
|
+
export function extractAgentTlsOptions(agent) {
|
|
21
|
+
return agent && typeof agent === 'object' && 'options' in agent
|
|
22
|
+
? Reflect.get(agent, 'options')
|
|
23
|
+
: {};
|
|
24
|
+
}
|
|
19
25
|
/**
|
|
20
26
|
* Default timeout values for Kubernetes API operations
|
|
21
27
|
* Based on kubectl defaults and operation characteristics
|
|
@@ -116,7 +122,7 @@ export class BunCompatibleHttpLibrary {
|
|
|
116
122
|
// Extract TLS options from the agent if present
|
|
117
123
|
// This is the key workaround for Bun's https.Agent issues
|
|
118
124
|
// Node.js stores constructor options on agent.options (not in public types)
|
|
119
|
-
const agentOptions =
|
|
125
|
+
const agentOptions = extractAgentTlsOptions(agent);
|
|
120
126
|
const options = {
|
|
121
127
|
hostname: url.hostname,
|
|
122
128
|
port: url.port || (isHttps ? 443 : 80),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bun-http-library.js","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-http-library.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bun-http-library.js","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-http-library.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as http from 'node:http';
|
|
2
|
+
import * as https from 'node:https';
|
|
3
|
+
import type * as k8s from '@kubernetes/client-node';
|
|
4
|
+
export interface KubernetesWatch {
|
|
5
|
+
watch(path: string, queryParams: Record<string, string | number | boolean | undefined>, callback: (phase: string, apiObj: unknown, watchObj: unknown) => void, done: (error: unknown) => void): Promise<{
|
|
6
|
+
abort(): void;
|
|
7
|
+
}>;
|
|
8
|
+
}
|
|
9
|
+
export type BunWatchRequestFactory = (protocol: 'http:' | 'https:', options: https.RequestOptions, callback: (response: http.IncomingMessage) => void) => http.ClientRequest;
|
|
10
|
+
/**
|
|
11
|
+
* Streaming Kubernetes watch transport for Bun.
|
|
12
|
+
*
|
|
13
|
+
* The upstream Watch uses node-fetch and passes client certificates through an
|
|
14
|
+
* https.Agent. Bun's fetch compatibility layer does not reliably honor that
|
|
15
|
+
* agent, which turns an authenticated kubeconfig into `system:anonymous`.
|
|
16
|
+
* This implementation applies KubeConfig authentication, extracts the TLS
|
|
17
|
+
* material, and sends it directly through node:https like the ordinary Bun API
|
|
18
|
+
* transport.
|
|
19
|
+
*/
|
|
20
|
+
export declare class BunCompatibleWatch implements KubernetesWatch {
|
|
21
|
+
private readonly kubeConfig;
|
|
22
|
+
private readonly requestFactory;
|
|
23
|
+
constructor(kubeConfig: k8s.KubeConfig, requestFactory?: BunWatchRequestFactory);
|
|
24
|
+
watch(path: string, queryParams: Record<string, string | number | boolean | undefined>, callback: (phase: string, apiObj: unknown, watchObj: unknown) => void, done: (error: unknown) => void): Promise<{
|
|
25
|
+
abort(): void;
|
|
26
|
+
}>;
|
|
27
|
+
}
|
|
28
|
+
export declare function createWatchForRuntime(kubeConfig: k8s.KubeConfig): KubernetesWatch;
|
|
29
|
+
export declare function watchErrorMessage(error: unknown): string;
|
|
30
|
+
//# sourceMappingURL=bun-watch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bun-watch.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-watch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,KAAK,GAAG,MAAM,yBAAyB,CAAC;AAKpD,MAAM,WAAW,eAAe;IAC9B,KAAK,CACH,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,EAClE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,EACrE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC7B,OAAO,CAAC;QAAE,KAAK,IAAI,IAAI,CAAA;KAAE,CAAC,CAAC;CAC/B;AAOD,MAAM,MAAM,sBAAsB,GAAG,CACnC,QAAQ,EAAE,OAAO,GAAG,QAAQ,EAC5B,OAAO,EAAE,KAAK,CAAC,cAAc,EAC7B,QAAQ,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,KAAK,IAAI,KAC/C,IAAI,CAAC,aAAa,CAAC;AAWxB;;;;;;;;;GASG;AACH,qBAAa,kBAAmB,YAAW,eAAe;IAEtD,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBADd,UAAU,EAAE,GAAG,CAAC,UAAU,EAC1B,cAAc,GAAE,sBAA8C;IAG3E,KAAK,CACT,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC,EAClE,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,KAAK,IAAI,EACrE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAC7B,OAAO,CAAC;QAAE,KAAK,IAAI,IAAI,CAAA;KAAE,CAAC;CA+G9B;AAED,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,GAAG,eAAe,CAIjF;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAKxD"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
import * as http from 'node:http';
|
|
2
|
+
import * as https from 'node:https';
|
|
3
|
+
import { ensureError } from '../errors.js';
|
|
4
|
+
import { extractAgentTlsOptions, isBunRuntime } from './bun-http-library.js';
|
|
5
|
+
import { getKubernetesClientNode } from './client-node-runtime.js';
|
|
6
|
+
const defaultRequestFactory = (protocol, options, callback) => {
|
|
7
|
+
const client = protocol === 'https:' ? https : http;
|
|
8
|
+
return client.request(options, callback);
|
|
9
|
+
};
|
|
10
|
+
function watchCompletionError(message, name) {
|
|
11
|
+
return new DOMException(message, name);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Streaming Kubernetes watch transport for Bun.
|
|
15
|
+
*
|
|
16
|
+
* The upstream Watch uses node-fetch and passes client certificates through an
|
|
17
|
+
* https.Agent. Bun's fetch compatibility layer does not reliably honor that
|
|
18
|
+
* agent, which turns an authenticated kubeconfig into `system:anonymous`.
|
|
19
|
+
* This implementation applies KubeConfig authentication, extracts the TLS
|
|
20
|
+
* material, and sends it directly through node:https like the ordinary Bun API
|
|
21
|
+
* transport.
|
|
22
|
+
*/
|
|
23
|
+
export class BunCompatibleWatch {
|
|
24
|
+
kubeConfig;
|
|
25
|
+
requestFactory;
|
|
26
|
+
constructor(kubeConfig, requestFactory = defaultRequestFactory) {
|
|
27
|
+
this.kubeConfig = kubeConfig;
|
|
28
|
+
this.requestFactory = requestFactory;
|
|
29
|
+
}
|
|
30
|
+
async watch(path, queryParams, callback, done) {
|
|
31
|
+
const cluster = this.kubeConfig.getCurrentCluster();
|
|
32
|
+
if (!cluster)
|
|
33
|
+
throw new Error('No currently active cluster');
|
|
34
|
+
const url = new URL(path, cluster.server);
|
|
35
|
+
url.searchParams.set('watch', 'true');
|
|
36
|
+
for (const [key, value] of Object.entries(queryParams)) {
|
|
37
|
+
if (value !== undefined)
|
|
38
|
+
url.searchParams.set(key, String(value));
|
|
39
|
+
}
|
|
40
|
+
const authenticatedOptions = { headers: {} };
|
|
41
|
+
await this.kubeConfig.applyToHTTPSOptions(authenticatedOptions);
|
|
42
|
+
const tls = extractAgentTlsOptions(authenticatedOptions.agent);
|
|
43
|
+
let completed = false;
|
|
44
|
+
let aborted = false;
|
|
45
|
+
const doneOnce = (error) => {
|
|
46
|
+
if (completed)
|
|
47
|
+
return;
|
|
48
|
+
completed = true;
|
|
49
|
+
done(error);
|
|
50
|
+
};
|
|
51
|
+
const request = this.requestFactory(url.protocol, {
|
|
52
|
+
hostname: url.hostname,
|
|
53
|
+
port: url.port || (url.protocol === 'https:' ? 443 : 80),
|
|
54
|
+
path: `${url.pathname}${url.search}`,
|
|
55
|
+
method: 'GET',
|
|
56
|
+
agent: false,
|
|
57
|
+
auth: authenticatedOptions.auth,
|
|
58
|
+
headers: {
|
|
59
|
+
...authenticatedOptions.headers,
|
|
60
|
+
connection: 'close',
|
|
61
|
+
accept: 'application/json',
|
|
62
|
+
},
|
|
63
|
+
rejectUnauthorized: tls.rejectUnauthorized ?? true,
|
|
64
|
+
cert: tls.cert,
|
|
65
|
+
key: tls.key,
|
|
66
|
+
ca: tls.ca,
|
|
67
|
+
pfx: tls.pfx,
|
|
68
|
+
passphrase: tls.passphrase,
|
|
69
|
+
servername: tls.servername,
|
|
70
|
+
ciphers: tls.ciphers,
|
|
71
|
+
}, (response) => {
|
|
72
|
+
if (response.statusCode !== 200) {
|
|
73
|
+
const chunks = [];
|
|
74
|
+
response.on('data', (chunk) => {
|
|
75
|
+
chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));
|
|
76
|
+
});
|
|
77
|
+
response.on('end', () => {
|
|
78
|
+
const error = new Error(`Kubernetes watch request failed with HTTP ${response.statusCode ?? 0}`);
|
|
79
|
+
if (response.statusCode !== undefined)
|
|
80
|
+
error.statusCode = response.statusCode;
|
|
81
|
+
error.responseBody = Buffer.concat(chunks).toString('utf8');
|
|
82
|
+
doneOnce(error);
|
|
83
|
+
});
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
response.setEncoding('utf8');
|
|
87
|
+
let pending = '';
|
|
88
|
+
const consumeLine = (line) => {
|
|
89
|
+
const trimmed = line.trim();
|
|
90
|
+
if (!trimmed)
|
|
91
|
+
return;
|
|
92
|
+
try {
|
|
93
|
+
const event = JSON.parse(trimmed);
|
|
94
|
+
callback(event.type ?? 'UNKNOWN', event.object, event);
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
97
|
+
// Kubernetes watch streams may contain an incomplete trailing line;
|
|
98
|
+
// malformed lines are ignored like the upstream client.
|
|
99
|
+
}
|
|
100
|
+
};
|
|
101
|
+
response.on('data', (chunk) => {
|
|
102
|
+
pending += chunk;
|
|
103
|
+
let newline = pending.indexOf('\n');
|
|
104
|
+
while (newline >= 0) {
|
|
105
|
+
consumeLine(pending.slice(0, newline));
|
|
106
|
+
pending = pending.slice(newline + 1);
|
|
107
|
+
newline = pending.indexOf('\n');
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
response.on('error', doneOnce);
|
|
111
|
+
response.on('end', () => {
|
|
112
|
+
consumeLine(pending);
|
|
113
|
+
doneOnce(aborted
|
|
114
|
+
? watchCompletionError('Kubernetes watch aborted', 'AbortError')
|
|
115
|
+
: watchCompletionError('Kubernetes watch timeout or server close', 'TimeoutError'));
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
request.on('error', (error) => {
|
|
119
|
+
doneOnce(aborted ? watchCompletionError('Kubernetes watch aborted', 'AbortError') : error);
|
|
120
|
+
});
|
|
121
|
+
request.end();
|
|
122
|
+
return {
|
|
123
|
+
abort: () => {
|
|
124
|
+
if (aborted)
|
|
125
|
+
return;
|
|
126
|
+
aborted = true;
|
|
127
|
+
request.destroy(watchCompletionError('Kubernetes watch aborted', 'AbortError'));
|
|
128
|
+
},
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
export function createWatchForRuntime(kubeConfig) {
|
|
133
|
+
if (isBunRuntime())
|
|
134
|
+
return new BunCompatibleWatch(kubeConfig);
|
|
135
|
+
const clientNode = getKubernetesClientNode();
|
|
136
|
+
return new clientNode.Watch(kubeConfig);
|
|
137
|
+
}
|
|
138
|
+
export function watchErrorMessage(error) {
|
|
139
|
+
const watchError = ensureError(error);
|
|
140
|
+
return watchError.responseBody
|
|
141
|
+
? `${watchError.message}: ${watchError.responseBody}`
|
|
142
|
+
: watchError.message;
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=bun-watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bun-watch.js","sourceRoot":"","sources":["../../../src/core/kubernetes/bun-watch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type * as KubernetesClientNode from '@kubernetes/client-node';
|
|
2
|
+
/**
|
|
3
|
+
* Load the Kubernetes SDK only when a caller actually needs cluster I/O.
|
|
4
|
+
*
|
|
5
|
+
* The SDK's legacy HTTP dependency emits Node's `punycode` deprecation during
|
|
6
|
+
* module evaluation. Keeping it behind this boundary makes TypeKro package
|
|
7
|
+
* imports quiet and avoids loading the full client for planning and YAML work.
|
|
8
|
+
*/
|
|
9
|
+
export declare function getKubernetesClientNode(): typeof KubernetesClientNode;
|
|
10
|
+
//# sourceMappingURL=client-node-runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-node-runtime.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/client-node-runtime.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,oBAAoB,MAAM,yBAAyB,CAAC;AAKrE;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,oBAAoB,CAGrE"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { createRequire } from 'node:module';
|
|
2
|
+
const require = createRequire(import.meta.url);
|
|
3
|
+
let cachedClientNode;
|
|
4
|
+
/**
|
|
5
|
+
* Load the Kubernetes SDK only when a caller actually needs cluster I/O.
|
|
6
|
+
*
|
|
7
|
+
* The SDK's legacy HTTP dependency emits Node's `punycode` deprecation during
|
|
8
|
+
* module evaluation. Keeping it behind this boundary makes TypeKro package
|
|
9
|
+
* imports quiet and avoids loading the full client for planning and YAML work.
|
|
10
|
+
*/
|
|
11
|
+
export function getKubernetesClientNode() {
|
|
12
|
+
cachedClientNode ??= require('@kubernetes/client-node');
|
|
13
|
+
return cachedClientNode;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=client-node-runtime.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-node-runtime.js","sourceRoot":"","sources":["../../../src/core/kubernetes/client-node-runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAI5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,IAAI,gBAAyD,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB;IACrC,gBAAgB,KAAK,OAAO,CAAC,yBAAyB,CAAgC,CAAC;IACvF,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
* making cleanup error-prone. Use `createKubernetesClientProvider()` or
|
|
31
31
|
* `createKubernetesClientProviderWithKubeConfig()` instead.
|
|
32
32
|
*/
|
|
33
|
-
import * as k8s from '@kubernetes/client-node';
|
|
33
|
+
import type * as k8s from '@kubernetes/client-node';
|
|
34
34
|
import { type HttpTimeoutConfig } from './bun-api-client.js';
|
|
35
35
|
export interface KubernetesClientProviderDebugState {
|
|
36
36
|
initialized: boolean;
|
|
@@ -130,6 +130,26 @@ export interface KubernetesClientConfig {
|
|
|
130
130
|
*/
|
|
131
131
|
httpTimeouts?: HttpTimeoutConfig;
|
|
132
132
|
}
|
|
133
|
+
/** A host-provided source for one kubeconfig credential field. */
|
|
134
|
+
export interface KubeConfigCredentialBinding {
|
|
135
|
+
readonly kind: 'environment';
|
|
136
|
+
readonly name: string;
|
|
137
|
+
}
|
|
138
|
+
/** JSON-pointer path to a credential source available in the operation host. */
|
|
139
|
+
export type KubeConfigCredentialBindings = Readonly<Record<string, KubeConfigCredentialBinding>>;
|
|
140
|
+
/**
|
|
141
|
+
* Durable-host policy for reconstructing Kubernetes credentials without storing plaintext.
|
|
142
|
+
* When omitted, re-derived auth blocks may be serialized but static credentials fail closed.
|
|
143
|
+
*/
|
|
144
|
+
export interface DurableKubeConfigOptions {
|
|
145
|
+
readonly source?: {
|
|
146
|
+
readonly kind: 'default';
|
|
147
|
+
} | {
|
|
148
|
+
readonly kind: 'file';
|
|
149
|
+
readonly path: string;
|
|
150
|
+
};
|
|
151
|
+
readonly credentialBindings?: KubeConfigCredentialBindings;
|
|
152
|
+
}
|
|
133
153
|
/**
|
|
134
154
|
* Interface for components that need Kubernetes API access
|
|
135
155
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-provider.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/client-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,GAAG,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"client-provider.d.ts","sourceRoot":"","sources":["../../../src/core/kubernetes/client-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,12 +30,12 @@
|
|
|
30
30
|
* making cleanup error-prone. Use `createKubernetesClientProvider()` or
|
|
31
31
|
* `createKubernetesClientProviderWithKubeConfig()` instead.
|
|
32
32
|
*/
|
|
33
|
-
import * as k8s from '@kubernetes/client-node';
|
|
34
33
|
import { DEFAULT_BACKOFF_MULTIPLIER, DEFAULT_CLUSTER_READY_TIMEOUT, DEFAULT_FAST_POLL_INTERVAL, DEFAULT_MAX_RETRIES, DEFAULT_READINESS_MAX_BACKOFF, DEFAULT_RETRY_BASE_DELAY, } from '../config/defaults.js';
|
|
35
34
|
import { isTestEnvironment } from '../config/index.js';
|
|
36
35
|
import { ensureError, KubernetesClientError } from '../errors.js';
|
|
37
36
|
import { getComponentLogger } from '../logging/index.js';
|
|
38
37
|
import { createBunCompatibleApiClient, createBunCompatibleKubernetesObjectApi, isBunRuntime, } from './bun-api-client.js';
|
|
38
|
+
import { getKubernetesClientNode } from './client-node-runtime.js';
|
|
39
39
|
/**
|
|
40
40
|
* Kubernetes Client Provider - Single source of truth for Kubernetes API access
|
|
41
41
|
*
|
|
@@ -177,7 +177,7 @@ export class KubernetesClientProvider {
|
|
|
177
177
|
*/
|
|
178
178
|
getCoreV1Api() {
|
|
179
179
|
this.ensureInitialized();
|
|
180
|
-
return this.getCachedClient('CoreV1Api',
|
|
180
|
+
return this.getCachedClient('CoreV1Api', getKubernetesClientNode().CoreV1Api);
|
|
181
181
|
}
|
|
182
182
|
/**
|
|
183
183
|
* Get an AppsV1Api client instance with consistent configuration
|
|
@@ -188,7 +188,7 @@ export class KubernetesClientProvider {
|
|
|
188
188
|
*/
|
|
189
189
|
getAppsV1Api() {
|
|
190
190
|
this.ensureInitialized();
|
|
191
|
-
return this.getCachedClient('AppsV1Api',
|
|
191
|
+
return this.getCachedClient('AppsV1Api', getKubernetesClientNode().AppsV1Api);
|
|
192
192
|
}
|
|
193
193
|
/**
|
|
194
194
|
* Get a CustomObjectsApi client instance with consistent configuration
|
|
@@ -199,7 +199,7 @@ export class KubernetesClientProvider {
|
|
|
199
199
|
*/
|
|
200
200
|
getCustomObjectsApi() {
|
|
201
201
|
this.ensureInitialized();
|
|
202
|
-
return this.getCachedClient('CustomObjectsApi',
|
|
202
|
+
return this.getCachedClient('CustomObjectsApi', getKubernetesClientNode().CustomObjectsApi);
|
|
203
203
|
}
|
|
204
204
|
/**
|
|
205
205
|
* Get a BatchV1Api client instance with consistent configuration
|
|
@@ -210,7 +210,7 @@ export class KubernetesClientProvider {
|
|
|
210
210
|
*/
|
|
211
211
|
getBatchV1Api() {
|
|
212
212
|
this.ensureInitialized();
|
|
213
|
-
return this.getCachedClient('BatchV1Api',
|
|
213
|
+
return this.getCachedClient('BatchV1Api', getKubernetesClientNode().BatchV1Api);
|
|
214
214
|
}
|
|
215
215
|
/**
|
|
216
216
|
* Get a NetworkingV1Api client instance with consistent configuration
|
|
@@ -221,7 +221,7 @@ export class KubernetesClientProvider {
|
|
|
221
221
|
*/
|
|
222
222
|
getNetworkingV1Api() {
|
|
223
223
|
this.ensureInitialized();
|
|
224
|
-
return this.getCachedClient('NetworkingV1Api',
|
|
224
|
+
return this.getCachedClient('NetworkingV1Api', getKubernetesClientNode().NetworkingV1Api);
|
|
225
225
|
}
|
|
226
226
|
/**
|
|
227
227
|
* Get an RbacAuthorizationV1Api client instance with consistent configuration
|
|
@@ -232,7 +232,7 @@ export class KubernetesClientProvider {
|
|
|
232
232
|
*/
|
|
233
233
|
getRbacAuthorizationV1Api() {
|
|
234
234
|
this.ensureInitialized();
|
|
235
|
-
return this.getCachedClient('RbacAuthorizationV1Api',
|
|
235
|
+
return this.getCachedClient('RbacAuthorizationV1Api', getKubernetesClientNode().RbacAuthorizationV1Api);
|
|
236
236
|
}
|
|
237
237
|
/**
|
|
238
238
|
* Get a StorageV1Api client instance with consistent configuration
|
|
@@ -243,7 +243,7 @@ export class KubernetesClientProvider {
|
|
|
243
243
|
*/
|
|
244
244
|
getStorageV1Api() {
|
|
245
245
|
this.ensureInitialized();
|
|
246
|
-
return this.getCachedClient('StorageV1Api',
|
|
246
|
+
return this.getCachedClient('StorageV1Api', getKubernetesClientNode().StorageV1Api);
|
|
247
247
|
}
|
|
248
248
|
/**
|
|
249
249
|
* Get ApiExtensionsV1Api client
|
|
@@ -252,7 +252,7 @@ export class KubernetesClientProvider {
|
|
|
252
252
|
*/
|
|
253
253
|
getApiExtensionsV1Api() {
|
|
254
254
|
this.ensureInitialized();
|
|
255
|
-
return this.getCachedClient('ApiextensionsV1Api',
|
|
255
|
+
return this.getCachedClient('ApiextensionsV1Api', getKubernetesClientNode().ApiextensionsV1Api);
|
|
256
256
|
}
|
|
257
257
|
/**
|
|
258
258
|
* Inject the Kubernetes API client into a consumer component
|
|
@@ -473,7 +473,7 @@ export class KubernetesClientProvider {
|
|
|
473
473
|
* Create a new KubeConfig with the provided configuration
|
|
474
474
|
*/
|
|
475
475
|
createKubeConfig(config) {
|
|
476
|
-
const kc = new
|
|
476
|
+
const kc = new (getKubernetesClientNode().KubeConfig)();
|
|
477
477
|
// If complete cluster/user configuration is provided, use it directly
|
|
478
478
|
if (config.cluster && config.user) {
|
|
479
479
|
this.logger.debug('Using complete cluster/user configuration');
|