42 lines
1 KiB
Go
42 lines
1 KiB
Go
package v1alpha1
|
|
|
|
import (
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
)
|
|
|
|
// +genclient
|
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
|
|
// TLSStore is a specification for a TLSStore resource.
|
|
type TLSStore struct {
|
|
metav1.TypeMeta `json:",inline"`
|
|
metav1.ObjectMeta `json:"metadata"`
|
|
|
|
Spec TLSStoreSpec `json:"spec"`
|
|
}
|
|
|
|
// +k8s:deepcopy-gen=true
|
|
|
|
// TLSStoreSpec configures a TLSStore resource.
|
|
type TLSStoreSpec struct {
|
|
DefaultCertificate DefaultCertificate `json:"defaultCertificate"`
|
|
}
|
|
|
|
// +k8s:deepcopy-gen=true
|
|
|
|
// DefaultCertificate holds a secret name for the TLSOption resource.
|
|
type DefaultCertificate struct {
|
|
// SecretName is the name of the referenced Kubernetes Secret to specify the
|
|
// certificate details.
|
|
SecretName string `json:"secretName,omitempty"`
|
|
}
|
|
|
|
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
|
|
|
|
// TLSStoreList is a list of TLSStore resources.
|
|
type TLSStoreList struct {
|
|
metav1.TypeMeta `json:",inline"`
|
|
metav1.ListMeta `json:"metadata"`
|
|
|
|
Items []TLSStore `json:"items"`
|
|
}
|