-
Notifications
You must be signed in to change notification settings - Fork 459
/
types_namespacedcloudprofile.go
68 lines (59 loc) · 2.68 KB
/
types_namespacedcloudprofile.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
// SPDX-FileCopyrightText: 2024 SAP SE or an SAP affiliate company and Gardener contributors
//
// SPDX-License-Identifier: Apache-2.0
package core
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
// +genclient
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// NamespacedCloudProfile represents certain properties about a provider environment.
type NamespacedCloudProfile struct {
metav1.TypeMeta
// Standard object metadata.
metav1.ObjectMeta
// Spec defines the provider environment properties.
Spec NamespacedCloudProfileSpec
// Most recently observed status of the NamespacedCloudProfile.
Status NamespacedCloudProfileStatus
}
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// NamespacedCloudProfileList is a collection of NamespacedCloudProfiles.
type NamespacedCloudProfileList struct {
metav1.TypeMeta
// Standard list object metadata.
metav1.ListMeta
// Items is the list of NamespacedCloudProfiles.
Items []NamespacedCloudProfile
}
// NamespacedCloudProfileSpec is the specification of a NamespacedCloudProfile.
type NamespacedCloudProfileSpec struct {
// CABundle is a certificate bundle which will be installed onto every host machine of shoot cluster targeting this profile.
CABundle *string
// Kubernetes contains constraints regarding allowed values of the 'kubernetes' block in the Shoot specification.
Kubernetes *KubernetesSettings
// MachineImages contains constraints regarding allowed values for machine images in the Shoot specification.
MachineImages []MachineImage
// MachineTypes contains constraints regarding allowed values for machine types in the 'workers' block in the Shoot specification.
MachineTypes []MachineType
// Regions contains constraints regarding allowed values for regions and zones.
Regions []Region
// VolumeTypes contains constraints regarding allowed values for volume types in the 'workers' block in the Shoot specification.
VolumeTypes []VolumeType
// Parent contains a reference to a CloudProfile it inherits from.
Parent CloudProfileReference
}
// NamespacedCloudProfileStatus holds the most recently observed status of the NamespacedCloudProfile.
type NamespacedCloudProfileStatus struct {
// CloudProfileSpec is the most recently generated CloudProfileSpec of the NamespacedCloudProfile.
CloudProfileSpec CloudProfileSpec
// ObservedGeneration is the most recent generation observed for this NamespacedCloudProfile.
ObservedGeneration int64
}
// CloudProfileReference holds the information about the parent of the NamespacedCloudProfile.
type CloudProfileReference struct {
// Kind contains a CloudProfile kind.
Kind string
// Name contains the name of the referenced CloudProfile.
Name string
}