ekssetup

package
v0.4.10 Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2021 License: Apache-2.0 Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CheckStack

func CheckStack(sess *session.Session, StackName string) *awscf.DescribeStacksOutput

func Create_Master_sdk added in v0.4.9

func Create_Master_sdk(sess *session.Session, vpcsecuritygps []*string, vpcclustername string, vpcsubnets *string, ElementsSGIDs map[string]string, ElementsSubnetIDs map[string]string, file []byte, cluster string, s3 string, eksfileName string) (string, []*string, string)

func Create_NodeGroup_SDK added in v0.4.9

func Create_NodeGroup_SDK(sess *session.Session, nodelen int, MClusterName string, MSubnetIds []*string, ElementsSubnetIDs map[string]string, f []byte, cluster string)

func Create_SG added in v0.4.9

func Create_SG(sess *session.Session, SGNames []string, ClusterName string, CIDR string, sgpath string) ([]*string, map[string]string)

func Create_VPC

func Create_VPC(sess *session.Session, file []byte, cluster string, S3 string, VPCFilename string) (*string, string, string, map[string]string)

func Createcft

func Createcft(sess *session.Session, d cftvpc, stack []*awscf.Parameter) *awscf.CreateStackOutput

func ListStack

func ListStack(sess *session.Session, c cftvpc, stackcreate []*awscf.Parameter, stackupdate []*awscf.Parameter, Module string)

func ListStack_sdk added in v0.4.9

func ListStack_sdk(sess *session.Session, ClusterName string, NodegroupName string, Module string) (string, *eks.DescribeClusterOutput, *eks.DescribeNodegroupOutput, error, map[string]*string, []*eks.Taint)

func ReadEKSYaml

func ReadEKSYaml(f []byte, sf string, clustertype string, clustergreenfile []byte)

func UpdateStack

func UpdateStack(sess *session.Session, u cftvpc, stack []*awscf.Parameter) *awscf.UpdateStackOutput

func ValidateStack

func ValidateStack(sess *session.Session, TemplateURL string, ElementsCreate map[string]string, ElementsUpdate map[string]string) ([]*awscf.Parameter, []*awscf.Parameter)

Types

type Config

type Config struct {
	Key   string
	Value string
}

type EksMaster

type EksMaster struct {
	Master struct {
		KubernetesVersion     string      `yaml:"KubernetesVersion"`
		SecurityGroupIds      string      `yaml:"SecurityGroupIds"`
		SubnetIds             interface{} `yaml:"SubnetIds"`
		PrivateAccess         *bool       `yaml:"PrivateAccess"`
		PublicAccess          *bool       `yaml:"PublicAccess"`
		PublicCIDR            interface{} `yaml:"PublicCIDR"`
		Logging               interface{} `yaml:"Logging"`
		KMSKey                string      `yaml:"KMSKey"`
		Tags                  interface{} `yaml:"Tags"`
		KubernetesNetworkCIDR string      `yaml:"KubernetesNetworkCIDR"`
	} `yaml:"Master"`
}

type EksMasterSDK added in v0.4.9

type EksMasterSDK struct {
	Master struct {
		KubernetesVersion     string            `yaml:"KubernetesVersion"`
		SecurityGroupIds      []*string         `yaml:"SecurityGroupIds"`
		SubnetIds             []*string         `yaml:"SubnetIds"`
		PrivateAccess         *bool             `yaml:"PrivateAccess"`
		PublicAccess          *bool             `yaml:"PublicAccess"`
		PublicCIDR            []*string         `yaml:"PublicCIDR"`
		Logging               []*string         `yaml:"Logging"`
		KMSKey                *string           `yaml:"KMSKey"`
		Tags                  map[string]string `yaml:"Tags"`
		KubernetesNetworkCIDR string            `yaml:"KubernetesNetworkCIDR"`
	} `yaml:"Master"`
}

type EksVPC

type EksVPC struct {
	VPC struct {
		VpcBlock       string                      `yaml:"VpcBlock"`
		PublicSubnets  map[interface{}]interface{} `yaml:"PublicSubnets"`
		PrivateSubnets map[interface{}]interface{} `yaml:"PrivateSubnets"`
	} `yaml:"VPC"`
}

type NodeList

type NodeList struct {
	Nodes []Nodevalues `yaml:"Nodes"`
}

type Nodevalues

type Nodevalues struct {
	NodegroupName string            `yaml:"NodegroupName"`
	InstanceTypes []*string         `yaml:"InstanceTypes"`
	SubnetIds     []*string         `yaml:"SubnetIds"`
	SpotInstance  bool              `yaml:"SpotInstance"`
	DiskSize      string            `yaml:"DiskSize"`
	Labels        map[string]string `yaml:"Labels"`
	AmiType       string            `yaml:"AmiType"`
	Tags          map[string]string `yaml:"Tags"`
	ScalingConfig map[string]int    `yaml:"ScalingConfig"`
	RemoteAccess  RemoteAccess      `yaml:"RemoteAccess"`
	Taints        []Taints          `yaml:"Taints"`
}

type RemoteAccess added in v0.4.9

type RemoteAccess struct {
	//SSHKey string `yaml:"SSHKey"`
	SourceSecurityGroups []string `yaml:"SourceSecurityGroups"`
}

type SecurityGroup added in v0.4.9

type SecurityGroup struct {
	SecurityGroups struct {
		Names []string `yaml:"Names"`
	} `yaml:"SecurityGroups"`
}

type SecurityRules added in v0.4.9

type SecurityRules struct {
	Name   string `yaml:"Name"`
	Egress []struct {
		FromPort       int64    `yaml:"FromPort"`
		IPProtocal     string   `yaml:"IPProtocal"`
		IPRange        []string `yaml:"IPRange"`
		ToPort         int64    `yaml:"ToPort"`
		SecurityGroups []string `yaml:"SecurityGroups"`
	} `yaml:"Egress"`
	Ingress []struct {
		FromPort       int64    `yaml:"FromPort"`
		IPProtocal     string   `yaml:"IPProtocal"`
		IPRange        []string `yaml:"IPRange"`
		ToPort         int64    `yaml:"ToPort"`
		SecurityGroups []string `yaml:"SecurityGroups"`
	} `yaml:"Ingress"`
}

type Taints added in v0.4.9

type Taints struct {
	Effect string `yaml:"Effect"`
	Key    string `yaml:"Key"`
	Value  string `yaml:"Value"`
}

type YamlConvert

type YamlConvert struct {
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

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