package v1alpha1 import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" ) // EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN! // NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized. // SoftwareSpec defines the desired state of Software // +k8s:openapi-gen=true type SoftwareSpec struct { // INSERT ADDITIONAL SPEC FIELDS - desired state of cluster // Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file // Add custom validation using kubebuilder tags: https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html //MasterSoftware map[string][]interface{} `json:"masterSoftware,omitempty"` MasterSoftware []interface{} `json:"masterSoftware,omitempty"` WorkerSoftware []interface{} `json:"workerSoftware,omitempty"` } // SoftwareStatus defines the observed state of Software // +k8s:openapi-gen=true type SoftwareStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "operator-sdk generate k8s" to regenerate code after modifying this file // Add custom validation using kubebuilder tags: https://book-v1.book.kubebuilder.io/beyond_basics/generating_crd.html } // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // Software is the Schema for the softwares API // +k8s:openapi-gen=true // +kubebuilder:subresource:status type Software struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec SoftwareSpec `json:"spec,omitempty"` Status SoftwareStatus `json:"status,omitempty"` } // +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object // SoftwareList contains a list of Software type SoftwareList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Software `json:"items"` } func init() { SchemeBuilder.Register(&Software{}, &SoftwareList{}) }