Documentation ¶
Index ¶
- Constants
- Variables
- func AWSSessionFromCluster(cluster *Cluster) *session.Session
- func ResourceCluster() *schema.Resource
- func StatusToCreateRuleInput(listenerARN string, listenerStatus *courier.ListenerStatus) (*elbv2.CreateRuleInput, error)
- type ALBRouter
- type CanaryConfig
- type CheckPodsReadiness
- type Cluster
- type ClusterName
- type ClusterSet
- type ClusterState
- type DeleteKubernetesResource
- type EksctlClusterConfig
- type IAM
- type Identity
- type ListenerStatuses
- type LiveClusterInfo
- type Manager
- type NodeGroup
- type Oidc
- type ResourcesVpcConfig
- type Subnet
- type Subnets
- type VPC
Constants ¶
View Source
const ( KeyTargetGroupARNs = "target_group_arns" KeyOIDCProviderURL = "oidc_provider_url" KeyOIDCProviderARN = "oidc_provider_arn" KeySecurityGroupIDs = "security_group_ids" )
View Source
const ( TagKeyNodeGroupName = "tf-eksctl/node-group" TagKeyClusterNamePrefix = "tf-eksctl/cluster" )
View Source
const DefaultAPIVersion = "eksctl.io/v1alpha5"
View Source
const DefaultVersion = "1.16"
View Source
const KeyALBAttachment = "alb_attachment"
View Source
const KeyAPIVersion = "api_version"
View Source
const KeyAWSAuthConfigMap = "aws_auth_configmap"
View Source
const KeyBin = "eksctl_bin"
View Source
const KeyDrainNodeGroups = "drain_node_groups"
View Source
const KeyEksctlVersion = "eksctl_version"
View Source
const KeyIAMIdentityMapping = "iam_identity_mapping"
View Source
const KeyKubeconfigPath = "kubeconfig_path"
View Source
const KeyKubectlBin = "kubectl_bin"
View Source
const KeyKubernetesResourceDeletionBeforeDestroy = "kubernetes_resource_deletion_before_destroy"
View Source
const KeyManifests = "manifests"
View Source
const KeyMetrics = "metrics"
View Source
const KeyName = "name"
View Source
const KeyPodsReadinessCheck = "pods_readiness_check"
View Source
const KeyProfile = "profile"
View Source
const KeyRegion = "region"
View Source
const KeyRevision = "revision"
View Source
const KeySpec = "spec"
View Source
const KeyTags = "tags"
View Source
const KeyVPCID = "vpc_id"
View Source
const KeyVersion = "version"
Variables ¶
View Source
var ValidDeleteK8sResourceKinds = []string{"deployment", "deploy", "pod", "service", "svc", "statefulset", "job"}
Functions ¶
func AWSSessionFromCluster ¶
func ResourceCluster ¶
func StatusToCreateRuleInput ¶
func StatusToCreateRuleInput(listenerARN string, listenerStatus *courier.ListenerStatus) (*elbv2.CreateRuleInput, error)
Types ¶
type ALBRouter ¶
type ALBRouter struct { ELBV2 elbv2iface.ELBV2API Analyzers []*courier.Analyzer }
func (*ALBRouter) SwitchTargetGroup ¶
func (m *ALBRouter) SwitchTargetGroup(listenerStatuses ListenerStatuses, opts courier.CanaryOpts) error
type CanaryConfig ¶
type CheckPodsReadiness ¶
type CheckPodsReadiness struct {
// contains filtered or unexported fields
}
type Cluster ¶
type Cluster struct { EksctlBin string KubectlBin string Name string Region string Profile string APIVersion string Version string VPCID string Spec string Output string Manifests []string // EksctlVersion lets the provider to install the eksctl binary for the specified versino using shoal EksctlVersion string CheckPodsReadinessConfigs []CheckPodsReadiness DeleteKubernetesResourcesBeforeDestroy []DeleteKubernetesResource PublicSubnetIDs []string PrivateSubnetIDs []string ALBAttachments []courier.ALBAttachment TargetGroupARNs []string Metrics []courier.Metric AssumeRoleConfig *sdk.AssumeRoleConfig }
func (Cluster) GitOpsEnabled ¶
func (Cluster) IAMWithOIDCEnabled ¶
type ClusterName ¶
type ClusterName string
type ClusterSet ¶
type ClusterSet struct { ClusterID string ClusterName ClusterName Cluster *Cluster ClusterConfig []byte ListenerStatuses ListenerStatuses CanaryOpts courier.CanaryOpts }
type ClusterState ¶
type ClusterState struct { Name string `json:"Name"` Identity Identity `json:"Identity"` RoleArn string `json:"RoleArn"` ResourcesVpcConfig ResourcesVpcConfig `json:"ResourcesVpcConfig"` }
func (*ClusterState) GetOIDCProviderARN ¶
func (s *ClusterState) GetOIDCProviderARN() string
func (*ClusterState) GetSecurityGroupIDs ¶
func (s *ClusterState) GetSecurityGroupIDs() []string
type EksctlClusterConfig ¶
type EksctlClusterConfig struct { VPC VPC `yaml:"vpc"` NodeGroups []NodeGroup `yaml:"nodeGroups"` // omitempty is required from eksctl-perspective. Otherwise, eksctl fails due to `git.repo.url is required` error // on `git: {}` in the generated cluster.yaml. Git map[string]interface{} `yaml:"git,omitempty"` Rest map[string]interface{} `yaml:",inline"` IAM IAM `yaml:"iam"` }
type ListenerStatuses ¶
type ListenerStatuses = map[string]courier.ListenerStatus
the key is listener ARN
type LiveClusterInfo ¶
type Manager ¶
type Manager struct {
DisableClusterNameSuffix bool
}
func (*Manager) PrepareClusterSet ¶
func (m *Manager) PrepareClusterSet(d api.UniqueResourceGetter, optNewId ...string) (*ClusterSet, error)
type ResourcesVpcConfig ¶
Source Files ¶
- alb.go
- attach.go
- aws_session.go
- binary_eksctl.go
- cluster.go
- cluster_create.go
- cluster_delete.go
- cluster_k8s_vesrion.go
- cluster_read.go
- cluster_update.go
- command_eksctl.go
- context.go
- delete_k8s_resources.go
- import.go
- k8s_manifests.go
- pods_readiness.go
- resource.go
- resource_read.go
- target_group.go
- traffic_shift.go
- vpc.go
Click to show internal directories.
Click to hide internal directories.