Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the website v1beta1 API group +kubebuilder:object:generate=true +groupName=website.zoetrope.github.io
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "website.zoetrope.github.io", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type ConfigMapSource ¶
type ConfigMapSource struct {
// Name is the name of a configmap resource
// +kubebuiler:validation:Required
Name string `json:"name"`
// Namespace is the namespace of a configmap resource
// if omitted, it will be the same namespace as the WebSite resource
// +optional
Namespace string `json:"namespace"`
// Key is the name of a key
// +kubebuiler:validation:Required
Key string `json:"key"`
}
func (*ConfigMapSource) DeepCopy ¶
func (in *ConfigMapSource) DeepCopy() *ConfigMapSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigMapSource.
func (*ConfigMapSource) DeepCopyInto ¶
func (in *ConfigMapSource) DeepCopyInto(out *ConfigMapSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataSource ¶
type DataSource struct {
// ConfigMapName is the name of the ConfigMap
// +optional
ConfigMap *ConfigMapSource `json:"configMap,omitempty"`
// RawData is raw data
// +optional
RawData *string `json:"rawData,omitempty"`
}
DataSource represents the source of data. Only one of its members may be specified.
func (*DataSource) DeepCopy ¶
func (in *DataSource) DeepCopy() *DataSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataSource.
func (*DataSource) DeepCopyInto ¶
func (in *DataSource) DeepCopyInto(out *DataSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectMeta ¶
type ObjectMeta struct {
// Labels is a map of string keys and values.
// +optional
Labels map[string]string `json:"labels,omitempty"`
// Annotations is a map of string keys and values.
// +optional
Annotations map[string]string `json:"annotations,omitempty"`
}
ObjectMeta is metadata of objects. This is partially copied from metav1.ObjectMeta.
func (*ObjectMeta) DeepCopy ¶
func (in *ObjectMeta) DeepCopy() *ObjectMeta
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectMeta.
func (*ObjectMeta) DeepCopyInto ¶
func (in *ObjectMeta) DeepCopyInto(out *ObjectMeta)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodTemplate ¶
type PodTemplate struct {
// Standard object's metadata. Only `annotations` and `labels` are valid.
// +optional
ObjectMeta `json:"metadata,omitempty"`
}
PodTemplate defines the desired spec and annotations of Pod
func (*PodTemplate) DeepCopy ¶
func (in *PodTemplate) DeepCopy() *PodTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodTemplate.
func (*PodTemplate) DeepCopyInto ¶
func (in *PodTemplate) DeepCopyInto(out *PodTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretKey ¶
type SecretKey struct {
// Name is the name of the secret resource
Name string `json:"name"`
// Key is the key of the secret resource
Key string `json:"key"`
}
SecretKey represents the name and key of a secret resource.
func (*SecretKey) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretKey.
func (*SecretKey) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceTemplate ¶
type ServiceTemplate struct {
// Standard object's metadata. Only `annotations` and `labels` are valid.
// +optional
ObjectMeta `json:"metadata,omitempty"`
}
ServiceTemplate defines the desired spec and annotations of Service
func (*ServiceTemplate) DeepCopy ¶
func (in *ServiceTemplate) DeepCopy() *ServiceTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceTemplate.
func (*ServiceTemplate) DeepCopyInto ¶
func (in *ServiceTemplate) DeepCopyInto(out *ServiceTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebSite ¶
type WebSite struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec WebSiteSpec `json:"spec,omitempty"`
Status WebSiteStatus `json:"status,omitempty"`
}
WebSite is the Schema for the websites API
func (*WebSite) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebSite.
func (*WebSite) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebSite) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebSiteList ¶
type WebSiteList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []WebSite `json:"items"`
}
WebSiteList contains a list of WebSite
func (*WebSiteList) DeepCopy ¶
func (in *WebSiteList) DeepCopy() *WebSiteList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebSiteList.
func (*WebSiteList) DeepCopyInto ¶
func (in *WebSiteList) DeepCopyInto(out *WebSiteList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*WebSiteList) DeepCopyObject ¶
func (in *WebSiteList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type WebSiteSpec ¶
type WebSiteSpec struct {
// BuildImage is a container image name that will be used to build the website
// +kubebuiler:validation:Required
BuildImage string `json:"buildImage"`
// BuildScript is a script to build the website
// +kubebuiler:validation:Required
BuildScript DataSource `json:"buildScript"`
// BuildSecrets is the list of secrets you can use in a build script
// +optional
BuildSecrets []SecretKey `json:"buildSecrets,omitempty"`
// ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling the images (buildImage, nginx and repo-checker).
// +optional
ImagePullSecrets []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
// RepoURL is the URL of the repository that has contents of the website
// +kubebuiler:validation:Required
RepoURL string `json:"repoURL"`
// Branch is the branch name of the repository
// +kubebuilder:default=main
// +optional
Branch string `json:"branch"`
// DeployKeySecretName is the name of the secret resource that contains the deploy key to access the private repository
// +optional
DeployKeySecretName *string `json:"deployKeySecretName,omitempty"`
// ExtraResources are resources that will be applied after the build step
// +optional
ExtraResources []DataSource `json:"extraResources,omitempty"`
// Replicas is the number of nginx instances
// +kubebuilder:default=1
// +optional
Replicas int32 `json:"replicas,omitempty"`
// PodTemplate is a `Pod` template for nginx container.
// +optional
PodTemplate *PodTemplate `json:"podTemplate,omitempty"`
// VolumeTemplates are `Volume` templates for nginx container.
// +optional
VolumeTemplates []corev1.Volume `json:"volumeTemplates,omitempty"`
// ServiceTemplate is a `Service` template for nginx.
// +optional
ServiceTemplate *ServiceTemplate `json:"serviceTemplate,omitempty"`
// NginxConf is a configuration file for nginx.
// +optional
NginxConf *DataSource `json:"nginxConf,omitempty"`
// AfterBuildScript is a script to execute in Job once after build
// +optional
AfterBuildScript *DataSource `json:"afterBuildScript"`
// PublicURL is the URL of the website
// +optional
PublicURL string `json:"publicURL,omitempty"`
}
WebSiteSpec defines the desired state of WebSite
func (*WebSiteSpec) DeepCopy ¶
func (in *WebSiteSpec) DeepCopy() *WebSiteSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebSiteSpec.
func (*WebSiteSpec) DeepCopyInto ¶
func (in *WebSiteSpec) DeepCopyInto(out *WebSiteSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WebSiteStatus ¶
type WebSiteStatus struct {
// Revision is a revision currently available to the public
Revision string `json:"revision"`
// Ready is the current status
Ready corev1.ConditionStatus `json:"ready"`
}
WebSiteStatus defines the observed state of WebSite
func (*WebSiteStatus) DeepCopy ¶
func (in *WebSiteStatus) DeepCopy() *WebSiteStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WebSiteStatus.
func (*WebSiteStatus) DeepCopyInto ¶
func (in *WebSiteStatus) DeepCopyInto(out *WebSiteStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.