aws

package
v0.4.3 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2024 License: MIT Imports: 32 Imported by: 1

Documentation

Overview

Copyright (C) 2021-2023, Kubefirst

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

This program is licensed under MIT. See the LICENSE file for more details.

Index

Constants

View Source
const (
	CloudProvider = "aws"
)

Variables

This section is empty.

Functions

func NewAwsV2

func NewAwsV2(region string) aws.Config

func NewAwsV3 added in v0.1.13

func NewAwsV3(region string, accessKeyID string, secretAccessKey string, sessionToken string) aws.Config

func NewClientset

func NewClientset(cluster *eks.Cluster) (*kubernetes.Clientset, error)

func NewRestConfig

func NewRestConfig(cluster *eks.Cluster) (*rest.Config, error)

Types

type ARecord

type ARecord struct {
	Name        string
	RecordType  string
	TTL         *int64
	AliasTarget *route53Types.AliasTarget
}

ARecord stores Route53 A record data

type AWSConfiguration

type AWSConfiguration struct {
	Config aws.Config
}

AWSConfiguration stores session data to organize all AWS functions into a single struct

func (*AWSConfiguration) CheckAvailabilityZones

func (conf *AWSConfiguration) CheckAvailabilityZones(region string) (bool, error)

CheckAvailabilityZones determines whether or not an aws region is compatible with the minimum availability zone requirement specified by consumption of aws Terraform modules

func (*AWSConfiguration) CreateBucket

func (conf *AWSConfiguration) CreateBucket(bucketName string) (*s3.CreateBucketOutput, error)

CreateBucket

func (*AWSConfiguration) DeleteBucket added in v0.1.28

func (conf *AWSConfiguration) DeleteBucket(bucketName string) error

DeleteBucket

func (*AWSConfiguration) DeleteEKSSecurityGroups

func (conf *AWSConfiguration) DeleteEKSSecurityGroups(region string, eksClusterName string) error

DeleteEKSSecurityGroups deletes security groups associated with an EKS cluster

func (*AWSConfiguration) DeleteElasticLoadBalancer

func (conf *AWSConfiguration) DeleteElasticLoadBalancer(elbdp ElbDeletionParameters) error

DeleteElasticLoadBalancer deletes an Elastic Load Balancer associated with an EKS cluster

func (*AWSConfiguration) DeleteSecurityGroup

func (conf *AWSConfiguration) DeleteSecurityGroup(region string, sgid string) error

DeleteSecurityGroup deletes a security group

func (*AWSConfiguration) GetCallerIdentity

func (conf *AWSConfiguration) GetCallerIdentity() (*sts.GetCallerIdentityOutput, error)

func (*AWSConfiguration) GetECRAuthToken

func (conf *AWSConfiguration) GetECRAuthToken() (string, error)

func (*AWSConfiguration) GetHostedZone added in v0.1.17

func (conf *AWSConfiguration) GetHostedZone(hostedZoneID string) (*route53.GetHostedZoneOutput, error)

GetHostedZone returns an object detailing a hosted zone

func (*AWSConfiguration) GetHostedZoneID

func (conf *AWSConfiguration) GetHostedZoneID(hostedZoneName string) (string, error)

GetHostedZoneID returns the ID of a hosted zone if valid

func (*AWSConfiguration) GetHostedZoneNameServers added in v0.1.65

func (conf *AWSConfiguration) GetHostedZoneNameServers(domainName string) (bool, []string, error)

GetHostedZoneNameServers returns nameservers for a hosted zone if available for private zones, nothing is returned

func (*AWSConfiguration) GetHostedZones added in v0.1.27

func (conf *AWSConfiguration) GetHostedZones() ([]string, error)

GetHostedZone returns an object detailing a hosted zone

func (*AWSConfiguration) GetIamRole

func (conf *AWSConfiguration) GetIamRole(roleName string) (*iam.GetRoleOutput, error)

func (*AWSConfiguration) GetKmsKeyID

func (conf *AWSConfiguration) GetKmsKeyID(keyAlias string) (string, error)

func (*AWSConfiguration) GetLoadBalancersForDeletion

func (conf *AWSConfiguration) GetLoadBalancersForDeletion(eksClusterName string) ([]ElbDeletionParameters, error)

GetLoadBalancersForDeletion gets all load balancers and returns details for a load balancer associated with the target EKS cluster

func (*AWSConfiguration) GetRegions added in v0.1.30

func (conf *AWSConfiguration) GetRegions(region string) ([]string, error)

GetRegions lists all available regions

func (*AWSConfiguration) GetServiceQuotas

func (conf *AWSConfiguration) GetServiceQuotas(services []string) (map[string][]QuotaDetailResponse, error)

GetServiceQuotas

func (*AWSConfiguration) ListBuckets

func (conf *AWSConfiguration) ListBuckets() (*s3.ListBucketsOutput, error)

func (*AWSConfiguration) ListCompatibleRegions

func (conf *AWSConfiguration) ListCompatibleRegions() ([]string, error)

ListCompatibleRegions returns aws regions that have the minimum number of availability zones required to support the kubefirst platform

func (*AWSConfiguration) ListInstanceSizesForRegion added in v0.3.26

func (conf *AWSConfiguration) ListInstanceSizesForRegion() ([]string, error)

func (*AWSConfiguration) ListQuotas

func (*AWSConfiguration) TestHostedZoneLiveness

func (conf *AWSConfiguration) TestHostedZoneLiveness(hostedZoneName string) bool

TestHostedZoneLiveness checks Route53 for the liveness test record

type ElbDeletionParameters

type ElbDeletionParameters struct {
	ElbName                 string
	ElbSourceSecurityGroups []string
}

ElbDeletionParameters describes an Elastic Load Balancer name and source security group to delete

type ElbTags

type ElbTags struct {
	Key   string
	Value string
}

ElbTags describes a pair of tags assigned to an Elastic Load Balancer

type QuotaDetailResponse

type QuotaDetailResponse struct {
	QuotaName  string
	QuotaValue float64
}

type TXTRecord

type TXTRecord struct {
	Name          string
	Value         string
	SetIdentifier *string
	Weight        *int64
	TTL           int64
}

TXTRecord stores Route53 TXT record data

Jump to

Keyboard shortcuts

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