cue.dev/x/crd/bitnami.com/sealed-secrets@v0.2.0

v1alpha1/schema.cue raw

  1package v1alpha1
  2
  3import "time"
  4
  5// SealedSecret is the K8s representation of a "sealed Secret" - a
  6// regular k8s Secret that has been sealed (encrypted) using the
  7// controller's key.
  8#SealedSecret: {
  9	_embeddedResource
 10
 11	// APIVersion defines the versioned schema of this representation of an object.
 12	// Servers should convert recognized schemas to the latest internal value, and
 13	// may reject unrecognized values.
 14	// More info:
 15	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
 16	"apiVersion"?: string
 17
 18	// Kind is a string value representing the REST resource this object represents.
 19	// Servers may infer this from the endpoint the client submits requests to.
 20	// Cannot be updated.
 21	// In CamelCase.
 22	// More info:
 23	// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
 24	"kind"?: string
 25	"metadata"?: {}
 26
 27	// SealedSecretSpec is the specification of a SealedSecret.
 28	"spec"!: {
 29		// Data is deprecated and will be removed eventually. Use per-value EncryptedData instead.
 30		"data"?: string
 31		"encryptedData"!: {
 32			[string]: string
 33			...
 34		}
 35
 36		// Template defines the structure of the Secret that will be
 37		// created from this sealed secret.
 38		"template"?: {
 39			// Keys that should be templated using decrypted data.
 40			"data"?:
 41				null | {
 42					[string]: string
 43				}
 44
 45			// Immutable, if set to true, ensures that data stored in the Secret cannot
 46			// be updated (only object metadata can be modified).
 47			// If not set to true, the field can be modified at any time.
 48			// Defaulted to nil.
 49			"immutable"?: bool
 50
 51			// Standard object's metadata.
 52			// More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
 53			"metadata"?:
 54				null | {
 55					"annotations"?: [string]: string
 56					"finalizers"?: [...string]
 57					"labels"?: {
 58						[string]: string
 59					}
 60					"name"?:      string
 61					"namespace"?: string
 62					...
 63				}
 64
 65			// Used to facilitate programmatic handling of secret data.
 66			"type"?: string
 67		}
 68	}
 69
 70	// SealedSecretStatus is the most recently observed status of the SealedSecret.
 71	"status"?: {
 72		// Represents the latest available observations of a sealed secret's current state.
 73		"conditions"?: [...{
 74			// Last time the condition transitioned from one status to another.
 75			"lastTransitionTime"?: time.Time
 76
 77			// The last time this condition was updated.
 78			"lastUpdateTime"?: time.Time
 79
 80			// A human readable message indicating details about the transition.
 81			"message"?: string
 82
 83			// The reason for the condition's last transition.
 84			"reason"?: string
 85
 86			// Status of the condition for a sealed secret.
 87			// Valid values for "Synced": "True", "False", or "Unknown".
 88			"status"!: string
 89
 90			// Type of condition for a sealed secret.
 91			// Valid value: "Synced"
 92			"type"!: string
 93		}]
 94
 95		// ObservedGeneration reflects the generation most recently observed by the
 96		// sealed-secrets controller.
 97		"observedGeneration"?: int64 & int
 98	}
 99
100	_embeddedResource: {
101		"apiVersion"!: string
102		"kind"!:       string
103		"metadata"?: {
104			...
105		}
106	}
107	apiVersion: "bitnami.com/v1alpha1"
108	kind:       "SealedSecret"
109	metadata!: {
110		"name"!:      string
111		"namespace"!: string
112		"labels"?: {
113			[string]: string
114		}
115		"annotations"?: {
116			[string]: string
117		}
118		...
119	}
120}