Documentation ¶
Overview ¶
+groupName=release.giantswarm.io
Index ¶
- Variables
- func NewReleaseCRD() *apiextensionsv1beta1.CustomResourceDefinition
- func NewReleaseCycleCRD() *apiextensionsv1beta1.CustomResourceDefinition
- func NewReleaseCycleTypeMeta() metav1.TypeMeta
- func NewReleaseTypeMeta() metav1.TypeMeta
- type DeepCopyDate
- type DeepCopyTime
- type Release
- type ReleaseCycle
- type ReleaseCycleList
- type ReleaseCyclePhase
- type ReleaseCycleSpec
- type ReleaseCycleStatus
- type ReleaseList
- type ReleaseSpec
- type ReleaseSpecApp
- type ReleaseSpecComponent
- type ReleaseState
Constants ¶
This section is empty.
Variables ¶
var (
// AddToScheme is used by the generated client.
AddToScheme = schemeBuilder.AddToScheme
)
var SchemeGroupVersion = schema.GroupVersion{
Group: group,
Version: version,
}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func NewReleaseCRD ¶
func NewReleaseCRD() *apiextensionsv1beta1.CustomResourceDefinition
NewReleaseCRD returns a new custom resource definition for Release.
func NewReleaseCycleCRD ¶
func NewReleaseCycleCRD() *apiextensionsv1beta1.CustomResourceDefinition
func NewReleaseCycleTypeMeta ¶
func NewReleaseTypeMeta ¶
Types ¶
type DeepCopyDate ¶
DeepCopyDate is a date type designed to be validated with json-schema date type.
func (*DeepCopyDate) DeepCopy ¶
func (in *DeepCopyDate) DeepCopy() *DeepCopyDate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeepCopyDate.
func (*DeepCopyDate) DeepCopyInto ¶
func (d *DeepCopyDate) DeepCopyInto(out *DeepCopyDate)
func (DeepCopyDate) MarshalJSON ¶
func (d DeepCopyDate) MarshalJSON() ([]byte, error)
MarshalJSON implements the json.Marshaler interface. The time is expected to be a quoted string in yyyy-mm-dd format.
NOTE: This method has a value (not pointer) receiver. Otherwise marshalling will stop working for values. When this is a value receiver it works for both.
func (*DeepCopyDate) UnmarshalJSON ¶
func (d *DeepCopyDate) UnmarshalJSON(data []byte) error
UnmarshalJSON implements the json.Unmarshaler interface. The time is expected to be a quoted string in yyyy-mm-dd format.
type DeepCopyTime ¶
DeepCopyTime implements the deep copy logic for time.Time which the k8s codegen is not able to generate out of the box.
func (*DeepCopyTime) DeepCopy ¶
func (in *DeepCopyTime) DeepCopy() *DeepCopyTime
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeepCopyTime.
func (*DeepCopyTime) DeepCopyInto ¶
func (in *DeepCopyTime) DeepCopyInto(out *DeepCopyTime)
type Release ¶
type Release struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ObjectMeta `json:"metadata" yaml:"metadata"` Spec ReleaseSpec `json:"spec" yaml:"spec"` }
Release is a Kubernetes resource (CR) which is based on the Release CRD defined above.
An example Release resource can be viewed here https://github.com/giantswarm/apiextensions/blob/master/docs/cr/release.giantswarm.io_v1alpha1_release.yaml
func NewReleaseCR ¶
func NewReleaseCR() *Release
func (*Release) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Release.
func (*Release) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Release) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseCycle ¶
type ReleaseCycle struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ObjectMeta `json:"metadata" yaml:"metadata"` Spec ReleaseCycleSpec `json:"spec" yaml:"spec"` Status ReleaseCycleStatus `json:"status,omitempty" yaml:"status,omitempty"` }
ReleaseCycle CRs might look something like the following.
apiVersion: "release.giantswarm.io/v1alpha1" kind: "ReleaseCycle" metadata: name: "aws.v6.1.0" labels: giantswarm.io/managed-by: "opsctl" giantswarm.io/provider: "aws" spec: disabledDate: 2019-01-12 enabledDate: 2019-01-08 phase: "enabled"
func (*ReleaseCycle) DeepCopy ¶
func (in *ReleaseCycle) DeepCopy() *ReleaseCycle
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseCycle.
func (*ReleaseCycle) DeepCopyInto ¶
func (in *ReleaseCycle) DeepCopyInto(out *ReleaseCycle)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseCycle) DeepCopyObject ¶
func (in *ReleaseCycle) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseCycleList ¶
type ReleaseCycleList struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ListMeta `json:"metadata" yaml:"metadata"` Items []ReleaseCycle `json:"items" yaml:"items"` }
func (*ReleaseCycleList) DeepCopy ¶
func (in *ReleaseCycleList) DeepCopy() *ReleaseCycleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseCycleList.
func (*ReleaseCycleList) DeepCopyInto ¶
func (in *ReleaseCycleList) DeepCopyInto(out *ReleaseCycleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseCycleList) DeepCopyObject ¶
func (in *ReleaseCycleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseCyclePhase ¶
type ReleaseCyclePhase string
const ( CyclePhaseUpcoming ReleaseCyclePhase = "upcoming" CyclePhaseEnabled ReleaseCyclePhase = "enabled" CyclePhaseDisabled ReleaseCyclePhase = "disabled" CyclePhaseEOL ReleaseCyclePhase = "eol" )
func (ReleaseCyclePhase) String ¶
func (r ReleaseCyclePhase) String() string
type ReleaseCycleSpec ¶
type ReleaseCycleSpec struct { // DisabledDate is the date of the cycle phase being changed to "disabled". DisabledDate DeepCopyDate `json:"disabledDate,omitempty" yaml:"disabledDate,omitempty"` // EnabledDate is the date of the cycle phase being changed to "enabled". EnabledDate DeepCopyDate `json:"enabledDate,omitempty" yaml:"enabledDate,omitempty"` // Phase is the release phase. It can be one of: "upcoming", "enabled", // "disabled", "eol". Phase ReleaseCyclePhase `json:"phase" yaml:"phase"` }
func (*ReleaseCycleSpec) DeepCopy ¶
func (in *ReleaseCycleSpec) DeepCopy() *ReleaseCycleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseCycleSpec.
func (*ReleaseCycleSpec) DeepCopyInto ¶
func (in *ReleaseCycleSpec) DeepCopyInto(out *ReleaseCycleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseCycleStatus ¶
type ReleaseCycleStatus struct { }
func (*ReleaseCycleStatus) DeepCopy ¶
func (in *ReleaseCycleStatus) DeepCopy() *ReleaseCycleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseCycleStatus.
func (*ReleaseCycleStatus) DeepCopyInto ¶
func (in *ReleaseCycleStatus) DeepCopyInto(out *ReleaseCycleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseList ¶
type ReleaseList struct { metav1.TypeMeta `json:",inline" yaml:",inline"` metav1.ListMeta `json:"metadata" yaml:"metadata"` Items []Release `json:"items" yaml:"items"` }
func (*ReleaseList) DeepCopy ¶
func (in *ReleaseList) DeepCopy() *ReleaseList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseList.
func (*ReleaseList) DeepCopyInto ¶
func (in *ReleaseList) DeepCopyInto(out *ReleaseList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseList) DeepCopyObject ¶
func (in *ReleaseList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseSpec ¶
type ReleaseSpec struct { // Apps describes apps used in this release. Apps []ReleaseSpecApp `json:"apps" yaml:"apps"` // Components describes components used in this release. Components []ReleaseSpecComponent `json:"components" yaml:"components"` // Date that the release became active. Date *DeepCopyTime `json:"date" yaml:"date"` // State indicates the availability of the release: deprecated, active, or wip. State ReleaseState `json:"state" yaml:"state"` }
func (*ReleaseSpec) DeepCopy ¶
func (in *ReleaseSpec) DeepCopy() *ReleaseSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseSpec.
func (*ReleaseSpec) DeepCopyInto ¶
func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseSpecApp ¶
type ReleaseSpecApp struct { // Version of the upstream component used in the app. ComponentVersion string `json:"componentVersion,omitempty" yaml:"componentVersion,omitempty"` // Name of the app. Name string `json:"name" yaml:"name"` // Version of the app. Version string `json:"version" yaml:"version"` }
func (*ReleaseSpecApp) DeepCopy ¶
func (in *ReleaseSpecApp) DeepCopy() *ReleaseSpecApp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseSpecApp.
func (*ReleaseSpecApp) DeepCopyInto ¶
func (in *ReleaseSpecApp) DeepCopyInto(out *ReleaseSpecApp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseSpecComponent ¶
type ReleaseSpecComponent struct { // Name of the component. Name string `json:"name" yaml:"name"` // Version of the component. Version string `json:"version" yaml:"version"` }
func (*ReleaseSpecComponent) DeepCopy ¶
func (in *ReleaseSpecComponent) DeepCopy() *ReleaseSpecComponent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseSpecComponent.
func (*ReleaseSpecComponent) DeepCopyInto ¶
func (in *ReleaseSpecComponent) DeepCopyInto(out *ReleaseSpecComponent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseState ¶
type ReleaseState string