cdktf-crd
Version:
65 lines (64 loc) • 3.2 kB
TypeScript
import { Manifest, type ManifestConfig } from "@cdktf/provider-kubernetes/lib/manifest";
import { Construct } from "constructs";
export declare class KubernetesServiceFunctionChainV1Manifest extends Manifest {
constructor(scope: Construct, id: string, config: KubernetesServiceFunctionChainV1ManifestConfig);
}
export interface KubernetesServiceFunctionChainV1ManifestConfig extends ManifestConfig {
manifest: {
apiVersion?: "networking.gke.io/v1";
kind?: "ServiceFunctionChain";
metadata: {
annotations?: {
[key: string]: string;
};
labels?: {
[key: string]: string;
};
name: string;
namespace?: string;
};
/** @description ServiceFunctionChainSpec defines the desired state of ServiceFunctionChain */
spec: {
/** @description internalTrafficPolicy describes how traffic is forwarded to service function pods.
* The only currently supported value is "Cluster", in which case traffic is forwarded to all service function pods evenly. */
internalTrafficPolicy?: string;
/** @description List of service functions that selected traffic must be steered through. */
serviceFunctions: {
/** @description Name of the service function. It must be a valid RFC 1035 label. */
name: string;
/** @description Namespace containing the service function pods. It must be a valid RFC 1123 label. */
namespace: string;
/** @description Route service function traffic to pods matching this selector. */
podSelector: {
/** @description matchLabels is a map of {key,value} pairs. */
matchLabels: {
[key: string]: string;
};
};
}[];
/** @description sessionAffinity specifies the session affinity behavior for all service functions in the ServiceFunctionChain.
* Nil pointer represents disabled session affinity. */
sessionAffinity?: {
/** @description Session affinity based on 1-tuple hash created from the source IP address. */
clientIPNoDestination?: {
/**
* Format: int32
* @description timeoutSeconds specifies the seconds of session sticky time.
* The value must be >0 && <=86400(for 1 day).
* Default value is 10800(for 3 hours).
*/
timeoutSeconds?: number;
};
};
};
/** @description ServiceFunctionChainStatus defines the observed state of ServiceFunctionChain */
status?: {
/**
* Format: int32
* @description servicePathId is a unique identifier that's automatically assigned.
* It's used as a tiebreaker in determining precedence between conflicting traffic selectors.
*/
servicePathId?: number;
};
};
}