typekro 0.1.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -185
- package/README.md +581 -563
- package/dist/.tsbuildinfo +1 -1
- package/dist/alchemy/deployers.d.ts +1 -1
- package/dist/alchemy/deployers.d.ts.map +1 -1
- package/dist/alchemy/deployers.js +25 -20
- package/dist/alchemy/deployers.js.map +1 -1
- package/dist/alchemy/deployment.d.ts +3 -3
- package/dist/alchemy/deployment.d.ts.map +1 -1
- package/dist/alchemy/deployment.js +2 -2
- package/dist/alchemy/deployment.js.map +1 -1
- package/dist/alchemy/index.d.ts +4 -4
- package/dist/alchemy/index.d.ts.map +1 -1
- package/dist/alchemy/index.js +6 -6
- package/dist/alchemy/index.js.map +1 -1
- package/dist/alchemy/resolver.d.ts +3 -3
- package/dist/alchemy/resolver.d.ts.map +1 -1
- package/dist/alchemy/resolver.js +70 -17
- package/dist/alchemy/resolver.js.map +1 -1
- package/dist/alchemy/resource-registration.d.ts.map +1 -1
- package/dist/alchemy/resource-registration.js +3 -3
- package/dist/alchemy/resource-registration.js.map +1 -1
- package/dist/alchemy/type-inference.d.ts.map +1 -1
- package/dist/alchemy/type-inference.js.map +1 -1
- package/dist/alchemy/types.d.ts +2 -2
- package/dist/alchemy/types.d.ts.map +1 -1
- package/dist/alchemy/utilities.d.ts.map +1 -1
- package/dist/alchemy/utilities.js.map +1 -1
- package/dist/alchemy/wrapper.d.ts.map +1 -1
- package/dist/alchemy/wrapper.js +2 -2
- package/dist/alchemy/wrapper.js.map +1 -1
- package/dist/core/composition/composition.d.ts +1 -85
- package/dist/core/composition/composition.d.ts.map +1 -1
- package/dist/core/composition/composition.js +3 -214
- package/dist/core/composition/composition.js.map +1 -1
- package/dist/core/composition/imperative.d.ts +39 -0
- package/dist/core/composition/imperative.d.ts.map +1 -0
- package/dist/core/composition/imperative.js +219 -0
- package/dist/core/composition/imperative.js.map +1 -0
- package/dist/core/composition/index.d.ts +5 -3
- package/dist/core/composition/index.d.ts.map +1 -1
- package/dist/core/composition/index.js +4 -2
- package/dist/core/composition/index.js.map +1 -1
- package/dist/core/composition/typekro-runtime/index.d.ts +1 -1
- package/dist/core/composition/typekro-runtime/index.d.ts.map +1 -1
- package/dist/core/composition/typekro-runtime/typekro-runtime.d.ts.map +1 -1
- package/dist/core/composition/typekro-runtime/typekro-runtime.js +3 -3
- package/dist/core/composition/typekro-runtime/typekro-runtime.js.map +1 -1
- package/dist/core/composition/types.d.ts +0 -237
- package/dist/core/composition/types.d.ts.map +1 -1
- package/dist/core/composition/types.js +6 -0
- package/dist/core/composition/types.js.map +1 -1
- package/dist/core/constants/brands.d.ts.map +1 -1
- package/dist/core/constants/brands.js +3 -9
- package/dist/core/constants/brands.js.map +1 -1
- package/dist/core/dependencies/resolver.d.ts.map +1 -1
- package/dist/core/dependencies/resolver.js +3 -3
- package/dist/core/dependencies/resolver.js.map +1 -1
- package/dist/core/dependencies/type-guards.d.ts +3 -3
- package/dist/core/dependencies/type-guards.d.ts.map +1 -1
- package/dist/core/dependencies/type-guards.js +3 -3
- package/dist/core/dependencies/type-guards.js.map +1 -1
- package/dist/core/deployment/debug-logger.d.ts +119 -0
- package/dist/core/deployment/debug-logger.d.ts.map +1 -0
- package/dist/core/deployment/debug-logger.js +372 -0
- package/dist/core/deployment/debug-logger.js.map +1 -0
- package/dist/core/deployment/deployment-strategies.d.ts +1 -1
- package/dist/core/deployment/deployment-strategies.d.ts.map +1 -1
- package/dist/core/deployment/deployment-strategies.js +1 -1
- package/dist/core/deployment/deployment-strategies.js.map +1 -1
- package/dist/core/deployment/direct-factory.d.ts +11 -5
- package/dist/core/deployment/direct-factory.d.ts.map +1 -1
- package/dist/core/deployment/direct-factory.js +22 -12
- package/dist/core/deployment/direct-factory.js.map +1 -1
- package/dist/core/deployment/engine.d.ts +9 -6
- package/dist/core/deployment/engine.d.ts.map +1 -1
- package/dist/core/deployment/engine.js +184 -95
- package/dist/core/deployment/engine.js.map +1 -1
- package/dist/core/deployment/event-filter.d.ts +142 -0
- package/dist/core/deployment/event-filter.d.ts.map +1 -0
- package/dist/core/deployment/event-filter.js +420 -0
- package/dist/core/deployment/event-filter.js.map +1 -0
- package/dist/core/deployment/event-monitor.d.ts +197 -0
- package/dist/core/deployment/event-monitor.d.ts.map +1 -0
- package/dist/core/deployment/event-monitor.js +738 -0
- package/dist/core/deployment/event-monitor.js.map +1 -0
- package/dist/core/deployment/event-streamer.d.ts +112 -0
- package/dist/core/deployment/event-streamer.d.ts.map +1 -0
- package/dist/core/deployment/event-streamer.js +348 -0
- package/dist/core/deployment/event-streamer.js.map +1 -0
- package/dist/core/deployment/index.d.ts +5 -5
- package/dist/core/deployment/index.d.ts.map +1 -1
- package/dist/core/deployment/index.js +5 -5
- package/dist/core/deployment/index.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts +2 -8
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +63 -109
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/deployment/readiness.d.ts +6 -0
- package/dist/core/deployment/readiness.d.ts.map +1 -1
- package/dist/core/deployment/readiness.js +45 -1
- package/dist/core/deployment/readiness.js.map +1 -1
- package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
- package/dist/core/deployment/rollback-manager.js +3 -3
- package/dist/core/deployment/rollback-manager.js.map +1 -1
- package/dist/core/deployment/shared-utilities.d.ts +1 -1
- package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
- package/dist/core/deployment/shared-utilities.js +2 -0
- package/dist/core/deployment/shared-utilities.js.map +1 -1
- package/dist/core/deployment/status-hydrator.d.ts.map +1 -1
- package/dist/core/deployment/status-hydrator.js +31 -12
- package/dist/core/deployment/status-hydrator.js.map +1 -1
- package/dist/core/deployment/strategies/alchemy-strategy.d.ts +4 -4
- package/dist/core/deployment/strategies/alchemy-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/alchemy-strategy.js +9 -9
- package/dist/core/deployment/strategies/alchemy-strategy.js.map +1 -1
- package/dist/core/deployment/strategies/base-strategy.d.ts +7 -4
- package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/base-strategy.js +257 -11
- package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
- package/dist/core/deployment/strategies/direct-strategy.d.ts +4 -3
- package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/direct-strategy.js +4 -4
- 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/deployment/strategies/kro-strategy.d.ts +1 -1
- package/dist/core/deployment/strategies/kro-strategy.d.ts.map +1 -1
- package/dist/core/deployment/strategies/kro-strategy.js +14 -14
- package/dist/core/deployment/strategies/kro-strategy.js.map +1 -1
- package/dist/core/errors.d.ts +136 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +362 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/core/evaluation/cel-optimizer.d.ts.map +1 -1
- package/dist/core/evaluation/cel-optimizer.js +33 -11
- package/dist/core/evaluation/cel-optimizer.js.map +1 -1
- package/dist/core/factory.d.ts.map +1 -1
- package/dist/core/factory.js.map +1 -1
- package/dist/core/kubernetes/api.d.ts +13 -2
- package/dist/core/kubernetes/api.d.ts.map +1 -1
- package/dist/core/kubernetes/api.js +21 -8
- package/dist/core/kubernetes/api.js.map +1 -1
- package/dist/core/kubernetes/client-provider.d.ts +192 -0
- package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
- package/dist/core/kubernetes/client-provider.js +423 -22
- package/dist/core/kubernetes/client-provider.js.map +1 -1
- package/dist/core/logging/config.d.ts.map +1 -1
- package/dist/core/logging/config.js.map +1 -1
- package/dist/core/logging/index.d.ts +1 -1
- package/dist/core/logging/index.d.ts.map +1 -1
- package/dist/core/logging/index.js +1 -1
- package/dist/core/logging/index.js.map +1 -1
- package/dist/core/logging/logger.d.ts +1 -1
- package/dist/core/logging/logger.d.ts.map +1 -1
- package/dist/core/logging/logger.js.map +1 -1
- package/dist/core/readiness/cluster-state.d.ts.map +1 -1
- package/dist/core/readiness/cluster-state.js +12 -6
- package/dist/core/readiness/cluster-state.js.map +1 -1
- package/dist/core/references/cel-evaluator.js +1 -1
- package/dist/core/references/cel-evaluator.js.map +1 -1
- package/dist/core/references/cel.d.ts.map +1 -1
- package/dist/core/references/cel.js +1 -1
- package/dist/core/references/cel.js.map +1 -1
- package/dist/core/references/external-refs.d.ts +1 -1
- package/dist/core/references/external-refs.js +1 -1
- package/dist/core/references/index.d.ts +4 -4
- package/dist/core/references/index.d.ts.map +1 -1
- package/dist/core/references/index.js +6 -6
- package/dist/core/references/index.js.map +1 -1
- package/dist/core/references/resolver.d.ts +1 -1
- package/dist/core/references/resolver.d.ts.map +1 -1
- package/dist/core/references/resolver.js +69 -44
- 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 +2 -4
- package/dist/core/references/schema-proxy.js.map +1 -1
- package/dist/core/serialization/core.d.ts +1 -1
- package/dist/core/serialization/core.d.ts.map +1 -1
- package/dist/core/serialization/core.js +122 -16
- package/dist/core/serialization/core.js.map +1 -1
- package/dist/core/serialization/schema.js +1 -1
- package/dist/core/serialization/schema.js.map +1 -1
- package/dist/core/serialization/validation.js +1 -1
- package/dist/core/serialization/validation.js.map +1 -1
- package/dist/core/serialization/yaml.js +1 -1
- package/dist/core/serialization/yaml.js.map +1 -1
- package/dist/core/types/common.d.ts.map +1 -1
- package/dist/core/types/deployment.d.ts +116 -3
- package/dist/core/types/deployment.d.ts.map +1 -1
- package/dist/core/types/deployment.js.map +1 -1
- package/dist/core/types/index.d.ts +1 -1
- package/dist/core/types/index.d.ts.map +1 -1
- package/dist/core/types/index.js.map +1 -1
- package/dist/core/types/kubernetes.d.ts.map +1 -1
- package/dist/core/types/serialization.d.ts +14 -3
- 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 +28 -10
- package/dist/core/validation/cel-validator.js.map +1 -1
- package/dist/core/yaml/index.d.ts +1 -1
- package/dist/core/yaml/index.d.ts.map +1 -1
- package/dist/core/yaml/index.js +1 -1
- package/dist/core/yaml/index.js.map +1 -1
- package/dist/core/yaml/path-resolver.d.ts.map +1 -1
- package/dist/core/yaml/path-resolver.js +6 -6
- package/dist/core/yaml/path-resolver.js.map +1 -1
- package/dist/core.d.ts +10 -10
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +14 -14
- package/dist/core.js.map +1 -1
- package/dist/factories/flux/git-repository.d.ts.map +1 -1
- package/dist/factories/flux/git-repository.js.map +1 -1
- package/dist/factories/flux/index.d.ts +1 -1
- package/dist/factories/flux/index.d.ts.map +1 -1
- package/dist/factories/flux/index.js.map +1 -1
- package/dist/factories/flux/kustomize/index.d.ts +1 -1
- package/dist/factories/flux/kustomize/index.d.ts.map +1 -1
- package/dist/factories/flux/kustomize/index.js.map +1 -1
- package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
- package/dist/factories/flux/kustomize/readiness-evaluators.js +9 -9
- package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
- package/dist/factories/flux/kustomize/types.d.ts +1 -1
- package/dist/factories/flux/kustomize/types.d.ts.map +1 -1
- package/dist/factories/helm/helm-release.d.ts +7 -4
- package/dist/factories/helm/helm-release.d.ts.map +1 -1
- package/dist/factories/helm/helm-release.js +7 -4
- package/dist/factories/helm/helm-release.js.map +1 -1
- package/dist/factories/helm/helm-repository.d.ts.map +1 -1
- package/dist/factories/helm/helm-repository.js.map +1 -1
- package/dist/factories/helm/index.d.ts +1 -1
- package/dist/factories/helm/index.d.ts.map +1 -1
- package/dist/factories/helm/index.js +1 -1
- 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 +4 -2
- package/dist/factories/helm/readiness-evaluators.js.map +1 -1
- package/dist/factories/index.d.ts +6 -3
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/factories/index.js +10 -6
- package/dist/factories/index.js.map +1 -1
- package/dist/factories/kro/index.d.ts +3 -3
- package/dist/factories/kro/index.d.ts.map +1 -1
- package/dist/factories/kro/index.js +2 -2
- package/dist/factories/kro/index.js.map +1 -1
- package/dist/factories/kro/kro-crd.d.ts.map +1 -1
- package/dist/factories/kro/kro-crd.js +5 -5
- 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 +21 -21
- 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 +7 -7
- 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.map +1 -1
- package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js +2 -2
- package/dist/factories/kubernetes/certificates/certificate-signing-request.js +2 -2
- package/dist/factories/kubernetes/certificates/certificate-signing-request.js.map +1 -1
- package/dist/factories/kubernetes/config/config-map.js +1 -1
- package/dist/factories/kubernetes/config/config-map.js.map +1 -1
- package/dist/factories/kubernetes/config/secret.js +1 -1
- package/dist/factories/kubernetes/config/secret.js.map +1 -1
- package/dist/factories/kubernetes/core/component-status.js +1 -1
- package/dist/factories/kubernetes/core/component-status.js.map +1 -1
- package/dist/factories/kubernetes/core/node.js +1 -1
- package/dist/factories/kubernetes/core/node.js.map +1 -1
- package/dist/factories/kubernetes/core/pod.js +4 -4
- package/dist/factories/kubernetes/core/pod.js.map +1 -1
- package/dist/factories/kubernetes/extensions/custom-resource-definition.js +2 -2
- package/dist/factories/kubernetes/extensions/custom-resource-definition.js.map +1 -1
- package/dist/factories/kubernetes/index.d.ts +2 -2
- package/dist/factories/kubernetes/index.d.ts.map +1 -1
- package/dist/factories/kubernetes/index.js +8 -8
- package/dist/factories/kubernetes/index.js.map +1 -1
- package/dist/factories/kubernetes/networking/endpoints.d.ts.map +1 -1
- package/dist/factories/kubernetes/networking/endpoints.js +4 -4
- package/dist/factories/kubernetes/networking/endpoints.js.map +1 -1
- package/dist/factories/kubernetes/networking/ingress.js +2 -2
- package/dist/factories/kubernetes/networking/network-policy.js +2 -2
- 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 +8 -7
- package/dist/factories/kubernetes/networking/service.js.map +1 -1
- package/dist/factories/kubernetes/policy/limit-range.js +2 -2
- package/dist/factories/kubernetes/policy/limit-range.js.map +1 -1
- package/dist/factories/kubernetes/policy/pod-disruption-budget.js +5 -5
- package/dist/factories/kubernetes/policy/resource-quota.js +4 -4
- package/dist/factories/kubernetes/rbac/cluster-role-binding.js +2 -2
- package/dist/factories/kubernetes/rbac/cluster-role-binding.js.map +1 -1
- package/dist/factories/kubernetes/rbac/cluster-role.js +2 -2
- package/dist/factories/kubernetes/rbac/cluster-role.js.map +1 -1
- package/dist/factories/kubernetes/rbac/role-binding.js +2 -2
- package/dist/factories/kubernetes/rbac/role-binding.js.map +1 -1
- package/dist/factories/kubernetes/rbac/role.js +2 -2
- package/dist/factories/kubernetes/rbac/role.js.map +1 -1
- package/dist/factories/kubernetes/rbac/service-account.js +2 -2
- package/dist/factories/kubernetes/rbac/service-account.js.map +1 -1
- package/dist/factories/kubernetes/storage/persistent-volume-claim.js +2 -2
- package/dist/factories/kubernetes/storage/persistent-volume.js +4 -4
- package/dist/factories/kubernetes/storage/storage-class.js +2 -2
- package/dist/factories/kubernetes/storage/storage-class.js.map +1 -1
- package/dist/factories/kubernetes/workloads/cron-job.js +5 -5
- package/dist/factories/kubernetes/workloads/daemon-set.js +2 -2
- package/dist/factories/kubernetes/workloads/deployment.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/deployment.js +5 -6
- package/dist/factories/kubernetes/workloads/deployment.js.map +1 -1
- package/dist/factories/kubernetes/workloads/job.js +10 -10
- package/dist/factories/kubernetes/workloads/replica-set.js +2 -2
- package/dist/factories/kubernetes/workloads/replication-controller.js +5 -5
- package/dist/factories/kubernetes/workloads/stateful-set.d.ts.map +1 -1
- package/dist/factories/kubernetes/workloads/stateful-set.js +7 -7
- package/dist/factories/kubernetes/workloads/stateful-set.js.map +1 -1
- package/dist/factories/kubernetes/yaml/index.d.ts +1 -1
- package/dist/factories/kubernetes/yaml/index.d.ts.map +1 -1
- package/dist/factories/kubernetes/yaml/index.js +1 -1
- package/dist/factories/kubernetes/yaml/index.js.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-directory.d.ts +2 -2
- package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-directory.js +106 -101
- package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-file.d.ts +7 -4
- package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
- package/dist/factories/kubernetes/yaml/yaml-file.js +110 -99
- package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
- package/dist/factories/shared.d.ts +49 -0
- package/dist/factories/shared.d.ts.map +1 -1
- package/dist/factories/shared.js +75 -3
- package/dist/factories/shared.js.map +1 -1
- package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts +17 -0
- package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -0
- package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js +46 -0
- package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js.map +1 -0
- package/dist/factories/simple/autoscaling/index.d.ts +8 -0
- package/dist/factories/simple/autoscaling/index.d.ts.map +1 -0
- package/dist/factories/simple/autoscaling/index.js +8 -0
- package/dist/factories/simple/autoscaling/index.js.map +1 -0
- package/dist/factories/simple/config/config-map.d.ts +17 -0
- package/dist/factories/simple/config/config-map.d.ts.map +1 -0
- package/dist/factories/simple/config/config-map.js +25 -0
- package/dist/factories/simple/config/config-map.js.map +1 -0
- package/dist/factories/simple/config/index.d.ts +9 -0
- package/dist/factories/simple/config/index.d.ts.map +1 -0
- package/dist/factories/simple/config/index.js +9 -0
- package/dist/factories/simple/config/index.js.map +1 -0
- package/dist/factories/simple/config/secret.d.ts +17 -0
- package/dist/factories/simple/config/secret.d.ts.map +1 -0
- package/dist/factories/simple/config/secret.js +24 -0
- package/dist/factories/simple/config/secret.js.map +1 -0
- package/dist/factories/simple/helm/index.d.ts +16 -0
- package/dist/factories/simple/helm/index.d.ts.map +1 -0
- package/dist/factories/simple/helm/index.js +21 -0
- package/dist/factories/simple/helm/index.js.map +1 -0
- package/dist/factories/simple/index.d.ts +50 -0
- package/dist/factories/simple/index.d.ts.map +1 -0
- package/dist/factories/simple/index.js +58 -0
- package/dist/factories/simple/index.js.map +1 -0
- package/dist/factories/simple/networking/index.d.ts +10 -0
- package/dist/factories/simple/networking/index.d.ts.map +1 -0
- package/dist/factories/simple/networking/index.js +10 -0
- package/dist/factories/simple/networking/index.js.map +1 -0
- package/dist/factories/simple/networking/ingress.d.ts +17 -0
- package/dist/factories/simple/networking/ingress.d.ts.map +1 -0
- package/dist/factories/simple/networking/ingress.js +30 -0
- package/dist/factories/simple/networking/ingress.js.map +1 -0
- package/dist/factories/simple/networking/network-policy.d.ts +17 -0
- package/dist/factories/simple/networking/network-policy.d.ts.map +1 -0
- package/dist/factories/simple/networking/network-policy.js +30 -0
- package/dist/factories/simple/networking/network-policy.js.map +1 -0
- package/dist/factories/simple/networking/service.d.ts +17 -0
- package/dist/factories/simple/networking/service.d.ts.map +1 -0
- package/dist/factories/simple/networking/service.js +27 -0
- package/dist/factories/simple/networking/service.js.map +1 -0
- package/dist/factories/simple/storage/index.d.ts +9 -0
- package/dist/factories/simple/storage/index.d.ts.map +1 -0
- package/dist/factories/simple/storage/index.js +9 -0
- package/dist/factories/simple/storage/index.js.map +1 -0
- package/dist/factories/simple/storage/persistent-volume-claim.d.ts +17 -0
- package/dist/factories/simple/storage/persistent-volume-claim.d.ts.map +1 -0
- package/dist/factories/simple/storage/persistent-volume-claim.js +32 -0
- package/dist/factories/simple/storage/persistent-volume-claim.js.map +1 -0
- package/dist/factories/simple/storage/persistent-volume.d.ts +17 -0
- package/dist/factories/simple/storage/persistent-volume.d.ts.map +1 -0
- package/dist/factories/simple/storage/persistent-volume.js +44 -0
- package/dist/factories/simple/storage/persistent-volume.js.map +1 -0
- package/dist/factories/simple/types.d.ts +165 -0
- package/dist/factories/simple/types.d.ts.map +1 -0
- package/dist/factories/simple/types.js +9 -0
- package/dist/factories/simple/types.js.map +1 -0
- package/dist/factories/simple/workloads/cron-job.d.ts +17 -0
- package/dist/factories/simple/workloads/cron-job.d.ts.map +1 -0
- package/dist/factories/simple/workloads/cron-job.js +43 -0
- package/dist/factories/simple/workloads/cron-job.js.map +1 -0
- package/dist/factories/simple/workloads/daemon-set.d.ts +17 -0
- package/dist/factories/simple/workloads/daemon-set.d.ts.map +1 -0
- package/dist/factories/simple/workloads/daemon-set.js +46 -0
- package/dist/factories/simple/workloads/daemon-set.js.map +1 -0
- package/dist/factories/simple/workloads/deployment.d.ts +17 -0
- package/dist/factories/simple/workloads/deployment.d.ts.map +1 -0
- package/dist/factories/simple/workloads/deployment.js +47 -0
- package/dist/factories/simple/workloads/deployment.js.map +1 -0
- package/dist/factories/simple/workloads/index.d.ts +12 -0
- package/dist/factories/simple/workloads/index.d.ts.map +1 -0
- package/dist/factories/simple/workloads/index.js +12 -0
- package/dist/factories/simple/workloads/index.js.map +1 -0
- package/dist/factories/simple/workloads/job.d.ts +17 -0
- package/dist/factories/simple/workloads/job.d.ts.map +1 -0
- package/dist/factories/simple/workloads/job.js +40 -0
- package/dist/factories/simple/workloads/job.js.map +1 -0
- package/dist/factories/simple/workloads/stateful-set.d.ts +17 -0
- package/dist/factories/simple/workloads/stateful-set.d.ts.map +1 -0
- package/dist/factories/simple/workloads/stateful-set.js +47 -0
- package/dist/factories/simple/workloads/stateful-set.js.map +1 -0
- package/dist/factories/simple/yaml/index.d.ts +13 -0
- package/dist/factories/simple/yaml/index.d.ts.map +1 -0
- package/dist/factories/simple/yaml/index.js +23 -0
- package/dist/factories/simple/yaml/index.js.map +1 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +25 -22
- package/dist/index.js.map +1 -1
- package/dist/utils/helpers.d.ts +1 -1
- package/dist/utils/helpers.d.ts.map +1 -1
- package/dist/utils/helpers.js +53 -7
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/index.d.ts +2 -2
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +2 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/type-guards.d.ts +1 -1
- package/dist/utils/type-guards.d.ts.map +1 -1
- package/dist/utils/type-guards.js +3 -9
- package/dist/utils/type-guards.js.map +1 -1
- package/package.json +12 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-file.d.ts","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"yaml-file.d.ts","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAElB,MAAM,mCAAmC,CAAC;AAqB3C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,kBAAkB,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM,CAAC;CAC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAuHrF;AAED;;;;;;;GAOG;AACH;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,GACjB,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAWtC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as yaml from 'js-yaml';
|
|
2
|
-
import { PathResolver } from '../../../core/yaml/path-resolver.js';
|
|
3
2
|
import { isKubernetesRef } from '../../../core/dependencies/type-guards.js';
|
|
3
|
+
import { PathResolver } from '../../../core/yaml/path-resolver.js';
|
|
4
|
+
import { registerDeploymentClosure } from '../../shared.js';
|
|
4
5
|
/**
|
|
5
6
|
* Parse YAML content into Kubernetes manifests
|
|
6
7
|
*/
|
|
@@ -39,7 +40,7 @@ function parseYamlManifests(yamlContent) {
|
|
|
39
40
|
* }),
|
|
40
41
|
*
|
|
41
42
|
* // This is a normal Enhanced<> resource
|
|
42
|
-
* webapp:
|
|
43
|
+
* webapp: simple.Deployment({
|
|
43
44
|
* name: 'nginx',
|
|
44
45
|
* image: 'nginx',
|
|
45
46
|
* replicas: schema.spec.replicas
|
|
@@ -50,132 +51,142 @@ function parseYamlManifests(yamlContent) {
|
|
|
50
51
|
* ```
|
|
51
52
|
*/
|
|
52
53
|
export function yamlFile(config) {
|
|
53
|
-
//
|
|
54
|
-
return
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
//
|
|
72
|
-
|
|
73
|
-
|
|
54
|
+
// Use generic deployment closure registration for composition context support
|
|
55
|
+
return registerDeploymentClosure(() => {
|
|
56
|
+
// Create the deployment closure
|
|
57
|
+
const closure = async (deploymentContext) => {
|
|
58
|
+
const pathResolver = new PathResolver();
|
|
59
|
+
// Resolve any references in the config (e.g., namespace could reference another resource)
|
|
60
|
+
const resolvedNamespace = config.namespace && isKubernetesRef(config.namespace)
|
|
61
|
+
? await deploymentContext.resolveReference(config.namespace)
|
|
62
|
+
: config.namespace;
|
|
63
|
+
const resolvedContent = await pathResolver.resolveContent(config.path, config.name);
|
|
64
|
+
const manifests = parseYamlManifests(resolvedContent.content);
|
|
65
|
+
const results = [];
|
|
66
|
+
const strategy = config.deploymentStrategy || 'replace';
|
|
67
|
+
for (const manifest of manifests) {
|
|
68
|
+
if (resolvedNamespace && !manifest.metadata?.namespace) {
|
|
69
|
+
manifest.metadata = { ...manifest.metadata, namespace: resolvedNamespace };
|
|
70
|
+
}
|
|
71
|
+
try {
|
|
72
|
+
// Apply via alchemy if scope is configured, otherwise direct to Kubernetes
|
|
73
|
+
if (deploymentContext.alchemyScope) {
|
|
74
|
+
// For now, use the Kubernetes API even when alchemy scope is available
|
|
75
|
+
// TODO: Implement proper alchemy integration for YAML resources
|
|
76
|
+
if (deploymentContext.kubernetesApi) {
|
|
77
|
+
await deploymentContext.kubernetesApi.create(manifest);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
throw new Error('No Kubernetes API available for YAML deployment');
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
else if (deploymentContext.kubernetesApi) {
|
|
74
84
|
await deploymentContext.kubernetesApi.create(manifest);
|
|
75
85
|
}
|
|
76
86
|
else {
|
|
77
|
-
throw new Error('No
|
|
87
|
+
throw new Error('No deployment method available: neither alchemyScope nor kubernetesApi provided');
|
|
78
88
|
}
|
|
89
|
+
results.push({
|
|
90
|
+
kind: manifest.kind || 'Unknown',
|
|
91
|
+
name: manifest.metadata?.name || 'unknown',
|
|
92
|
+
namespace: manifest.metadata?.namespace || undefined,
|
|
93
|
+
apiVersion: manifest.apiVersion || 'v1',
|
|
94
|
+
});
|
|
79
95
|
}
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
results.push({
|
|
87
|
-
kind: manifest.kind || 'Unknown',
|
|
88
|
-
name: manifest.metadata?.name || 'unknown',
|
|
89
|
-
namespace: manifest.metadata?.namespace || undefined,
|
|
90
|
-
apiVersion: manifest.apiVersion || 'v1'
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
catch (error) {
|
|
94
|
-
// Handle conflicts based on deployment strategy
|
|
95
|
-
if (error?.response?.statusCode === 409 || error?.statusCode === 409) {
|
|
96
|
-
const resourceName = `${manifest.kind}/${manifest.metadata?.name}`;
|
|
97
|
-
if (strategy === 'skipIfExists') {
|
|
98
|
-
console.log(`⚠️ Skipping existing resource: ${resourceName}`);
|
|
99
|
-
results.push({
|
|
100
|
-
kind: manifest.kind || 'Unknown',
|
|
101
|
-
name: manifest.metadata?.name || 'unknown',
|
|
102
|
-
namespace: manifest.metadata?.namespace || undefined,
|
|
103
|
-
apiVersion: manifest.apiVersion || 'v1'
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
else if (strategy === 'replace') {
|
|
107
|
-
console.log(`🔄 Replacing existing resource: ${resourceName}`);
|
|
108
|
-
// Try to update/replace the resource
|
|
109
|
-
try {
|
|
110
|
-
if (deploymentContext.kubernetesApi) {
|
|
111
|
-
// Check if resource exists first
|
|
112
|
-
let existing;
|
|
113
|
-
try {
|
|
114
|
-
const readResult = await deploymentContext.kubernetesApi.read({
|
|
115
|
-
apiVersion: manifest.apiVersion,
|
|
116
|
-
kind: manifest.kind,
|
|
117
|
-
metadata: {
|
|
118
|
-
name: manifest.metadata?.name || '',
|
|
119
|
-
namespace: manifest.metadata?.namespace || 'default',
|
|
120
|
-
},
|
|
121
|
-
});
|
|
122
|
-
existing = readResult.body;
|
|
123
|
-
}
|
|
124
|
-
catch (error) {
|
|
125
|
-
// If it's a 404, the resource doesn't exist
|
|
126
|
-
if (error.statusCode !== 404) {
|
|
127
|
-
throw error;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
if (existing) {
|
|
131
|
-
// Resource exists, use patch for safer updates
|
|
132
|
-
await deploymentContext.kubernetesApi.patch(manifest);
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
// Resource does not exist, create it
|
|
136
|
-
await deploymentContext.kubernetesApi.create(manifest);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
96
|
+
catch (error) {
|
|
97
|
+
// Handle conflicts based on deployment strategy
|
|
98
|
+
if (error?.response?.statusCode === 409 || error?.statusCode === 409) {
|
|
99
|
+
const resourceName = `${manifest.kind}/${manifest.metadata?.name}`;
|
|
100
|
+
if (strategy === 'skipIfExists') {
|
|
101
|
+
console.log(`⚠️ Skipping existing resource: ${resourceName}`);
|
|
139
102
|
results.push({
|
|
140
103
|
kind: manifest.kind || 'Unknown',
|
|
141
104
|
name: manifest.metadata?.name || 'unknown',
|
|
142
105
|
namespace: manifest.metadata?.namespace || undefined,
|
|
143
|
-
apiVersion: manifest.apiVersion || 'v1'
|
|
106
|
+
apiVersion: manifest.apiVersion || 'v1',
|
|
144
107
|
});
|
|
145
108
|
}
|
|
146
|
-
|
|
147
|
-
console.
|
|
148
|
-
|
|
109
|
+
else if (strategy === 'replace') {
|
|
110
|
+
console.log(`🔄 Replacing existing resource: ${resourceName}`);
|
|
111
|
+
// Try to update/replace the resource
|
|
112
|
+
try {
|
|
113
|
+
if (deploymentContext.kubernetesApi) {
|
|
114
|
+
// Check if resource exists first
|
|
115
|
+
let existing;
|
|
116
|
+
try {
|
|
117
|
+
const readResult = await deploymentContext.kubernetesApi.read({
|
|
118
|
+
apiVersion: manifest.apiVersion,
|
|
119
|
+
kind: manifest.kind,
|
|
120
|
+
metadata: {
|
|
121
|
+
name: manifest.metadata?.name || '',
|
|
122
|
+
namespace: manifest.metadata?.namespace || 'default',
|
|
123
|
+
},
|
|
124
|
+
});
|
|
125
|
+
existing = readResult.body;
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
// If it's a 404, the resource doesn't exist
|
|
129
|
+
if (error.statusCode !== 404) {
|
|
130
|
+
throw error;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
if (existing) {
|
|
134
|
+
// Resource exists, use patch for safer updates
|
|
135
|
+
await deploymentContext.kubernetesApi.patch(manifest);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
// Resource does not exist, create it
|
|
139
|
+
await deploymentContext.kubernetesApi.create(manifest);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
results.push({
|
|
143
|
+
kind: manifest.kind || 'Unknown',
|
|
144
|
+
name: manifest.metadata?.name || 'unknown',
|
|
145
|
+
namespace: manifest.metadata?.namespace || undefined,
|
|
146
|
+
apiVersion: manifest.apiVersion || 'v1',
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
catch (replaceError) {
|
|
150
|
+
console.error(`❌ Failed to replace resource ${resourceName}:`, replaceError);
|
|
151
|
+
throw replaceError;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
// strategy === 'fail' (default behavior)
|
|
156
|
+
throw error;
|
|
149
157
|
}
|
|
150
158
|
}
|
|
151
159
|
else {
|
|
152
|
-
//
|
|
160
|
+
// Non-conflict errors should always be thrown
|
|
153
161
|
throw error;
|
|
154
162
|
}
|
|
155
163
|
}
|
|
156
|
-
else {
|
|
157
|
-
// Non-conflict errors should always be thrown
|
|
158
|
-
throw error;
|
|
159
|
-
}
|
|
160
164
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
165
|
+
return results;
|
|
166
|
+
};
|
|
167
|
+
return closure;
|
|
168
|
+
}, config.name);
|
|
164
169
|
}
|
|
165
170
|
/**
|
|
166
171
|
* Simplified YAML file factory for quick usage
|
|
167
172
|
* @example
|
|
168
173
|
* ```typescript
|
|
169
|
-
*
|
|
170
|
-
*
|
|
174
|
+
* simple.YamlFile('./manifests/configmap.yaml')
|
|
175
|
+
* simple.YamlFile('git:github.com/fluxcd/flux2/manifests/install/flux-system.yaml@main', 'flux-system')
|
|
171
176
|
* ```
|
|
172
177
|
*/
|
|
178
|
+
/**
|
|
179
|
+
* @deprecated Use simple.YamlFile() instead - import { simple } from 'typekro'; simple.YamlFile(...)
|
|
180
|
+
*/
|
|
173
181
|
export function simpleYamlFile(path, namespace) {
|
|
174
|
-
const name = path
|
|
182
|
+
const name = path
|
|
183
|
+
.split('/')
|
|
184
|
+
.pop()
|
|
185
|
+
?.replace(/\.(yaml|yml)$/, '') || 'yaml-file';
|
|
175
186
|
return yamlFile({
|
|
176
187
|
name,
|
|
177
188
|
path,
|
|
178
|
-
...(namespace && { namespace })
|
|
189
|
+
...(namespace && { namespace }),
|
|
179
190
|
});
|
|
180
191
|
}
|
|
181
192
|
//# sourceMappingURL=yaml-file.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-file.js","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"yaml-file.js","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,55 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { V1PodSpec } from '@kubernetes/client-node';
|
|
8
8
|
import type { Enhanced, KubernetesResource } from '../core/types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Context for imperative composition pattern
|
|
11
|
+
* Tracks resources and deployment closures created during composition function execution
|
|
12
|
+
*/
|
|
13
|
+
export interface CompositionContext {
|
|
14
|
+
/** Map of resource ID to Enhanced resource */
|
|
15
|
+
resources: Record<string, Enhanced<any, any>>;
|
|
16
|
+
/** Map of closure ID to deployment closure */
|
|
17
|
+
closures: Record<string, any>;
|
|
18
|
+
/** Counter for generating unique resource IDs */
|
|
19
|
+
resourceCounter: number;
|
|
20
|
+
/** Counter for generating unique closure IDs */
|
|
21
|
+
closureCounter: number;
|
|
22
|
+
/** Add a resource to the context */
|
|
23
|
+
addResource(id: string, resource: Enhanced<any, any>): void;
|
|
24
|
+
/** Add a deployment closure to the context */
|
|
25
|
+
addClosure(id: string, closure: any): void;
|
|
26
|
+
/** Generate a unique resource ID */
|
|
27
|
+
generateResourceId(kind: string, name?: string): string;
|
|
28
|
+
/** Generate a unique closure ID */
|
|
29
|
+
generateClosureId(name?: string): string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Get the current composition context if one is active
|
|
33
|
+
* @returns The active composition context or undefined if not in composition
|
|
34
|
+
*/
|
|
35
|
+
export declare function getCurrentCompositionContext(): CompositionContext | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Run a function with a composition context
|
|
38
|
+
* @param context The composition context to use
|
|
39
|
+
* @param fn The function to run with the context
|
|
40
|
+
* @returns The result of the function
|
|
41
|
+
*/
|
|
42
|
+
export declare function runWithCompositionContext<T>(context: CompositionContext, fn: () => T): T;
|
|
43
|
+
/**
|
|
44
|
+
* Generic deployment closure registration wrapper
|
|
45
|
+
* Automatically registers any deployment closure with the active composition context
|
|
46
|
+
*
|
|
47
|
+
* @param closureFactory Function that creates the deployment closure
|
|
48
|
+
* @param name Optional name for the closure (used for ID generation)
|
|
49
|
+
* @returns The deployment closure, registered with context if active
|
|
50
|
+
*/
|
|
51
|
+
export declare function registerDeploymentClosure<T>(closureFactory: () => T, name?: string): T;
|
|
52
|
+
/**
|
|
53
|
+
* Create a new composition context with default implementations
|
|
54
|
+
* @param name Optional name for the composition (used in ID generation)
|
|
55
|
+
* @returns A new composition context
|
|
56
|
+
*/
|
|
57
|
+
export declare function createCompositionContext(name?: string): CompositionContext;
|
|
9
58
|
export declare function createResource<TSpec extends object, TStatus extends object>(resource: KubernetesResource<TSpec, TStatus>): Enhanced<TSpec, TStatus>;
|
|
10
59
|
export declare function processPodSpec(podSpec?: V1PodSpec): V1PodSpec | undefined;
|
|
11
60
|
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EACV,QAAQ,EACR,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AAe1B;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9C,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,iDAAiD;IACjD,eAAe,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC5D,8CAA8C;IAC9C,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3C,oCAAoC;IACpC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxD,mCAAmC;IACnC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1C;AAQD;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,kBAAkB,GAAG,SAAS,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAExF;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAYtF;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAoB1E;AAoTD,wBAAgB,cAAc,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACzE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,GAC3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CA8D1B;AAED,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAoBzE"}
|
package/dist/factories/shared.js
CHANGED
|
@@ -4,16 +4,83 @@
|
|
|
4
4
|
* This module contains common utilities and helper functions that are used
|
|
5
5
|
* across all factory modules for creating Kubernetes resources.
|
|
6
6
|
*/
|
|
7
|
-
import {
|
|
7
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
8
8
|
import { KUBERNETES_REF_BRAND } from '../core/constants/brands.js';
|
|
9
|
-
import {
|
|
10
|
-
import { generateDeterministicResourceId, isKubernetesRef } from '../utils/index.js';
|
|
9
|
+
import { getComponentLogger } from '../core/logging/index.js';
|
|
11
10
|
import { ReadinessEvaluatorRegistry } from '../core/readiness/index.js';
|
|
12
11
|
import { validateResourceId } from '../core/validation/cel-validator.js';
|
|
12
|
+
import { generateDeterministicResourceId, isKubernetesRef } from '../utils/index';
|
|
13
|
+
import { isCelExpression } from '../utils/type-guards.js';
|
|
13
14
|
// Check for the debug environment variable
|
|
14
15
|
const IS_DEBUG_MODE = process.env.TYPEKRO_DEBUG === 'true';
|
|
15
16
|
// Logger for debug mode
|
|
16
17
|
const debugLogger = getComponentLogger('factory-proxy');
|
|
18
|
+
/**
|
|
19
|
+
* AsyncLocalStorage for composition context
|
|
20
|
+
* Enables context-aware resource registration across async boundaries
|
|
21
|
+
*/
|
|
22
|
+
const COMPOSITION_CONTEXT = new AsyncLocalStorage();
|
|
23
|
+
/**
|
|
24
|
+
* Get the current composition context if one is active
|
|
25
|
+
* @returns The active composition context or undefined if not in composition
|
|
26
|
+
*/
|
|
27
|
+
export function getCurrentCompositionContext() {
|
|
28
|
+
return COMPOSITION_CONTEXT.getStore();
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Run a function with a composition context
|
|
32
|
+
* @param context The composition context to use
|
|
33
|
+
* @param fn The function to run with the context
|
|
34
|
+
* @returns The result of the function
|
|
35
|
+
*/
|
|
36
|
+
export function runWithCompositionContext(context, fn) {
|
|
37
|
+
return COMPOSITION_CONTEXT.run(context, fn);
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Generic deployment closure registration wrapper
|
|
41
|
+
* Automatically registers any deployment closure with the active composition context
|
|
42
|
+
*
|
|
43
|
+
* @param closureFactory Function that creates the deployment closure
|
|
44
|
+
* @param name Optional name for the closure (used for ID generation)
|
|
45
|
+
* @returns The deployment closure, registered with context if active
|
|
46
|
+
*/
|
|
47
|
+
export function registerDeploymentClosure(closureFactory, name) {
|
|
48
|
+
const context = getCurrentCompositionContext();
|
|
49
|
+
if (context) {
|
|
50
|
+
const closure = closureFactory();
|
|
51
|
+
const closureId = context.generateClosureId(name);
|
|
52
|
+
context.addClosure(closureId, closure);
|
|
53
|
+
return closure;
|
|
54
|
+
}
|
|
55
|
+
// Outside composition context - return closure as-is
|
|
56
|
+
return closureFactory();
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Create a new composition context with default implementations
|
|
60
|
+
* @param name Optional name for the composition (used in ID generation)
|
|
61
|
+
* @returns A new composition context
|
|
62
|
+
*/
|
|
63
|
+
export function createCompositionContext(name) {
|
|
64
|
+
return {
|
|
65
|
+
resources: {},
|
|
66
|
+
closures: {},
|
|
67
|
+
resourceCounter: 0,
|
|
68
|
+
closureCounter: 0,
|
|
69
|
+
addResource(id, resource) {
|
|
70
|
+
this.resources[id] = resource;
|
|
71
|
+
},
|
|
72
|
+
addClosure(id, closure) {
|
|
73
|
+
this.closures[id] = closure;
|
|
74
|
+
},
|
|
75
|
+
generateResourceId(kind, resourceName) {
|
|
76
|
+
return resourceName || `${kind.toLowerCase()}-${++this.resourceCounter}`;
|
|
77
|
+
},
|
|
78
|
+
generateClosureId(closureName) {
|
|
79
|
+
const prefix = name ? `${name}-` : '';
|
|
80
|
+
return closureName ? `${prefix}${closureName}` : `${prefix}closure-${++this.closureCounter}`;
|
|
81
|
+
},
|
|
82
|
+
};
|
|
83
|
+
}
|
|
17
84
|
// =============================================================================
|
|
18
85
|
// PROXY ENGINE & BASE FACTORY
|
|
19
86
|
// =============================================================================
|
|
@@ -310,6 +377,11 @@ export function createResource(resource) {
|
|
|
310
377
|
resourceId = generateDeterministicResourceId(resource.kind, name, namespace);
|
|
311
378
|
}
|
|
312
379
|
const enhanced = createGenericProxyResource(resourceId, resource);
|
|
380
|
+
// Auto-register with composition context if active (but not for external references)
|
|
381
|
+
const context = getCurrentCompositionContext();
|
|
382
|
+
if (context && !resource.__externalRef) {
|
|
383
|
+
context.addResource(resourceId, enhanced);
|
|
384
|
+
}
|
|
313
385
|
// Always provide a readiness evaluator for factory-created resources
|
|
314
386
|
const defaultEvaluator = createDefaultReadinessEvaluator(resource.kind);
|
|
315
387
|
Object.defineProperty(enhanced, 'readinessEvaluator', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple HPA Factory
|
|
3
|
+
*
|
|
4
|
+
* This module provides a simplified factory function for creating
|
|
5
|
+
* Kubernetes HorizontalPodAutoscaler resources with sensible defaults.
|
|
6
|
+
*/
|
|
7
|
+
import type { Enhanced } from '../../../core/types.js';
|
|
8
|
+
import type { V2HpaSpec, V2HpaStatus } from '../../kubernetes/types.js';
|
|
9
|
+
import type { HpaConfig } from '../types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Creates a simple HPA with sensible defaults
|
|
12
|
+
*
|
|
13
|
+
* @param config - Configuration for the horizontal pod autoscaler
|
|
14
|
+
* @returns Enhanced HorizontalPodAutoscaler resource
|
|
15
|
+
*/
|
|
16
|
+
export declare function Hpa(config: HpaConfig): Enhanced<V2HpaSpec, V2HpaStatus>;
|
|
17
|
+
//# sourceMappingURL=horizontal-pod-autoscaler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"horizontal-pod-autoscaler.d.ts","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/horizontal-pod-autoscaler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,CAiCvE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple HPA Factory
|
|
3
|
+
*
|
|
4
|
+
* This module provides a simplified factory function for creating
|
|
5
|
+
* Kubernetes HorizontalPodAutoscaler resources with sensible defaults.
|
|
6
|
+
*/
|
|
7
|
+
import { horizontalPodAutoscaler } from '../../kubernetes/autoscaling/horizontal-pod-autoscaler.js';
|
|
8
|
+
/**
|
|
9
|
+
* Creates a simple HPA with sensible defaults
|
|
10
|
+
*
|
|
11
|
+
* @param config - Configuration for the horizontal pod autoscaler
|
|
12
|
+
* @returns Enhanced HorizontalPodAutoscaler resource
|
|
13
|
+
*/
|
|
14
|
+
export function Hpa(config) {
|
|
15
|
+
const metrics = [];
|
|
16
|
+
if (config.cpuUtilization) {
|
|
17
|
+
metrics.push({
|
|
18
|
+
type: 'Resource',
|
|
19
|
+
resource: {
|
|
20
|
+
name: 'cpu',
|
|
21
|
+
target: {
|
|
22
|
+
type: 'Utilization',
|
|
23
|
+
averageUtilization: config.cpuUtilization,
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
return horizontalPodAutoscaler({
|
|
29
|
+
metadata: {
|
|
30
|
+
name: config.name,
|
|
31
|
+
...(config.namespace && { namespace: config.namespace }),
|
|
32
|
+
labels: { app: config.name },
|
|
33
|
+
},
|
|
34
|
+
spec: {
|
|
35
|
+
scaleTargetRef: {
|
|
36
|
+
apiVersion: 'apps/v1',
|
|
37
|
+
kind: config.target.kind,
|
|
38
|
+
name: config.target.name,
|
|
39
|
+
},
|
|
40
|
+
minReplicas: config.minReplicas,
|
|
41
|
+
maxReplicas: config.maxReplicas,
|
|
42
|
+
...(metrics.length > 0 && { metrics }),
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=horizontal-pod-autoscaler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"horizontal-pod-autoscaler.js","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/horizontal-pod-autoscaler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAIpG;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,MAAiB;IACnC,MAAM,OAAO,GAAG,EAAE,CAAC;IAEnB,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE;oBACN,IAAI,EAAE,aAAa;oBACnB,kBAAkB,EAAE,MAAM,CAAC,cAAc;iBAC1C;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,uBAAuB,CAAC;QAC7B,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACxD,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE;SAC7B;QACD,IAAI,EAAE;YACJ,cAAc,EAAE;gBACd,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;gBACxB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;aACzB;YACD,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;SACvC;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple Autoscaling Factories
|
|
3
|
+
*
|
|
4
|
+
* This module provides simplified factory functions for creating common
|
|
5
|
+
* Kubernetes autoscaling resources with sensible defaults.
|
|
6
|
+
*/
|
|
7
|
+
export { Hpa } from './horizontal-pod-autoscaler.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple Autoscaling Factories
|
|
3
|
+
*
|
|
4
|
+
* This module provides simplified factory functions for creating common
|
|
5
|
+
* Kubernetes autoscaling resources with sensible defaults.
|
|
6
|
+
*/
|
|
7
|
+
export { Hpa } from './horizontal-pod-autoscaler.js';
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Simple ConfigMap Factory
|
|
3
|
+
*
|
|
4
|
+
* This module provides a simplified factory function for creating
|
|
5
|
+
* Kubernetes ConfigMap resources with sensible defaults.
|
|
6
|
+
*/
|
|
7
|
+
import type { Enhanced } from '../../../core/types.js';
|
|
8
|
+
import type { V1ConfigMapData } from '../../kubernetes/types.js';
|
|
9
|
+
import type { ConfigMapConfig } from '../types.js';
|
|
10
|
+
/**
|
|
11
|
+
* Creates a simple ConfigMap with sensible defaults
|
|
12
|
+
*
|
|
13
|
+
* @param config - Configuration for the config map
|
|
14
|
+
* @returns Enhanced ConfigMap resource
|
|
15
|
+
*/
|
|
16
|
+
export declare function ConfigMap(config: ConfigMapConfig): Enhanced<V1ConfigMapData, unknown>;
|
|
17
|
+
//# sourceMappingURL=config-map.d.ts.map
|