@soft-stech/fleet
Version:
104 lines (103 loc) • 4.64 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.IBundleNamespaceMappingSchema = void 0;
// Generated by ts-to-zod
const zod_1 = require("zod");
const ObjectMeta_schema_1 = require("@soft-stech/apimachinery/apis/meta/v1/ObjectMeta.schema");
/**
* BundleNamespaceMapping maps bundles to clusters in other namespaces.
*/
exports.IBundleNamespaceMappingSchema = zod_1.z.object({
/**
* APIVersion defines the versioned schema of this representation of an object.
* Servers should convert recognized schemas to the latest internal value, and
* may reject unrecognized values.
* More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
*/
apiVersion: zod_1.z.literal("fleet.cattle.io/v1alpha1"),
/**
* A label selector is a label query over a set of resources. The result of matchLabels and
* matchExpressions are ANDed. An empty label selector matches all objects. A null
* label selector matches no objects.
*/
bundleSelector: zod_1.z
.object({
/**
* matchExpressions is a list of label selector requirements. The requirements are ANDed.
*/
matchExpressions: zod_1.z
.array(zod_1.z.object({
/**
* key is the label key that the selector applies to.
*/
key: zod_1.z.string(),
/**
* operator represents a key's relationship to a set of values.
* Valid operators are In, NotIn, Exists and DoesNotExist.
*/
operator: zod_1.z.string(),
/**
* values is an array of string values. If the operator is In or NotIn,
* the values array must be non-empty. If the operator is Exists or DoesNotExist,
* the values array must be empty. This array is replaced during a strategic
* merge patch.
*/
values: zod_1.z.array(zod_1.z.string()).optional()
}))
.optional(),
/**
* matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
* map is equivalent to an element of matchExpressions, whose key field is "key", the
* operator is "In", and the values array contains only "value". The requirements are ANDed.
*/
matchLabels: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional()
})
.optional(),
/**
* Kind is a string value representing the REST resource this object represents.
* Servers may infer this from the endpoint the client submits requests to.
* Cannot be updated.
* In CamelCase.
* More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
*/
kind: zod_1.z.literal("BundleNamespaceMapping"),
metadata: ObjectMeta_schema_1.iObjectMetaSchema.optional(),
/**
* A label selector is a label query over a set of resources. The result of matchLabels and
* matchExpressions are ANDed. An empty label selector matches all objects. A null
* label selector matches no objects.
*/
namespaceSelector: zod_1.z
.object({
/**
* matchExpressions is a list of label selector requirements. The requirements are ANDed.
*/
matchExpressions: zod_1.z
.array(zod_1.z.object({
/**
* key is the label key that the selector applies to.
*/
key: zod_1.z.string(),
/**
* operator represents a key's relationship to a set of values.
* Valid operators are In, NotIn, Exists and DoesNotExist.
*/
operator: zod_1.z.string(),
/**
* values is an array of string values. If the operator is In or NotIn,
* the values array must be non-empty. If the operator is Exists or DoesNotExist,
* the values array must be empty. This array is replaced during a strategic
* merge patch.
*/
values: zod_1.z.array(zod_1.z.string()).optional()
}))
.optional(),
/**
* matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
* map is equivalent to an element of matchExpressions, whose key field is "key", the
* operator is "In", and the values array contains only "value". The requirements are ANDed.
*/
matchLabels: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional()
})
.optional()
});