k8ts
Version:
Powerful framework for building Kubernetes manifests in TypeScript.
31 lines • 1.5 kB
TypeScript
import { Origin, Refable, WritableDeep } from "@k8ts/instruments";
import { Meta, MutableMeta } from "@k8ts/metadata";
import { CDK } from "../../_imports";
import { api } from "../../kinds";
import { ManifestResource } from "../../node/manifest-resource";
import { PodTemplate } from "../pod/pod-template";
export type Deployment<Ports extends string> = Deployment.Deployment<Ports>;
export declare namespace Deployment {
type DeploymentStrategy = {
type: "Recreate";
} | ({
type: "RollingUpdate";
} & CDK.RollingUpdateDeployment);
type NormalProps = WritableDeep<Omit<CDK.DeploymentSpec, "selector" | "template" | "strategy">>;
type Props<Ports extends string> = NormalProps & {
$template: PodTemplate.Props<Ports>;
$strategy?: DeploymentStrategy;
};
type AbsDeployment<Ports extends string> = Refable<api.apps_.v1_.Deployment> & {
__PORTS__: Ports;
};
class Deployment<Ports extends string = string> extends ManifestResource<Props<Ports>> {
__PORTS__: Ports;
kind: import("@k8ts/instruments").Kind.Kind<"Deployment", import("@k8ts/instruments").Kind.Version<"v1", import("@k8ts/instruments").Kind.Group<"apps">>>;
template: PodTemplate<Ports>;
private get _strategy();
constructor(origin: Origin, meta: Meta | MutableMeta, props: Props<Ports>);
get ports(): import("doddle").Doddle<import("@k8ts/instruments").PortSet<Ports>>;
}
}
//# sourceMappingURL=deployment.d.ts.map