aws

package
v0.122.0 Latest Latest
Warning

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

Go to latest
Published: Jan 7, 2025 License: MIT Imports: 36 Imported by: 0

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, error)

func NewAwsV3

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

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 Configuration added in v0.106.0

type Configuration struct {
	Config aws.Config
}

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

func New added in v0.106.0

func New() (*Configuration, error)

New instantiates a new AWS configuration

func (*Configuration) CheckAvailabilityZones added in v0.106.0

func (conf *Configuration) 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 (*Configuration) CreateBucket added in v0.106.0

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

CreateBucket

func (*Configuration) DeleteBucket added in v0.106.0

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

DeleteBucket

func (*Configuration) DeleteEKSSecurityGroups added in v0.106.0

func (conf *Configuration) DeleteEKSSecurityGroups(region string, clusterName string) error

DeleteEKSSecurityGroups deletes security groups associated with an EKS cluster

func (*Configuration) DeleteElasticLoadBalancer added in v0.106.0

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

DeleteElasticLoadBalancer deletes an Elastic Load Balancer associated with an EKS cluster

func (*Configuration) DeleteSecurityGroup added in v0.106.0

func (conf *Configuration) DeleteSecurityGroup(region string, sgID string) error

DeleteSecurityGroup deletes a security group

func (*Configuration) GetCallerIdentity added in v0.106.0

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

func (*Configuration) GetECRAuthToken added in v0.106.0

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

func (*Configuration) GetHostedZone added in v0.106.0

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

GetHostedZone returns an object detailing a hosted zone

func (*Configuration) GetHostedZoneID added in v0.106.0

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

GetHostedZoneID returns the ID of a hosted zone if valid

func (*Configuration) GetHostedZoneNameServers added in v0.106.0

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

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

func (*Configuration) GetHostedZones added in v0.106.0

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

GetHostedZone returns an object detailing a hosted zone

func (*Configuration) GetIamRole added in v0.106.0

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

func (*Configuration) GetKmsKeyID added in v0.106.0

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

func (*Configuration) GetLoadBalancersForDeletion added in v0.106.0

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

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

func (*Configuration) GetRegions added in v0.106.0

func (conf *Configuration) GetRegions() ([]string, error)

GetRegions lists all available regions

func (*Configuration) GetServiceQuotas added in v0.106.0

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

GetServiceQuotas

func (*Configuration) ListBuckets added in v0.106.0

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

func (*Configuration) ListCompatibleRegions added in v0.106.0

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

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

func (*Configuration) ListInstanceSizesForRegion added in v0.106.0

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

func (*Configuration) ListQuotas added in v0.106.0

func (conf *Configuration) ListQuotas() (*servicequotas.GetServiceQuotaOutput, error)

func (*Configuration) Route53AlterResourceRecord added in v0.106.0

func (conf *Configuration) Route53AlterResourceRecord(r *Route53AlterResourceRecord) (*route53.ChangeResourceRecordSetsOutput, error)

Route53AlterResourceRecord simplifies manipulation of Route53 records

func (*Configuration) Route53ListARecords added in v0.106.0

func (conf *Configuration) Route53ListARecords(hostedZoneID string) ([]ARecord, error)

Route53ListARecords retrieves all DNS A records for a hosted zone

func (*Configuration) Route53ListTXTRecords added in v0.106.0

func (conf *Configuration) Route53ListTXTRecords(hostedZoneID string) ([]TXTRecord, error)

Route53ListTXTRecords retrieves all DNS TXT record type for a hosted zone

func (*Configuration) TestHostedZoneLiveness added in v0.106.0

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

TestHostedZoneLiveness checks Route53 for the liveness test record

func (*Configuration) TestHostedZoneLivenessWithTxtRecords added in v0.106.0

func (conf *Configuration) TestHostedZoneLivenessWithTxtRecords(hostedZoneName string) (bool, error)

TestHostedZoneLivenessWithTxtRecords determines whether or not a target hosted zone is initialized and ready to accept records

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 Route53AlterResourceRecord added in v0.106.0

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

type TXTRecord

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

Jump to

Keyboard shortcuts

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