Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the terraform v1alpha1 API group +kubebuilder:object:generate=true +groupName=terraform.kubeterra.io
Index ¶
- Variables
- type TerraformConfiguration
- type TerraformConfigurationList
- type TerraformConfigurationSpec
- type TerraformConfigurationStatus
- type TerraformConfigurationTemplate
- type TerraformPhase
- type TerraformPlan
- type TerraformPlanList
- type TerraformPlanSpec
- type TerraformPlanStatus
- type TerraformState
- type TerraformStateList
- type TerraformStateSpec
- type TerraformStateStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "terraform.kubeterra.io", Version: "v1alpha1"} // 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 TerraformConfiguration ¶
type TerraformConfiguration struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TerraformConfigurationSpec `json:"spec,omitempty"` Status TerraformConfigurationStatus `json:"status,omitempty"` }
TerraformConfiguration is the Schema for the terraformconfigurations API
func (*TerraformConfiguration) DeepCopy ¶
func (in *TerraformConfiguration) DeepCopy() *TerraformConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfiguration.
func (*TerraformConfiguration) DeepCopyInto ¶
func (in *TerraformConfiguration) DeepCopyInto(out *TerraformConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformConfiguration) DeepCopyObject ¶
func (in *TerraformConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformConfigurationList ¶
type TerraformConfigurationList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TerraformConfiguration `json:"items"` }
TerraformConfigurationList contains a list of TerraformConfiguration
func (*TerraformConfigurationList) DeepCopy ¶
func (in *TerraformConfigurationList) DeepCopy() *TerraformConfigurationList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfigurationList.
func (*TerraformConfigurationList) DeepCopyInto ¶
func (in *TerraformConfigurationList) DeepCopyInto(out *TerraformConfigurationList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformConfigurationList) DeepCopyObject ¶
func (in *TerraformConfigurationList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformConfigurationSpec ¶
type TerraformConfigurationSpec struct { // Indicates that the terraform apply should not happened. // +optional Paused bool `json:"paused"` // Rerun this configuration periodically // +optional RepeatEvery *metav1.Duration `json:"repeatEvery,omitempty"` // Indicates that the terrafor apply should happen without any further question. // +optional AutoApprove bool `json:"autoApprove"` // Configuration holds whole terraform configuration definition Configuration string `json:"configuration"` // Variable values, will be dumped to terraform.tfvars // +optional Values string `json:"values,omitempty"` // Defines some aspects of resulting Pod that will run terraform plan / teterraform apply // +optional Template *TerraformConfigurationTemplate `json:"template,omitempty"` }
TerraformConfigurationSpec defines the desired state of TerraformConfiguration
func (*TerraformConfigurationSpec) DeepCopy ¶
func (in *TerraformConfigurationSpec) DeepCopy() *TerraformConfigurationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfigurationSpec.
func (*TerraformConfigurationSpec) DeepCopyInto ¶
func (in *TerraformConfigurationSpec) DeepCopyInto(out *TerraformConfigurationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformConfigurationStatus ¶
type TerraformConfigurationStatus struct { // Phase indicates current phase of the terraform action. // Is a enum PlanScheduled;PlanRunning;WaitingApproval;ApplyRunning;PlanFailed;ApplyFailed;Done Phase TerraformPhase `json:"phase"` }
TerraformConfigurationStatus defines the observed state of TerraformConfiguration
func (*TerraformConfigurationStatus) DeepCopy ¶
func (in *TerraformConfigurationStatus) DeepCopy() *TerraformConfigurationStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfigurationStatus.
func (*TerraformConfigurationStatus) DeepCopyInto ¶
func (in *TerraformConfigurationStatus) DeepCopyInto(out *TerraformConfigurationStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformConfigurationTemplate ¶
type TerraformConfigurationTemplate struct { // List of volumes that can be mounted by containers belonging to the pod. // More info: https://kubernetes.io/docs/concepts/storage/volumes // Standard corev1 kubernetes API // +optional Volumes []corev1.Volume `json:"volumes,omitempty"` // List of sources to populate environment variables in the container. // The keys defined within a source must be a C_IDENTIFIER. All invalid keys // will be reported as an event when the container is starting. When a key exists in multiple // sources, the value associated with the last source will take precedence. // Values defined by an Env with a duplicate key will take precedence. // Standard corev1 kubernetes API // +optional EnvFrom []corev1.EnvFromSource `json:"envFrom,omitempty"` // List of environment variables to set in the container. // Standard corev1 kubernetes API // +optional Env []corev1.EnvVar `json:"env,omitempty"` // Pod volumes to mount into the container's filesystem. // Standard corev1 kubernetes API // +optional VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"` // ServiceAccountName is the name of the ServiceAccount to use in running terraform pod. // More info: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/ // Standard corev1 kubernetes API // +optional ServiceAccountName string `json:"serviceAccountName,omitempty"` }
TerraformConfigurationTemplate defines some aspects of resulting Pod that will run terraform plan / teterraform apply
func (*TerraformConfigurationTemplate) DeepCopy ¶
func (in *TerraformConfigurationTemplate) DeepCopy() *TerraformConfigurationTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfigurationTemplate.
func (*TerraformConfigurationTemplate) DeepCopyInto ¶
func (in *TerraformConfigurationTemplate) DeepCopyInto(out *TerraformConfigurationTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformPhase ¶
type TerraformPhase string
TerraformPhase phase +kubebuilder:validation:Enum=PlanScheduled;PlanRunning;WaitingApproval;ApplyRunning;PlanFailed;ApplyFailed;Done
const ( TerraformPhasePlanScheduled TerraformPhase = "PlanScheduled" TerraformPhasePlanRunning TerraformPhase = "PlanRunning" TerraformPhaseWaitingApproval TerraformPhase = "WaitingApproval" TerraformPhaseApplyRunning TerraformPhase = "ApplyRunning" TerraformPhasePlanFailed TerraformPhase = "PlanFailed" TerraformPhaseApplyFailed TerraformPhase = "ApplyFailed" TerraformPhaseDone TerraformPhase = "Done" )
TerraformPhase ENUM
type TerraformPlan ¶
type TerraformPlan struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TerraformPlanSpec `json:"spec,omitempty"` Status TerraformPlanStatus `json:"status,omitempty"` }
TerraformPlan is the Schema for the terraformplans API
func (*TerraformPlan) DeepCopy ¶
func (in *TerraformPlan) DeepCopy() *TerraformPlan
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPlan.
func (*TerraformPlan) DeepCopyInto ¶
func (in *TerraformPlan) DeepCopyInto(out *TerraformPlan)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformPlan) DeepCopyObject ¶
func (in *TerraformPlan) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformPlanList ¶
type TerraformPlanList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TerraformPlan `json:"items"` }
TerraformPlanList contains a list of TerraformPlan
func (*TerraformPlanList) DeepCopy ¶
func (in *TerraformPlanList) DeepCopy() *TerraformPlanList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPlanList.
func (*TerraformPlanList) DeepCopyInto ¶
func (in *TerraformPlanList) DeepCopyInto(out *TerraformPlanList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformPlanList) DeepCopyObject ¶
func (in *TerraformPlanList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformPlanSpec ¶
type TerraformPlanSpec struct { // Indicate if plan approved to apply Approved bool `json:"approved"` // Scheduled next execution time // +optional NextRunAt *metav1.Time `json:"nextRunAt,omitempty"` }
TerraformPlanSpec defines the desired state of TerraformPlan
func (*TerraformPlanSpec) DeepCopy ¶
func (in *TerraformPlanSpec) DeepCopy() *TerraformPlanSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPlanSpec.
func (*TerraformPlanSpec) DeepCopyInto ¶
func (in *TerraformPlanSpec) DeepCopyInto(out *TerraformPlanSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformPlanStatus ¶
type TerraformPlanStatus struct { // Previous execution time // +optional LastRunAt *metav1.Time `json:"lastRunAt,omitempty"` // String encoded 32-bit FNV-1a hash of the TerraformConfigurationSpec. // Encoded with https://godoc.org/k8s.io/apimachinery/pkg/util/rand#SafeEncodeString ConfigurationSpecHash string `json:"configurationSpecHash"` // Current phase // Is a enum PlanScheduled;PlanRunning;WaitingApproval;ApplyRunning;PlanFailed;ApplyFailed;Done Phase TerraformPhase `json:"phase"` }
TerraformPlanStatus defines the observed state of TerraformPlan
func (*TerraformPlanStatus) DeepCopy ¶
func (in *TerraformPlanStatus) DeepCopy() *TerraformPlanStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPlanStatus.
func (*TerraformPlanStatus) DeepCopyInto ¶
func (in *TerraformPlanStatus) DeepCopyInto(out *TerraformPlanStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformState ¶
type TerraformState struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec TerraformStateSpec `json:"spec,omitempty"` Status TerraformStateStatus `json:"status,omitempty"` }
TerraformState is the Schema for the terraformstates API
func (*TerraformState) DeepCopy ¶
func (in *TerraformState) DeepCopy() *TerraformState
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformState.
func (*TerraformState) DeepCopyInto ¶
func (in *TerraformState) DeepCopyInto(out *TerraformState)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformState) DeepCopyObject ¶
func (in *TerraformState) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformStateList ¶
type TerraformStateList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []TerraformState `json:"items"` }
TerraformStateList contains a list of TerraformState
func (*TerraformStateList) DeepCopy ¶
func (in *TerraformStateList) DeepCopy() *TerraformStateList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformStateList.
func (*TerraformStateList) DeepCopyInto ¶
func (in *TerraformStateList) DeepCopyInto(out *TerraformStateList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TerraformStateList) DeepCopyObject ¶
func (in *TerraformStateList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TerraformStateSpec ¶
type TerraformStateSpec struct { // Terraform State JSON object // +optional State *runtime.RawExtension `json:"state,omitempty"` }
TerraformStateSpec defines the desired state of TerraformState
func (*TerraformStateSpec) DeepCopy ¶
func (in *TerraformStateSpec) DeepCopy() *TerraformStateSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformStateSpec.
func (*TerraformStateSpec) DeepCopyInto ¶
func (in *TerraformStateSpec) DeepCopyInto(out *TerraformStateSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TerraformStateStatus ¶
type TerraformStateStatus struct { // Lock ID that currently hold locked this state (or lack of such). // +optional LockID string `json:"lockID"` // Time since when lock is held // +optional LockedSince *metav1.Time `json:"lockedSince,omitempty"` }
TerraformStateStatus defines the observed state of TerraformState
func (*TerraformStateStatus) DeepCopy ¶
func (in *TerraformStateStatus) DeepCopy() *TerraformStateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformStateStatus.
func (*TerraformStateStatus) DeepCopyInto ¶
func (in *TerraformStateStatus) DeepCopyInto(out *TerraformStateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.