{ "description": "ClusterImageSetMirror is the Schema for the clusterimagesetmirrors API.", "properties": { "apiVersion": { "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources", "type": "string" }, "kind": { "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", "type": "string" }, "metadata": { "type": "object" }, "spec": { "description": "ClusterImageSetMirrorSpec defines the desired state of ClusterImageSetMirror.", "properties": { "cleanup": { "description": "Cleanup defines a cleanup strategy", "properties": { "enabled": { "type": "boolean" }, "retention": { "type": "string" } }, "type": "object", "additionalProperties": false }, "imageFilter": { "description": "ImageFilterDefinition is the definition of an image filter", "properties": { "exclude": { "items": { "type": "string" }, "type": "array" }, "include": { "items": { "type": "string" }, "type": "array" } }, "type": "object", "additionalProperties": false }, "mirrors": { "items": { "properties": { "cleanup": { "description": "Cleanup defines a cleanup strategy", "properties": { "enabled": { "type": "boolean" }, "retention": { "type": "string" } }, "type": "object", "additionalProperties": false }, "credentialSecret": { "properties": { "name": { "description": "Name is the name of the secret", "type": "string" }, "namespace": { "description": "Namespace is the namespace where the secret is located.\nThis value is ignored for namespaced resources and the namespace of the parent object is used instead.", "type": "string" } }, "type": "object", "additionalProperties": false }, "path": { "type": "string" }, "priority": { "description": "Priority controls the ordering of this mirror in comparaison to similar alternatives (mirrors with same parent priority) when re-routing images.\n0 means no specific ordering (YAML declaration order is preserved).\nPositive values are sorted ascending: lower value = higher priority.", "type": "integer" }, "registry": { "type": "string" } }, "type": "object", "additionalProperties": false }, "type": "array" }, "priority": { "description": "Priority controls the ordering of alternatives from this CR relative to the original image and other CRs.\nNegative values place alternatives before the original image; positive values place them after.\nDefault is 0 (original image first, then alternatives in default type order).", "type": "integer" } }, "type": "object", "additionalProperties": false }, "status": { "description": "ClusterImageSetMirrorStatus defines the observed state of ClusterImageSetMirror.", "properties": { "matchingImages": { "items": { "properties": { "image": { "type": "string" }, "mirrors": { "items": { "properties": { "image": { "type": "string" }, "lastError": { "type": "string" }, "mirroredAt": { "format": "date-time", "type": "string" } }, "required": [ "image" ], "type": "object", "additionalProperties": false }, "type": "array", "x-kubernetes-list-map-keys": [ "image" ], "x-kubernetes-list-type": "map" }, "unusedSince": { "format": "date-time", "type": "string" } }, "required": [ "image" ], "type": "object", "additionalProperties": false }, "type": "array", "x-kubernetes-list-map-keys": [ "image" ], "x-kubernetes-list-type": "map" } }, "type": "object", "additionalProperties": false } }, "type": "object" }