@soft-stech/smi
Version:
Service Mesh Interface (SMI) models
61 lines (60 loc) • 3.2 kB
TypeScript
import { z } from "zod";
/**
* TrafficTarget associates a set of traffic definitions (rules) with a service identity which is allocated to a group of pods. Access is controlled via referenced TrafficSpecs and by a list of source service identities. \* If a pod which holds the referenced service identity makes a call to the destination on one of the defined routes then access will be allowed \* Any pod which attempts to connect and is not in the defined list of sources will be denied \* Any pod which is in the defined list, but attempts to connect on a route which is not in the list of the TrafficSpecs will be denied
*/
export declare const ITrafficTargetSchema: z.ZodObject<{
apiVersion: z.ZodLiteral<"access.smi-spec.io/v1alpha2">;
kind: z.ZodLiteral<"TrafficTarget">;
metadata: z.ZodOptional<z.ZodObject<{
annotations: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
creationTimestamp: z.ZodOptional<z.ZodNullable<z.ZodString>>;
deletionGracePeriodSeconds: z.ZodOptional<z.ZodNumber>;
deletionTimestamp: z.ZodOptional<z.ZodNullable<z.ZodString>>;
finalizers: z.ZodOptional<z.ZodArray<z.ZodString>>;
generateName: z.ZodOptional<z.ZodString>;
generation: z.ZodOptional<z.ZodNumber>;
labels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
managedFields: z.ZodOptional<z.ZodArray<z.ZodObject<{
apiVersion: z.ZodOptional<z.ZodString>;
fieldsType: z.ZodOptional<z.ZodString>;
fieldsV1: z.ZodOptional<z.ZodObject<{}, z.core.$strip>>;
manager: z.ZodOptional<z.ZodString>;
operation: z.ZodOptional<z.ZodString>;
subresource: z.ZodOptional<z.ZodString>;
time: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, z.core.$strip>>>;
name: z.ZodOptional<z.ZodString>;
namespace: z.ZodOptional<z.ZodString>;
ownerReferences: z.ZodOptional<z.ZodArray<z.ZodObject<{
apiVersion: z.ZodString;
blockOwnerDeletion: z.ZodOptional<z.ZodBoolean>;
controller: z.ZodOptional<z.ZodBoolean>;
kind: z.ZodString;
name: z.ZodString;
uid: z.ZodString;
}, z.core.$strip>>>;
resourceVersion: z.ZodOptional<z.ZodString>;
selfLink: z.ZodOptional<z.ZodString>;
uid: z.ZodOptional<z.ZodString>;
}, z.core.$strip>>;
spec: z.ZodObject<{
destination: z.ZodObject<{
kind: z.ZodString;
name: z.ZodString;
namespace: z.ZodOptional<z.ZodString>;
port: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
rules: z.ZodOptional<z.ZodArray<z.ZodObject<{
kind: z.ZodString;
matches: z.ZodOptional<z.ZodArray<z.ZodString>>;
name: z.ZodString;
}, z.core.$strip>>>;
sources: z.ZodOptional<z.ZodArray<z.ZodObject<{
kind: z.ZodString;
name: z.ZodString;
namespace: z.ZodOptional<z.ZodString>;
port: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>>>;
}, z.core.$strip>;
status: z.ZodOptional<z.ZodObject<{}, z.core.$strip>>;
}, z.core.$strip>;