v1alpha1

package
v0.5.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 15, 2024 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the config v1alpha1 API group +kubebuilder:object:generate=true +groupName=config.terraform.padok.cloud

Index

Constants

View Source
const (
	DefaultRunRetention int = 10
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "config.terraform.padok.cloud", 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

func GetApplyWithoutPlanArtifactEnabled added in v0.4.0

func GetApplyWithoutPlanArtifactEnabled(repository *TerraformRepository, layer *TerraformLayer) bool

func GetAutoApplyEnabled added in v0.4.0

func GetAutoApplyEnabled(repo *TerraformRepository, layer *TerraformLayer) bool

func GetOpenTofuEnabled added in v0.5.0

func GetOpenTofuEnabled(repository *TerraformRepository, layer *TerraformLayer) bool

func GetOpenTofuVersion added in v0.5.0

func GetOpenTofuVersion(repository *TerraformRepository, layer *TerraformLayer) string

func GetTerraformEnabled added in v0.5.0

func GetTerraformEnabled(repository *TerraformRepository, layer *TerraformLayer) bool

func GetTerraformVersion added in v0.2.0

func GetTerraformVersion(repository *TerraformRepository, layer *TerraformLayer) string

func GetTerragruntEnabled added in v0.2.0

func GetTerragruntEnabled(repository *TerraformRepository, layer *TerraformLayer) bool

func GetTerragruntVersion added in v0.2.0

func GetTerragruntVersion(repository *TerraformRepository, layer *TerraformLayer) string

Types

type Artifact added in v0.4.0

type Artifact struct {
	Run     string `json:"run,omitempty"`
	Attempt string `json:"attempt,omitempty"`
}

func (*Artifact) DeepCopy added in v0.4.0

func (in *Artifact) DeepCopy() *Artifact

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Artifact.

func (*Artifact) DeepCopyInto added in v0.4.0

func (in *Artifact) DeepCopyInto(out *Artifact)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Attempt added in v0.4.0

type Attempt struct {
	PodName      string `json:"podName"`
	Number       int    `json:"number"`
	LogsUploaded bool   `json:"logsUploaded,omitempty"`
}

func (*Attempt) DeepCopy added in v0.4.0

func (in *Attempt) DeepCopy() *Attempt

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Attempt.

func (*Attempt) DeepCopyInto added in v0.4.0

func (in *Attempt) DeepCopyInto(out *Attempt)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type MetadataOverride added in v0.2.0

type MetadataOverride struct {
	Annotations map[string]string `json:"annotations,omitempty"`
	Labels      map[string]string `json:"labels,omitempty"`
}

func (*MetadataOverride) DeepCopy added in v0.2.0

func (in *MetadataOverride) DeepCopy() *MetadataOverride

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetadataOverride.

func (*MetadataOverride) DeepCopyInto added in v0.2.0

func (in *MetadataOverride) DeepCopyInto(out *MetadataOverride)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OnErrorRemediationStrategy added in v0.3.0

type OnErrorRemediationStrategy struct {
	MaxRetries *int `json:"maxRetries,omitempty"`
}

func (*OnErrorRemediationStrategy) DeepCopy added in v0.3.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OnErrorRemediationStrategy.

func (*OnErrorRemediationStrategy) DeepCopyInto added in v0.3.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OpenTofuConfig added in v0.5.0

type OpenTofuConfig struct {
	Version string `json:"version,omitempty"`
	Enabled *bool  `json:"enabled,omitempty"`
}

func (*OpenTofuConfig) DeepCopy added in v0.5.0

func (in *OpenTofuConfig) DeepCopy() *OpenTofuConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OpenTofuConfig.

func (*OpenTofuConfig) DeepCopyInto added in v0.5.0

func (in *OpenTofuConfig) DeepCopyInto(out *OpenTofuConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OverrideRunnerSpec

type OverrideRunnerSpec struct {
	ImagePullSecrets   []corev1.LocalObjectReference `json:"imagePullSecrets,omitempty"`
	Image              string                        `json:"image,omitempty"`
	ImagePullPolicy    corev1.PullPolicy             `json:"imagePullPolicy,omitempty"`
	Tolerations        []corev1.Toleration           `json:"tolerations,omitempty"`
	NodeSelector       map[string]string             `json:"nodeSelector,omitempty"`
	ServiceAccountName string                        `json:"serviceAccountName,omitempty"`
	Resources          corev1.ResourceRequirements   `json:"resources,omitempty"`
	Env                []corev1.EnvVar               `json:"env,omitempty"`
	EnvFrom            []corev1.EnvFromSource        `json:"envFrom,omitempty"`
	Volumes            []corev1.Volume               `json:"volumes,omitempty"`
	VolumeMounts       []corev1.VolumeMount          `json:"volumeMounts,omitempty"`
	Metadata           MetadataOverride              `json:"metadata,omitempty"`
}

func GetOverrideRunnerSpec added in v0.2.0

func GetOverrideRunnerSpec(repository *TerraformRepository, layer *TerraformLayer) OverrideRunnerSpec

func (*OverrideRunnerSpec) DeepCopy

func (in *OverrideRunnerSpec) DeepCopy() *OverrideRunnerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverrideRunnerSpec.

func (*OverrideRunnerSpec) DeepCopyInto

func (in *OverrideRunnerSpec) DeepCopyInto(out *OverrideRunnerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RemediationStrategy

type RemediationStrategy struct {
	AutoApply                *bool                      `json:"autoApply,omitempty"`
	ApplyWithoutPlanArtifact *bool                      `json:"applyWithoutPlanArtifact,omitempty"`
	OnError                  OnErrorRemediationStrategy `json:"onError,omitempty"`
}

func (*RemediationStrategy) DeepCopy added in v0.3.0

func (in *RemediationStrategy) DeepCopy() *RemediationStrategy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemediationStrategy.

func (*RemediationStrategy) DeepCopyInto added in v0.3.0

func (in *RemediationStrategy) DeepCopyInto(out *RemediationStrategy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RunHistoryPolicy added in v0.3.0

type RunHistoryPolicy struct {
	KeepLastRuns *int `json:"runs,omitempty"`
}

func GetRunHistoryPolicy added in v0.3.0

func GetRunHistoryPolicy(repository *TerraformRepository, layer *TerraformLayer) RunHistoryPolicy

func (*RunHistoryPolicy) DeepCopy added in v0.3.0

func (in *RunHistoryPolicy) DeepCopy() *RunHistoryPolicy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RunHistoryPolicy.

func (*RunHistoryPolicy) DeepCopyInto added in v0.3.0

func (in *RunHistoryPolicy) DeepCopyInto(out *RunHistoryPolicy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformConfig added in v0.2.0

type TerraformConfig struct {
	Version string `json:"version,omitempty"`
	Enabled *bool  `json:"enabled,omitempty"`
}

func (*TerraformConfig) DeepCopy added in v0.2.0

func (in *TerraformConfig) DeepCopy() *TerraformConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformConfig.

func (*TerraformConfig) DeepCopyInto added in v0.2.0

func (in *TerraformConfig) DeepCopyInto(out *TerraformConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformLayer

type TerraformLayer struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TerraformLayerSpec   `json:"spec,omitempty"`
	Status TerraformLayerStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:shortName=layers;layer;tfls;tfl; +kubebuilder:subresource:status +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` +kubebuilder:printcolumn:name="Repository",type=string,JSONPath=`.spec.repository.name` +kubebuilder:printcolumn:name="Branch",type=string,JSONPath=`.spec.branch` +kubebuilder:printcolumn:name="Path",type=string,JSONPath=`.spec.path` +kubebuilder:printcolumn:name="Last Result",type=string,JSONPath=`.status.lastResult` TerraformLayer is the Schema for the terraformlayers API

func (*TerraformLayer) DeepCopy

func (in *TerraformLayer) DeepCopy() *TerraformLayer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayer.

func (*TerraformLayer) DeepCopyInto

func (in *TerraformLayer) DeepCopyInto(out *TerraformLayer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformLayer) DeepCopyObject

func (in *TerraformLayer) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TerraformLayer) GetAPIVersion added in v0.3.0

func (layer *TerraformLayer) GetAPIVersion() string

Workaround needed for envtest which does not populate the TypeMeta structure See https://github.com/kubernetes-sigs/controller-runtime/issues/1870

func (*TerraformLayer) GetKind added in v0.3.0

func (layer *TerraformLayer) GetKind() string

Same as above

type TerraformLayerList

type TerraformLayerList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TerraformLayer `json:"items"`
}

TerraformLayerList contains a list of TerraformLayer

func (*TerraformLayerList) DeepCopy

func (in *TerraformLayerList) DeepCopy() *TerraformLayerList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayerList.

func (*TerraformLayerList) DeepCopyInto

func (in *TerraformLayerList) DeepCopyInto(out *TerraformLayerList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformLayerList) DeepCopyObject

func (in *TerraformLayerList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TerraformLayerRepository

type TerraformLayerRepository struct {
	Name      string `json:"name,omitempty"`
	Namespace string `json:"namespace,omitempty"`
}

func (*TerraformLayerRepository) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayerRepository.

func (*TerraformLayerRepository) DeepCopyInto

func (in *TerraformLayerRepository) DeepCopyInto(out *TerraformLayerRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformLayerRun added in v0.4.0

type TerraformLayerRun struct {
	Name   string      `json:"name,omitempty"`
	Commit string      `json:"commit,omitempty"`
	Date   metav1.Time `json:"date,omitempty"`
	Action string      `json:"action,omitempty"`
}

func (*TerraformLayerRun) DeepCopy added in v0.4.0

func (in *TerraformLayerRun) DeepCopy() *TerraformLayerRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayerRun.

func (*TerraformLayerRun) DeepCopyInto added in v0.4.0

func (in *TerraformLayerRun) DeepCopyInto(out *TerraformLayerRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformLayerSpec

type TerraformLayerSpec struct {
	Path                string                   `json:"path,omitempty"`
	Branch              string                   `json:"branch,omitempty"`
	TerraformConfig     TerraformConfig          `json:"terraform,omitempty"`
	OpenTofuConfig      OpenTofuConfig           `json:"opentofu,omitempty"`
	TerragruntConfig    TerragruntConfig         `json:"terragrunt,omitempty"`
	Repository          TerraformLayerRepository `json:"repository,omitempty"`
	RemediationStrategy RemediationStrategy      `json:"remediationStrategy,omitempty"`
	OverrideRunnerSpec  OverrideRunnerSpec       `json:"overrideRunnerSpec,omitempty"`
	RunHistoryPolicy    RunHistoryPolicy         `json:"runHistoryPolicy,omitempty"`
}

TerraformLayerSpec defines the desired state of TerraformLayer +kubebuilder:validation:XValidation:rule="!(has(self.terraform) && has(self.opentofu) && has(self.terraform.enabled) && has(self.opentofu.enabled) && self.terraform.enabled == true && self.opentofu.enabled == true)",message="Both terraform.enabled and opentofu.enabled cannot be true at the same time" +kubebuilder:validation:XValidation:rule="!(has(self.terraform) && has(self.opentofu) && has(self.terraform.enabled) && has(self.opentofu.enabled) && self.terraform.enabled == false && self.opentofu.enabled == false)",message="Both terraform.enabled and opentofu.enabled cannot be false at the same time"

func (*TerraformLayerSpec) DeepCopy

func (in *TerraformLayerSpec) DeepCopy() *TerraformLayerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayerSpec.

func (*TerraformLayerSpec) DeepCopyInto

func (in *TerraformLayerSpec) DeepCopyInto(out *TerraformLayerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformLayerStatus

type TerraformLayerStatus struct {
	Conditions []metav1.Condition  `json:"conditions,omitempty"`
	State      string              `json:"state,omitempty"`
	LastResult string              `json:"lastResult,omitempty"`
	LastRun    TerraformLayerRun   `json:"lastRun,omitempty"`
	LatestRuns []TerraformLayerRun `json:"latestRuns,omitempty"`
}

TerraformLayerStatus defines the observed state of TerraformLayer

func (*TerraformLayerStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformLayerStatus.

func (*TerraformLayerStatus) DeepCopyInto

func (in *TerraformLayerStatus) DeepCopyInto(out *TerraformLayerStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformPullRequest added in v0.2.0

type TerraformPullRequest struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TerraformPullRequestSpec   `json:"spec,omitempty"`
	Status TerraformPullRequestStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:shortName=pr;prs;pullrequest;pullrequests; +kubebuilder:subresource:status +kubebuilder:printcolumn:name="ID",type=string,JSONPath=`.spec.id` +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` +kubebuilder:printcolumn:name="Provider",type=string,JSONPath=`.spec.provider` +kubebuilder:printcolumn:name="Base",type=string,JSONPath=`.spec.base` +kubebuilder:printcolumn:name="Branch",type=string,JSONPath=`.spec.branch` TerraformPullRequest is the Schema for the TerraformPullRequests API

func (*TerraformPullRequest) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPullRequest.

func (*TerraformPullRequest) DeepCopyInto added in v0.2.0

func (in *TerraformPullRequest) DeepCopyInto(out *TerraformPullRequest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformPullRequest) DeepCopyObject added in v0.2.0

func (in *TerraformPullRequest) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TerraformPullRequest) GetAPIVersion added in v0.2.0

func (pr *TerraformPullRequest) GetAPIVersion() string

Workaround needed for envtest which does not populate the TypeMeta structure See https://github.com/kubernetes-sigs/controller-runtime/issues/1870

func (*TerraformPullRequest) GetKind added in v0.2.0

func (pr *TerraformPullRequest) GetKind() string

Same as above

type TerraformPullRequestList added in v0.2.0

type TerraformPullRequestList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TerraformPullRequest `json:"items"`
}

TerraformPullRequestList contains a list of TerraformPullRequest

func (*TerraformPullRequestList) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPullRequestList.

func (*TerraformPullRequestList) DeepCopyInto added in v0.2.0

func (in *TerraformPullRequestList) DeepCopyInto(out *TerraformPullRequestList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformPullRequestList) DeepCopyObject added in v0.2.0

func (in *TerraformPullRequestList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TerraformPullRequestSpec added in v0.2.0

type TerraformPullRequestSpec struct {
	Provider   string                   `json:"provider,omitempty"`
	Branch     string                   `json:"branch,omitempty"`
	Base       string                   `json:"base,omitempty"`
	ID         string                   `json:"id,omitempty"`
	Repository TerraformLayerRepository `json:"repository,omitempty"`
}

TerraformPullRequestSpec defines the desired state of TerraformPullRequest

func (*TerraformPullRequestSpec) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPullRequestSpec.

func (*TerraformPullRequestSpec) DeepCopyInto added in v0.2.0

func (in *TerraformPullRequestSpec) DeepCopyInto(out *TerraformPullRequestSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformPullRequestStatus added in v0.2.0

type TerraformPullRequestStatus struct {
	Conditions           []metav1.Condition `json:"conditions,omitempty"`
	State                string             `json:"state,omitempty"`
	LastDiscoveredCommit string             `json:"lastDiscoveredCommit,omitempty"`
	LastCommentedCommit  string             `json:"lastCommentedCommit,omitempty"`
}

TerraformPullRequestStatus defines the observed state of TerraformPullRequest

func (*TerraformPullRequestStatus) DeepCopy added in v0.2.0

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformPullRequestStatus.

func (*TerraformPullRequestStatus) DeepCopyInto added in v0.2.0

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepository

type TerraformRepository struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TerraformRepositorySpec   `json:"spec,omitempty"`
	Status TerraformRepositoryStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:shortName=repositories;repository;repo;tfrs;tfr; +kubebuilder:subresource:status +kubebuilder:printcolumn:name="URL",type=string,JSONPath=`.spec.repository.url` TerraformRepository is the Schema for the terraformrepositories API

func (*TerraformRepository) DeepCopy

func (in *TerraformRepository) DeepCopy() *TerraformRepository

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepository.

func (*TerraformRepository) DeepCopyInto

func (in *TerraformRepository) DeepCopyInto(out *TerraformRepository)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRepository) DeepCopyObject

func (in *TerraformRepository) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TerraformRepositoryList

type TerraformRepositoryList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TerraformRepository `json:"items"`
}

TerraformRepositoryList contains a list of TerraformRepository

func (*TerraformRepositoryList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryList.

func (*TerraformRepositoryList) DeepCopyInto

func (in *TerraformRepositoryList) DeepCopyInto(out *TerraformRepositoryList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRepositoryList) DeepCopyObject

func (in *TerraformRepositoryList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TerraformRepositoryRepository

type TerraformRepositoryRepository struct {
	Url        string `json:"url,omitempty"`
	SecretName string `json:"secretName,omitempty"`
}

func (*TerraformRepositoryRepository) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryRepository.

func (*TerraformRepositoryRepository) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositorySpec

type TerraformRepositorySpec struct {
	Repository          TerraformRepositoryRepository `json:"repository,omitempty"`
	TerraformConfig     TerraformConfig               `json:"terraform,omitempty"`
	TerragruntConfig    TerragruntConfig              `json:"terragrunt,omitempty"`
	OpenTofuConfig      OpenTofuConfig                `json:"opentofu,omitempty"`
	RemediationStrategy RemediationStrategy           `json:"remediationStrategy,omitempty"`
	OverrideRunnerSpec  OverrideRunnerSpec            `json:"overrideRunnerSpec,omitempty"`
	RunHistoryPolicy    RunHistoryPolicy              `json:"runHistoryPolicy,omitempty"`
}

TerraformRepositorySpec defines the desired state of TerraformRepository +kubebuilder:validation:XValidation:rule="!(has(self.terraform) && has(self.opentofu) && has(self.terraform.enabled) && has(self.opentofu.enabled) && self.terraform.enabled == true && self.opentofu.enabled == true)",message="Both terraform.enabled and opentofu.enabled cannot be true at the same time" +kubebuilder:validation:XValidation:rule="!(has(self.terraform) && has(self.opentofu) && has(self.terraform.enabled) && has(self.opentofu.enabled) && self.terraform.enabled == false && self.opentofu.enabled == false)",message="Both terraform.enabled and opentofu.enabled cannot be false at the same time"

func (*TerraformRepositorySpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositorySpec.

func (*TerraformRepositorySpec) DeepCopyInto

func (in *TerraformRepositorySpec) DeepCopyInto(out *TerraformRepositorySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRepositoryStatus

type TerraformRepositoryStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type" protobuf:"bytes,1,rep,name=conditions"`
}

TerraformRepositoryStatus defines the observed state of TerraformRepository

func (*TerraformRepositoryStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRepositoryStatus.

func (*TerraformRepositoryStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRun added in v0.3.0

type TerraformRun struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   TerraformRunSpec   `json:"spec,omitempty"`
	Status TerraformRunStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:resource:shortName=runs;run;tfruns;tfrun; +kubebuilder:subresource:status +kubebuilder:printcolumn:name="State",type=string,JSONPath=`.status.state` +kubebuilder:printcolumn:name="Retries",type=integer,JSONPath=`.status.retries` +kubebuilder:printcolumn:name="Created On",type=string,JSONPath=`.metadata.creationTimestamp` +kubebuilder:printcolumn:name="Runner Pod",type=string,JSONPath=`.status.runnerPod` TerraformRun is the Schema for the terraformRuns API

func (*TerraformRun) DeepCopy added in v0.3.0

func (in *TerraformRun) DeepCopy() *TerraformRun

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRun.

func (*TerraformRun) DeepCopyInto added in v0.3.0

func (in *TerraformRun) DeepCopyInto(out *TerraformRun)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRun) DeepCopyObject added in v0.3.0

func (in *TerraformRun) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*TerraformRun) GetAPIVersion added in v0.3.0

func (run *TerraformRun) GetAPIVersion() string

Workaround needed for envtest which does not populate the TypeMeta structure See https://github.com/kubernetes-sigs/controller-runtime/issues/1870

func (*TerraformRun) GetKind added in v0.3.0

func (run *TerraformRun) GetKind() string

Same as above

type TerraformRunLayer added in v0.3.0

type TerraformRunLayer struct {
	Name      string `json:"name,omitempty"`
	Namespace string `json:"namespace,omitempty"`
}

func (*TerraformRunLayer) DeepCopy added in v0.3.0

func (in *TerraformRunLayer) DeepCopy() *TerraformRunLayer

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRunLayer.

func (*TerraformRunLayer) DeepCopyInto added in v0.3.0

func (in *TerraformRunLayer) DeepCopyInto(out *TerraformRunLayer)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRunList added in v0.3.0

type TerraformRunList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []TerraformRun `json:"items"`
}

TerraformRunList contains a list of TerraformRun

func (*TerraformRunList) DeepCopy added in v0.3.0

func (in *TerraformRunList) DeepCopy() *TerraformRunList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRunList.

func (*TerraformRunList) DeepCopyInto added in v0.3.0

func (in *TerraformRunList) DeepCopyInto(out *TerraformRunList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*TerraformRunList) DeepCopyObject added in v0.3.0

func (in *TerraformRunList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type TerraformRunSpec added in v0.3.0

type TerraformRunSpec struct {
	Action   string            `json:"action,omitempty"`
	Artifact Artifact          `json:"artifact,omitempty"`
	Layer    TerraformRunLayer `json:"layer,omitempty"`
}

TerraformRunSpec defines the desired state of TerraformRun

func (*TerraformRunSpec) DeepCopy added in v0.3.0

func (in *TerraformRunSpec) DeepCopy() *TerraformRunSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRunSpec.

func (*TerraformRunSpec) DeepCopyInto added in v0.3.0

func (in *TerraformRunSpec) DeepCopyInto(out *TerraformRunSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerraformRunStatus added in v0.3.0

type TerraformRunStatus struct {
	Conditions []metav1.Condition `json:"conditions,omitempty"`
	State      string             `json:"state,omitempty"`
	Retries    int                `json:"retries"`
	LastRun    string             `json:"lastRun,omitempty"`
	Attempts   []Attempt          `json:"attempts,omitempty"`
	RunnerPod  string             `json:"runnerPod,omitempty"`
}

TerraformRunStatus defines the observed state of TerraformRun

func (*TerraformRunStatus) DeepCopy added in v0.3.0

func (in *TerraformRunStatus) DeepCopy() *TerraformRunStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerraformRunStatus.

func (*TerraformRunStatus) DeepCopyInto added in v0.3.0

func (in *TerraformRunStatus) DeepCopyInto(out *TerraformRunStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TerragruntConfig added in v0.2.0

type TerragruntConfig struct {
	Version string `json:"version,omitempty"`
	Enabled *bool  `json:"enabled,omitempty"`
}

func (*TerragruntConfig) DeepCopy added in v0.2.0

func (in *TerragruntConfig) DeepCopy() *TerragruntConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TerragruntConfig.

func (*TerragruntConfig) DeepCopyInto added in v0.2.0

func (in *TerragruntConfig) DeepCopyInto(out *TerragruntConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL