resources

package
v0.35.0 Latest Latest
Warning

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

Go to latest
Published: Apr 8, 2024 License: MIT Imports: 107 Imported by: 2

Documentation

Index

Constants

View Source
const AwsResourceExclusionTagKey = "cloud-nuke-excluded"

Variables

View Source
var MaxResultCount = int64(10)

Functions

func DescribeDefaultSecurityGroups

func DescribeDefaultSecurityGroups(svc ec2iface.EC2API) ([]string, error)

func GetDefaultVpcId

func GetDefaultVpcId(vpc Vpc) (string, error)

func GetEc2ServiceClient

func GetEc2ServiceClient(region string) ec2iface.EC2API

func NukeDefaultSecurityGroupRules

func NukeDefaultSecurityGroupRules(sgs []DefaultSecurityGroup) error

func NukeVpcs

func NukeVpcs(vpcs []Vpc) error

func ShouldIncludeVpcEndpoint added in v0.35.0

func ShouldIncludeVpcEndpoint(endpoint *ec2.VpcEndpoint, firstSeenTime *time.Time, configObj config.Config) bool

func SnapshotHasAWSBackupTag

func SnapshotHasAWSBackupTag(tags []*ec2.Tag) bool

Check if the image has an AWS Backup tag Resources created by AWS Backup are listed as owned by self, but are actually AWS managed resources and cannot be deleted here.

Types

type ACM

type ACM struct {
	BaseAwsResource
	Client acmiface.ACMAPI
	Region string
	ARNs   []string
}

ACMPA - represents all ACMPA

func (*ACM) GetAndSetIdentifiers

func (a *ACM) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ACM) Init

func (a *ACM) Init(session *session.Session)

func (*ACM) MaxBatchSize

func (a *ACM) MaxBatchSize() int

func (*ACM) Nuke

func (a *ACM) Nuke(arns []string) error

Nuke - nuke 'em all!!!

func (*ACM) ResourceIdentifiers

func (a *ACM) ResourceIdentifiers() []string

ResourceIdentifiers - the arns of the aws certificate manager certificates

func (*ACM) ResourceName

func (a *ACM) ResourceName() string

ResourceName - the simple name of the aws resource

type ACMPCA

type ACMPCA struct {
	BaseAwsResource
	Client acmpcaiface.ACMPCAAPI
	Region string
	ARNs   []string
}

ACMPA - represents all ACMPA

func (*ACMPCA) GetAndSetIdentifiers

func (ap *ACMPCA) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ACMPCA) Init

func (ap *ACMPCA) Init(session *session.Session)

func (*ACMPCA) MaxBatchSize

func (ap *ACMPCA) MaxBatchSize() int

func (*ACMPCA) Nuke

func (ap *ACMPCA) Nuke(arns []string) error

Nuke - nuke 'em all!!!

func (*ACMPCA) ResourceIdentifiers

func (ap *ACMPCA) ResourceIdentifiers() []string

ResourceIdentifiers - The volume ids of the ebs volumes

func (*ACMPCA) ResourceName

func (ap *ACMPCA) ResourceName() string

ResourceName - the simple name of the aws resource

type AMIs

type AMIs struct {
	BaseAwsResource
	Client   ec2iface.EC2API
	Region   string
	ImageIds []string
}

AMIs - represents all user owned AMIs

func (*AMIs) GetAndSetIdentifiers

func (ami *AMIs) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*AMIs) Init

func (ami *AMIs) Init(session *session.Session)

func (*AMIs) MaxBatchSize

func (ami *AMIs) MaxBatchSize() int

func (*AMIs) Nuke

func (ami *AMIs) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*AMIs) ResourceIdentifiers

func (ami *AMIs) ResourceIdentifiers() []string

ResourceIdentifiers - The AMI image ids

func (*AMIs) ResourceName

func (ami *AMIs) ResourceName() string

ResourceName - the simple name of the aws resource

type ASGroups

type ASGroups struct {
	BaseAwsResource
	Client     autoscalingiface.AutoScalingAPI
	Region     string
	GroupNames []string
}

ASGroups - represents all auto scaling groups

func (*ASGroups) GetAndSetIdentifiers

func (ag *ASGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ASGroups) Init

func (ag *ASGroups) Init(session *session.Session)

func (*ASGroups) MaxBatchSize

func (ag *ASGroups) MaxBatchSize() int

func (*ASGroups) Nuke

func (ag *ASGroups) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*ASGroups) ResourceIdentifiers

func (ag *ASGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The group names of the auto scaling groups

func (*ASGroups) ResourceName

func (ag *ASGroups) ResourceName() string

ResourceName - the simple name of the aws resource

type AccessAnalyzer

type AccessAnalyzer struct {
	BaseAwsResource
	Client        accessanalyzeriface.AccessAnalyzerAPI
	Region        string
	AnalyzerNames []string
}

AccessAnalyzer - represents all AWS secrets manager secrets that should be deleted.

func (*AccessAnalyzer) GetAndSetIdentifiers

func (analyzer *AccessAnalyzer) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*AccessAnalyzer) Init

func (analyzer *AccessAnalyzer) Init(session *session.Session)

func (*AccessAnalyzer) MaxBatchSize

func (analyzer *AccessAnalyzer) MaxBatchSize() int

func (*AccessAnalyzer) Nuke

func (analyzer *AccessAnalyzer) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*AccessAnalyzer) ResourceIdentifiers

func (analyzer *AccessAnalyzer) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*AccessAnalyzer) ResourceName

func (analyzer *AccessAnalyzer) ResourceName() string

ResourceName - the simple name of the aws resource

type ApiGateway

type ApiGateway struct {
	BaseAwsResource
	Client apigatewayiface.APIGatewayAPI
	Region string
	Ids    []string
}

func (*ApiGateway) GetAndSetIdentifiers

func (gateway *ApiGateway) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ApiGateway) Init

func (gateway *ApiGateway) Init(session *session.Session)

func (*ApiGateway) MaxBatchSize

func (gateway *ApiGateway) MaxBatchSize() int

func (*ApiGateway) Nuke

func (gateway *ApiGateway) Nuke(identifiers []string) error

func (*ApiGateway) ResourceIdentifiers

func (gateway *ApiGateway) ResourceIdentifiers() []string

func (*ApiGateway) ResourceName

func (gateway *ApiGateway) ResourceName() string

type ApiGatewayV2

type ApiGatewayV2 struct {
	BaseAwsResource
	Client apigatewayv2iface.ApiGatewayV2API
	Region string
	Ids    []string
}

func (*ApiGatewayV2) GetAndSetIdentifiers

func (gw *ApiGatewayV2) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ApiGatewayV2) Init

func (gw *ApiGatewayV2) Init(session *session.Session)

func (*ApiGatewayV2) MaxBatchSize

func (gw *ApiGatewayV2) MaxBatchSize() int

func (*ApiGatewayV2) Nuke

func (gw *ApiGatewayV2) Nuke(identifiers []string) error

func (*ApiGatewayV2) ResourceIdentifiers

func (gw *ApiGatewayV2) ResourceIdentifiers() []string

func (*ApiGatewayV2) ResourceName

func (gw *ApiGatewayV2) ResourceName() string

type BackupVault

type BackupVault struct {
	BaseAwsResource
	Client backupiface.BackupAPI
	Region string
	Names  []string
}

func (*BackupVault) GetAndSetIdentifiers

func (bv *BackupVault) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*BackupVault) Init

func (bv *BackupVault) Init(session *session.Session)

func (*BackupVault) MaxBatchSize

func (bv *BackupVault) MaxBatchSize() int

func (*BackupVault) Nuke

func (bv *BackupVault) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*BackupVault) ResourceIdentifiers

func (bv *BackupVault) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*BackupVault) ResourceName

func (bv *BackupVault) ResourceName() string

ResourceName - the simple name of the aws resource

type BaseAwsResource added in v0.34.0

type BaseAwsResource struct {
	// A key-value of identifiers and nukable status
	Nukables map[string]error
	Timeout  time.Duration
	Context  context.Context
	// contains filtered or unexported fields
}

BaseAwsResource struct and its associated methods to serve as a placeholder or template for a resource that is not yet fully implemented within a system or framework. Its purpose is to provide a skeleton structure that adheres to a specific interface or contract expected by the system without containing the actual implementation details.

func (*BaseAwsResource) GetAndSetIdentifiers added in v0.34.0

func (br *BaseAwsResource) GetAndSetIdentifiers(_ context.Context, _ config.Config) ([]string, error)

func (*BaseAwsResource) GetAndSetResourceConfig added in v0.35.0

func (br *BaseAwsResource) GetAndSetResourceConfig(_ config.Config) config.ResourceType

func (*BaseAwsResource) GetNukableStatus added in v0.34.0

func (br *BaseAwsResource) GetNukableStatus(identifier string) (error, bool)

func (*BaseAwsResource) Init added in v0.34.0

func (br *BaseAwsResource) Init(_ *session.Session)

func (*BaseAwsResource) IsNukable added in v0.34.0

func (br *BaseAwsResource) IsNukable(identifier string) (bool, error)

func (*BaseAwsResource) MaxBatchSize added in v0.34.0

func (br *BaseAwsResource) MaxBatchSize() int

func (*BaseAwsResource) Nuke added in v0.34.0

func (br *BaseAwsResource) Nuke(_ []string) error

func (*BaseAwsResource) PrepareContext added in v0.35.0

func (br *BaseAwsResource) PrepareContext(parentContext context.Context, resourceConfig config.ResourceType) error

func (*BaseAwsResource) ResourceIdentifiers added in v0.34.0

func (br *BaseAwsResource) ResourceIdentifiers() []string

func (*BaseAwsResource) ResourceName added in v0.34.0

func (br *BaseAwsResource) ResourceName() string

func (*BaseAwsResource) SetNukableStatus added in v0.34.0

func (br *BaseAwsResource) SetNukableStatus(identifier string, err error)

func (*BaseAwsResource) VerifyNukablePermissions added in v0.34.0

func (br *BaseAwsResource) VerifyNukablePermissions(ids []*string, nukableCheckfn func(id *string) error)

VerifyNukablePermissions performs nukable permission verification for each ID. For each ID, the function is executed, and the result (error or success) is recorded using the SetNukableStatus method, indicating whether the specified action is nukable

type CacheClusterType

type CacheClusterType string
const (
	Replication CacheClusterType = "replication"
	Single      CacheClusterType = "single"
)

type CloudWatchAlarms

type CloudWatchAlarms struct {
	BaseAwsResource
	Client     cloudwatchiface.CloudWatchAPI
	Region     string
	AlarmNames []string
}

CloudWatchAlarms - represents all CloudWatchAlarms that should be deleted.

func (*CloudWatchAlarms) GetAndSetIdentifiers

func (cw *CloudWatchAlarms) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*CloudWatchAlarms) Init

func (cw *CloudWatchAlarms) Init(session *session.Session)

func (*CloudWatchAlarms) MaxBatchSize

func (cw *CloudWatchAlarms) MaxBatchSize() int

func (*CloudWatchAlarms) Nuke

func (cw *CloudWatchAlarms) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*CloudWatchAlarms) ResourceIdentifiers

func (cw *CloudWatchAlarms) ResourceIdentifiers() []string

ResourceIdentifiers - The name of cloudwatch alarms

func (*CloudWatchAlarms) ResourceName

func (cw *CloudWatchAlarms) ResourceName() string

ResourceName - the simple name of the aws resource

type CloudWatchDashboards

type CloudWatchDashboards struct {
	BaseAwsResource
	Client         cloudwatchiface.CloudWatchAPI
	Region         string
	DashboardNames []string
}

CloudWatchDashboards - represents all CloudWatch Dashboards that should be deleted.

func (*CloudWatchDashboards) GetAndSetIdentifiers

func (cwdb *CloudWatchDashboards) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*CloudWatchDashboards) Init

func (cwdb *CloudWatchDashboards) Init(session *session.Session)

func (*CloudWatchDashboards) MaxBatchSize

func (cwdb *CloudWatchDashboards) MaxBatchSize() int

func (*CloudWatchDashboards) Nuke

func (cwdb *CloudWatchDashboards) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*CloudWatchDashboards) ResourceIdentifiers

func (cwdb *CloudWatchDashboards) ResourceIdentifiers() []string

ResourceIdentifiers - The dashboard names of the cloudwatch dashboards

func (*CloudWatchDashboards) ResourceName

func (cwdb *CloudWatchDashboards) ResourceName() string

ResourceName - the simple name of the aws resource

type CloudWatchLogGroups

type CloudWatchLogGroups struct {
	BaseAwsResource
	Client cloudwatchlogsiface.CloudWatchLogsAPI
	Region string
	Names  []string
}

CloudWatchLogGroup - represents all ec2 instances

func (*CloudWatchLogGroups) GetAndSetIdentifiers

func (csr *CloudWatchLogGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*CloudWatchLogGroups) Init

func (csr *CloudWatchLogGroups) Init(session *session.Session)

func (*CloudWatchLogGroups) MaxBatchSize

func (csr *CloudWatchLogGroups) MaxBatchSize() int

func (*CloudWatchLogGroups) Nuke

func (csr *CloudWatchLogGroups) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*CloudWatchLogGroups) ResourceIdentifiers

func (csr *CloudWatchLogGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*CloudWatchLogGroups) ResourceName

func (csr *CloudWatchLogGroups) ResourceName() string

ResourceName - the simple name of the aws resource

type CloudtrailTrail

type CloudtrailTrail struct {
	BaseAwsResource
	Client cloudtrailiface.CloudTrailAPI
	Region string
	Arns   []string
}

CloudWatchLogGroup - represents all ec2 instances

func (*CloudtrailTrail) GetAndSetIdentifiers

func (ct *CloudtrailTrail) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*CloudtrailTrail) Init

func (ct *CloudtrailTrail) Init(session *session.Session)

func (*CloudtrailTrail) MaxBatchSize

func (ct *CloudtrailTrail) MaxBatchSize() int

func (*CloudtrailTrail) Nuke

func (ct *CloudtrailTrail) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*CloudtrailTrail) ResourceIdentifiers

func (ct *CloudtrailTrail) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*CloudtrailTrail) ResourceName

func (ct *CloudtrailTrail) ResourceName() string

ResourceName - the simple name of the aws resource

type CodeDeployApplications

type CodeDeployApplications struct {
	BaseAwsResource
	Client   codedeployiface.CodeDeployAPI
	Region   string
	AppNames []string
}

CodeDeployApplications - represents all codedeploy applications

func (*CodeDeployApplications) GetAndSetIdentifiers

func (cda *CodeDeployApplications) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*CodeDeployApplications) Init

func (cda *CodeDeployApplications) Init(session *session.Session)

func (*CodeDeployApplications) MaxBatchSize

func (cda *CodeDeployApplications) MaxBatchSize() int

func (*CodeDeployApplications) Nuke

func (cda *CodeDeployApplications) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*CodeDeployApplications) ResourceIdentifiers

func (cda *CodeDeployApplications) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the code deploy applications

func (*CodeDeployApplications) ResourceName

func (cda *CodeDeployApplications) ResourceName() string

ResourceName - the simple name of the aws resource

type ConfigServiceRecorders

type ConfigServiceRecorders struct {
	BaseAwsResource
	Client        configserviceiface.ConfigServiceAPI
	Region        string
	RecorderNames []string
}

func (*ConfigServiceRecorders) GetAndSetIdentifiers

func (csr *ConfigServiceRecorders) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ConfigServiceRecorders) Init

func (csr *ConfigServiceRecorders) Init(session *session.Session)

func (*ConfigServiceRecorders) MaxBatchSize

func (csr *ConfigServiceRecorders) MaxBatchSize() int

func (*ConfigServiceRecorders) Nuke

func (csr *ConfigServiceRecorders) Nuke(configServiceRecorderNames []string) error

func (*ConfigServiceRecorders) ResourceIdentifiers

func (csr *ConfigServiceRecorders) ResourceIdentifiers() []string

func (*ConfigServiceRecorders) ResourceName

func (csr *ConfigServiceRecorders) ResourceName() string

type ConfigServiceRule

type ConfigServiceRule struct {
	BaseAwsResource
	Client    configserviceiface.ConfigServiceAPI
	Region    string
	RuleNames []string
}

func (*ConfigServiceRule) GetAndSetIdentifiers

func (csr *ConfigServiceRule) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ConfigServiceRule) Init

func (csr *ConfigServiceRule) Init(session *session.Session)

func (*ConfigServiceRule) MaxBatchSize

func (csr *ConfigServiceRule) MaxBatchSize() int

func (*ConfigServiceRule) Nuke

func (csr *ConfigServiceRule) Nuke(identifiers []string) error

func (*ConfigServiceRule) ResourceIdentifiers

func (csr *ConfigServiceRule) ResourceIdentifiers() []string

func (*ConfigServiceRule) ResourceName

func (csr *ConfigServiceRule) ResourceName() string

type CouldNotLookupCacheClusterErr

type CouldNotLookupCacheClusterErr struct {
	ClusterId *string
}

func (CouldNotLookupCacheClusterErr) Error

type DBClusters

type DBClusters struct {
	BaseAwsResource
	Client        rdsiface.RDSAPI
	Region        string
	InstanceNames []string
}

func (*DBClusters) GetAndSetIdentifiers

func (instance *DBClusters) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*DBClusters) Init

func (instance *DBClusters) Init(session *session.Session)

func (*DBClusters) MaxBatchSize

func (instance *DBClusters) MaxBatchSize() int

func (*DBClusters) Nuke

func (instance *DBClusters) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*DBClusters) ResourceIdentifiers

func (instance *DBClusters) ResourceIdentifiers() []string

ResourceIdentifiers - The instance names of the rds db instances

func (*DBClusters) ResourceName

func (instance *DBClusters) ResourceName() string

type DBInstances

type DBInstances struct {
	BaseAwsResource
	Client        rdsiface.RDSAPI
	Region        string
	InstanceNames []string
}

func (*DBInstances) GetAndSetIdentifiers

func (di *DBInstances) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*DBInstances) Init

func (di *DBInstances) Init(session *session.Session)

func (*DBInstances) MaxBatchSize

func (di *DBInstances) MaxBatchSize() int

func (*DBInstances) Nuke

func (di *DBInstances) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*DBInstances) ResourceIdentifiers

func (di *DBInstances) ResourceIdentifiers() []string

ResourceIdentifiers - The instance names of the rds db instances

func (*DBInstances) ResourceName

func (di *DBInstances) ResourceName() string

type DBSubnetGroups

type DBSubnetGroups struct {
	BaseAwsResource
	Client        rdsiface.RDSAPI
	Region        string
	InstanceNames []string
}

func (*DBSubnetGroups) GetAndSetIdentifiers

func (dsg *DBSubnetGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*DBSubnetGroups) Init

func (dsg *DBSubnetGroups) Init(session *session.Session)

func (*DBSubnetGroups) MaxBatchSize

func (dsg *DBSubnetGroups) MaxBatchSize() int

func (*DBSubnetGroups) Nuke

func (dsg *DBSubnetGroups) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*DBSubnetGroups) ResourceIdentifiers

func (dsg *DBSubnetGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The instance names of the rds db instances

func (*DBSubnetGroups) ResourceName

func (dsg *DBSubnetGroups) ResourceName() string

type DefaultSecurityGroup

type DefaultSecurityGroup struct {
	GroupName string
	GroupId   string
	Region    string
	// contains filtered or unexported fields
}

func GetDefaultSecurityGroups

func GetDefaultSecurityGroups(regions []string) ([]DefaultSecurityGroup, error)

type DetectorOutputWithID

type DetectorOutputWithID struct {
	ID     *string
	Output *guardduty.GetDetectorOutput
}

type DynamoDB

type DynamoDB struct {
	BaseAwsResource
	Client           dynamodbiface.DynamoDBAPI
	Region           string
	DynamoTableNames []string
}

func (*DynamoDB) GetAndSetIdentifiers

func (ddb *DynamoDB) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*DynamoDB) Init

func (ddb *DynamoDB) Init(session *session.Session)

func (*DynamoDB) MaxBatchSize

func (ddb *DynamoDB) MaxBatchSize() int

func (*DynamoDB) Nuke

func (ddb *DynamoDB) Nuke(identifiers []string) error

Nuke - nuke all Dynamo DB Tables

func (*DynamoDB) ResourceIdentifiers

func (ddb *DynamoDB) ResourceIdentifiers() []string

func (*DynamoDB) ResourceName

func (ddb *DynamoDB) ResourceName() string

type EBApplications added in v0.34.0

type EBApplications struct {
	BaseAwsResource
	Client elasticbeanstalkiface.ElasticBeanstalkAPI
	Region string
	// contains filtered or unexported fields
}

EBApplications - represents all elastic beanstalk applications

func (*EBApplications) GetAndSetIdentifiers added in v0.34.0

func (eb *EBApplications) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EBApplications) Init added in v0.34.0

func (eb *EBApplications) Init(session *session.Session)

func (*EBApplications) MaxBatchSize added in v0.34.0

func (eb *EBApplications) MaxBatchSize() int

func (*EBApplications) Nuke added in v0.34.0

func (eb *EBApplications) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EBApplications) ResourceIdentifiers added in v0.34.0

func (eb *EBApplications) ResourceIdentifiers() []string

ResourceIdentifiers - The application ids of the elastic beanstalk

func (*EBApplications) ResourceName added in v0.34.0

func (eb *EBApplications) ResourceName() string

ResourceName - the simple name of the aws resource

type EBSVolumes

type EBSVolumes struct {
	BaseAwsResource
	Client    ec2iface.EC2API
	Region    string
	VolumeIds []string
}

EBSVolumes - represents all ebs volumes

func (*EBSVolumes) GetAndSetIdentifiers

func (ev *EBSVolumes) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EBSVolumes) Init

func (ev *EBSVolumes) Init(session *session.Session)

func (*EBSVolumes) MaxBatchSize

func (ev *EBSVolumes) MaxBatchSize() int

func (*EBSVolumes) Nuke

func (ev *EBSVolumes) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EBSVolumes) ResourceIdentifiers

func (ev *EBSVolumes) ResourceIdentifiers() []string

ResourceIdentifiers - The volume ids of the ebs volumes

func (*EBSVolumes) ResourceName

func (ev *EBSVolumes) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2DedicatedHosts

type EC2DedicatedHosts struct {
	BaseAwsResource
	Client  ec2iface.EC2API
	Region  string
	HostIds []string
}

EC2DedicatedHosts - represents all host allocation IDs

func (*EC2DedicatedHosts) GetAndSetIdentifiers

func (h *EC2DedicatedHosts) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2DedicatedHosts) Init

func (h *EC2DedicatedHosts) Init(session *session.Session)

func (*EC2DedicatedHosts) MaxBatchSize

func (h *EC2DedicatedHosts) MaxBatchSize() int

func (*EC2DedicatedHosts) Nuke

func (h *EC2DedicatedHosts) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2DedicatedHosts) ResourceIdentifiers

func (h *EC2DedicatedHosts) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*EC2DedicatedHosts) ResourceName

func (h *EC2DedicatedHosts) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2DhcpOption

type EC2DhcpOption struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	VPCIds []string
}

func (*EC2DhcpOption) GetAndSetIdentifiers

func (v *EC2DhcpOption) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2DhcpOption) Init

func (v *EC2DhcpOption) Init(session *session.Session)

func (*EC2DhcpOption) MaxBatchSize

func (v *EC2DhcpOption) MaxBatchSize() int

func (*EC2DhcpOption) Nuke

func (v *EC2DhcpOption) Nuke(identifiers []string) error

func (*EC2DhcpOption) ResourceIdentifiers

func (v *EC2DhcpOption) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*EC2DhcpOption) ResourceName

func (v *EC2DhcpOption) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2Endpoints added in v0.35.0

type EC2Endpoints struct {
	BaseAwsResource
	Client    ec2iface.EC2API
	Region    string
	Endpoints []string
}

Ec2Endpoint - represents all ec2 endpoints

func (*EC2Endpoints) GetAndSetIdentifiers added in v0.35.0

func (e *EC2Endpoints) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2Endpoints) Init added in v0.35.0

func (e *EC2Endpoints) Init(session *session.Session)

func (*EC2Endpoints) MaxBatchSize added in v0.35.0

func (e *EC2Endpoints) MaxBatchSize() int

func (*EC2Endpoints) Nuke added in v0.35.0

func (e *EC2Endpoints) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2Endpoints) ResourceIdentifiers added in v0.35.0

func (e *EC2Endpoints) ResourceIdentifiers() []string

ResourceIdentifiers

func (*EC2Endpoints) ResourceName added in v0.35.0

func (e *EC2Endpoints) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IPAMByoasn added in v0.34.0

type EC2IPAMByoasn struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Pools  []string
}

IPAM Byoasn- represents all IPAMs

func (*EC2IPAMByoasn) GetAndSetIdentifiers added in v0.34.0

func (byoasn *EC2IPAMByoasn) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IPAMByoasn) Init added in v0.34.0

func (byoasn *EC2IPAMByoasn) Init(session *session.Session)

func (*EC2IPAMByoasn) MaxBatchSize added in v0.34.0

func (byoasn *EC2IPAMByoasn) MaxBatchSize() int

func (*EC2IPAMByoasn) Nuke added in v0.34.0

func (byoasn *EC2IPAMByoasn) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IPAMByoasn) ResourceIdentifiers added in v0.34.0

func (byoasn *EC2IPAMByoasn) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the IPAMs

func (*EC2IPAMByoasn) ResourceName added in v0.34.0

func (byoasn *EC2IPAMByoasn) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IPAMCustomAllocation added in v0.34.0

type EC2IPAMCustomAllocation struct {
	BaseAwsResource
	Client               ec2iface.EC2API
	Region               string
	Allocations          []string
	PoolAndAllocationMap map[string]string
}

IPAM Byoasn- represents all IPAMs

func (*EC2IPAMCustomAllocation) GetAndSetIdentifiers added in v0.34.0

func (cs *EC2IPAMCustomAllocation) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IPAMCustomAllocation) Init added in v0.34.0

func (cs *EC2IPAMCustomAllocation) Init(session *session.Session)

func (*EC2IPAMCustomAllocation) MaxBatchSize added in v0.34.0

func (cs *EC2IPAMCustomAllocation) MaxBatchSize() int

func (*EC2IPAMCustomAllocation) Nuke added in v0.34.0

func (cs *EC2IPAMCustomAllocation) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IPAMCustomAllocation) ResourceIdentifiers added in v0.34.0

func (cs *EC2IPAMCustomAllocation) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the IPAMs

func (*EC2IPAMCustomAllocation) ResourceName added in v0.34.0

func (cs *EC2IPAMCustomAllocation) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IPAMPool added in v0.34.0

type EC2IPAMPool struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Pools  []string
}

IPAM Pool- represents all IPAMs

func (*EC2IPAMPool) GetAndSetIdentifiers added in v0.34.0

func (pool *EC2IPAMPool) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IPAMPool) Init added in v0.34.0

func (pool *EC2IPAMPool) Init(session *session.Session)

func (*EC2IPAMPool) MaxBatchSize added in v0.34.0

func (pool *EC2IPAMPool) MaxBatchSize() int

func (*EC2IPAMPool) Nuke added in v0.34.0

func (pool *EC2IPAMPool) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IPAMPool) ResourceIdentifiers added in v0.34.0

func (pool *EC2IPAMPool) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the IPAMs

func (*EC2IPAMPool) ResourceName added in v0.34.0

func (pool *EC2IPAMPool) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IPAMResourceDiscovery added in v0.34.0

type EC2IPAMResourceDiscovery struct {
	BaseAwsResource
	Client       ec2iface.EC2API
	Region       string
	DiscoveryIDs []string
}

IPAM - represents all IPAMs

func (*EC2IPAMResourceDiscovery) GetAndSetIdentifiers added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IPAMResourceDiscovery) Init added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) Init(session *session.Session)

func (*EC2IPAMResourceDiscovery) MaxBatchSize added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) MaxBatchSize() int

func (*EC2IPAMResourceDiscovery) Nuke added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IPAMResourceDiscovery) ResourceIdentifiers added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the IPAMs

func (*EC2IPAMResourceDiscovery) ResourceName added in v0.34.0

func (ipam *EC2IPAMResourceDiscovery) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IPAMs added in v0.34.0

type EC2IPAMs struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	IDs    []string
}

IPAM - represents all IPAMs

func (*EC2IPAMs) GetAndSetIdentifiers added in v0.34.0

func (ipam *EC2IPAMs) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IPAMs) Init added in v0.34.0

func (ipam *EC2IPAMs) Init(session *session.Session)

func (*EC2IPAMs) MaxBatchSize added in v0.34.0

func (ipam *EC2IPAMs) MaxBatchSize() int

func (*EC2IPAMs) Nuke added in v0.34.0

func (ipam *EC2IPAMs) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IPAMs) ResourceIdentifiers added in v0.34.0

func (ipam *EC2IPAMs) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the IPAMs

func (*EC2IPAMs) ResourceName added in v0.34.0

func (ipam *EC2IPAMs) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2Instances

type EC2Instances struct {
	BaseAwsResource
	Client      ec2iface.EC2API
	Region      string
	InstanceIds []string
}

EC2Instances - represents all ec2 instances

func (*EC2Instances) GetAndSetIdentifiers

func (ei *EC2Instances) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2Instances) Init

func (ei *EC2Instances) Init(session *session.Session)

func (*EC2Instances) MaxBatchSize

func (ei *EC2Instances) MaxBatchSize() int

func (*EC2Instances) Nuke

func (ei *EC2Instances) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2Instances) ResourceIdentifiers

func (ei *EC2Instances) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*EC2Instances) ResourceName

func (ei *EC2Instances) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2IpamScopes added in v0.34.0

type EC2IpamScopes struct {
	BaseAwsResource
	Client    ec2iface.EC2API
	Region    string
	ScopreIDs []string
}

scope - represents all scopes

func (*EC2IpamScopes) GetAndSetIdentifiers added in v0.34.0

func (scope *EC2IpamScopes) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2IpamScopes) Init added in v0.34.0

func (scope *EC2IpamScopes) Init(session *session.Session)

func (*EC2IpamScopes) MaxBatchSize added in v0.34.0

func (scope *EC2IpamScopes) MaxBatchSize() int

func (*EC2IpamScopes) Nuke added in v0.34.0

func (scope *EC2IpamScopes) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2IpamScopes) ResourceIdentifiers added in v0.34.0

func (scope *EC2IpamScopes) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the scopes

func (*EC2IpamScopes) ResourceName added in v0.34.0

func (scope *EC2IpamScopes) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2KeyPairs

type EC2KeyPairs struct {
	BaseAwsResource
	Client     ec2iface.EC2API
	Region     string
	KeyPairIds []string
}

func (*EC2KeyPairs) GetAndSetIdentifiers

func (k *EC2KeyPairs) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2KeyPairs) Init

func (k *EC2KeyPairs) Init(session *session.Session)

func (*EC2KeyPairs) MaxBatchSize

func (k *EC2KeyPairs) MaxBatchSize() int

func (*EC2KeyPairs) Nuke

func (k *EC2KeyPairs) Nuke(identifiers []string) error

func (*EC2KeyPairs) ResourceIdentifiers

func (k *EC2KeyPairs) ResourceIdentifiers() []string

ResourceIdentifiers - IDs of the ec2 key pairs

func (*EC2KeyPairs) ResourceName

func (k *EC2KeyPairs) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2Subnet added in v0.35.0

type EC2Subnet struct {
	BaseAwsResource
	Client  ec2iface.EC2API
	Region  string
	Subnets []string
}

Ec2Subnet- represents all Subnets

func (*EC2Subnet) GetAndSetIdentifiers added in v0.35.0

func (es *EC2Subnet) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2Subnet) Init added in v0.35.0

func (es *EC2Subnet) Init(session *session.Session)

func (*EC2Subnet) MaxBatchSize added in v0.35.0

func (es *EC2Subnet) MaxBatchSize() int

func (*EC2Subnet) Nuke added in v0.35.0

func (es *EC2Subnet) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2Subnet) ResourceIdentifiers added in v0.35.0

func (es *EC2Subnet) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the subnets

func (*EC2Subnet) ResourceName added in v0.35.0

func (es *EC2Subnet) ResourceName() string

ResourceName - the simple name of the aws resource

type EC2VPCs

type EC2VPCs struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	VPCIds []string
}

func (*EC2VPCs) GetAndSetIdentifiers

func (v *EC2VPCs) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EC2VPCs) Init

func (v *EC2VPCs) Init(session *session.Session)

func (*EC2VPCs) MaxBatchSize

func (v *EC2VPCs) MaxBatchSize() int

func (*EC2VPCs) Nuke

func (v *EC2VPCs) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EC2VPCs) ResourceIdentifiers

func (v *EC2VPCs) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*EC2VPCs) ResourceName

func (v *EC2VPCs) ResourceName() string

ResourceName - the simple name of the aws resource

type ECR

type ECR struct {
	BaseAwsResource
	Client          ecriface.ECRAPI
	Region          string
	RepositoryNames []string
}

func (*ECR) GetAndSetIdentifiers

func (registry *ECR) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ECR) Init

func (registry *ECR) Init(session *session.Session)

func (*ECR) MaxBatchSize

func (registry *ECR) MaxBatchSize() int

func (*ECR) Nuke

func (registry *ECR) Nuke(identifiers []string) error

func (*ECR) ResourceIdentifiers

func (registry *ECR) ResourceIdentifiers() []string

func (*ECR) ResourceName

func (registry *ECR) ResourceName() string

type ECSClusters

type ECSClusters struct {
	BaseAwsResource
	Client      ecsiface.ECSAPI
	Region      string
	ClusterArns []string
}

ECSClusters - Represents all ECS clusters found in a region

func (*ECSClusters) GetAndSetIdentifiers

func (clusters *ECSClusters) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ECSClusters) Init

func (clusters *ECSClusters) Init(session *session.Session)

func (*ECSClusters) MaxBatchSize

func (clusters *ECSClusters) MaxBatchSize() int

func (*ECSClusters) Nuke

func (clusters *ECSClusters) Nuke(identifiers []string) error

Nuke - nuke all ECS Cluster resources

func (*ECSClusters) ResourceIdentifiers

func (clusters *ECSClusters) ResourceIdentifiers() []string

ResourceIdentifiers - the collected ECS clusters

func (*ECSClusters) ResourceName

func (clusters *ECSClusters) ResourceName() string

ResourceName - The simple name of the aws resource

type ECSServices

type ECSServices struct {
	BaseAwsResource
	Client            ecsiface.ECSAPI
	Region            string
	Services          []string
	ServiceClusterMap map[string]string
}

ECSServices - Represents all ECS services found in a region

func (*ECSServices) GetAndSetIdentifiers

func (services *ECSServices) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ECSServices) Init

func (services *ECSServices) Init(session *session.Session)

func (*ECSServices) MaxBatchSize

func (services *ECSServices) MaxBatchSize() int

func (*ECSServices) Nuke

func (services *ECSServices) Nuke(identifiers []string) error

Nuke - nuke all ECS service resources

func (*ECSServices) ResourceIdentifiers

func (services *ECSServices) ResourceIdentifiers() []string

ResourceIdentifiers - The ARNs of the collected ECS services

func (*ECSServices) ResourceName

func (services *ECSServices) ResourceName() string

ResourceName - The simple name of the aws resource

type EIPAddresses

type EIPAddresses struct {
	BaseAwsResource
	Client        ec2iface.EC2API
	Region        string
	AllocationIds []string
}

EBSVolumes - represents all ebs volumes

func (*EIPAddresses) GetAndSetIdentifiers

func (address *EIPAddresses) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EIPAddresses) Init

func (address *EIPAddresses) Init(session *session.Session)

func (*EIPAddresses) MaxBatchSize

func (address *EIPAddresses) MaxBatchSize() int

func (*EIPAddresses) Nuke

func (address *EIPAddresses) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EIPAddresses) ResourceIdentifiers

func (address *EIPAddresses) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the eip addresses

func (*EIPAddresses) ResourceName

func (address *EIPAddresses) ResourceName() string

ResourceName - the simple name of the aws resource

type EKSClusters

type EKSClusters struct {
	BaseAwsResource
	Client   eksiface.EKSAPI
	Region   string
	Clusters []string
}

EKSClusters - Represents all EKS clusters found in a region

func (*EKSClusters) GetAndSetIdentifiers

func (clusters *EKSClusters) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EKSClusters) Init

func (clusters *EKSClusters) Init(session *session.Session)

func (*EKSClusters) MaxBatchSize

func (clusters *EKSClusters) MaxBatchSize() int

func (*EKSClusters) Nuke

func (clusters *EKSClusters) Nuke(identifiers []string) error

Nuke - nuke all EKS Cluster resources

func (*EKSClusters) ResourceIdentifiers

func (clusters *EKSClusters) ResourceIdentifiers() []string

ResourceIdentifiers - The Name of the collected EKS clusters

func (*EKSClusters) ResourceName

func (clusters *EKSClusters) ResourceName() string

ResourceName - The simple name of the aws resource

type EgressOnlyInternetGateway added in v0.35.0

type EgressOnlyInternetGateway struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Pools  []string
}

EgressOnlyInternetGateway represents all Egress only internet gateway

func (*EgressOnlyInternetGateway) GetAndSetIdentifiers added in v0.35.0

func (egigw *EgressOnlyInternetGateway) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*EgressOnlyInternetGateway) Init added in v0.35.0

func (egigw *EgressOnlyInternetGateway) Init(session *session.Session)

func (*EgressOnlyInternetGateway) MaxBatchSize added in v0.35.0

func (egigw *EgressOnlyInternetGateway) MaxBatchSize() int

func (*EgressOnlyInternetGateway) Nuke added in v0.35.0

func (egigw *EgressOnlyInternetGateway) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*EgressOnlyInternetGateway) ResourceIdentifiers added in v0.35.0

func (egigw *EgressOnlyInternetGateway) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the Egress only igw

func (*EgressOnlyInternetGateway) ResourceName added in v0.35.0

func (egigw *EgressOnlyInternetGateway) ResourceName() string

ResourceName - the simple name of the aws resource

type ElasticFileSystem

type ElasticFileSystem struct {
	BaseAwsResource
	Client efsiface.EFSAPI
	Region string
	Ids    []string
}

func (*ElasticFileSystem) GetAndSetIdentifiers

func (ef *ElasticFileSystem) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ElasticFileSystem) Init

func (ef *ElasticFileSystem) Init(session *session.Session)

func (*ElasticFileSystem) MaxBatchSize

func (ef *ElasticFileSystem) MaxBatchSize() int

func (*ElasticFileSystem) Nuke

func (ef *ElasticFileSystem) Nuke(identifiers []string) error

func (*ElasticFileSystem) ResourceIdentifiers

func (ef *ElasticFileSystem) ResourceIdentifiers() []string

func (*ElasticFileSystem) ResourceName

func (ef *ElasticFileSystem) ResourceName() string

type ElasticacheParameterGroups

type ElasticacheParameterGroups struct {
	BaseAwsResource
	Client     elasticacheiface.ElastiCacheAPI
	Region     string
	GroupNames []string
}

func (*ElasticacheParameterGroups) GetAndSetIdentifiers

func (pg *ElasticacheParameterGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ElasticacheParameterGroups) Init

func (pg *ElasticacheParameterGroups) Init(session *session.Session)

func (*ElasticacheParameterGroups) MaxBatchSize

func (pg *ElasticacheParameterGroups) MaxBatchSize() int

func (*ElasticacheParameterGroups) Nuke

func (pg *ElasticacheParameterGroups) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*ElasticacheParameterGroups) ResourceIdentifiers

func (pg *ElasticacheParameterGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*ElasticacheParameterGroups) ResourceName

func (pg *ElasticacheParameterGroups) ResourceName() string

ResourceName - the simple name of the aws resource

type ElasticacheSubnetGroups

type ElasticacheSubnetGroups struct {
	BaseAwsResource
	Client     elasticacheiface.ElastiCacheAPI
	Region     string
	GroupNames []string
}

func (*ElasticacheSubnetGroups) GetAndSetIdentifiers

func (sg *ElasticacheSubnetGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*ElasticacheSubnetGroups) Init

func (sg *ElasticacheSubnetGroups) Init(session *session.Session)

func (*ElasticacheSubnetGroups) MaxBatchSize

func (sg *ElasticacheSubnetGroups) MaxBatchSize() int

func (*ElasticacheSubnetGroups) Nuke

func (sg *ElasticacheSubnetGroups) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*ElasticacheSubnetGroups) ResourceIdentifiers

func (sg *ElasticacheSubnetGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*ElasticacheSubnetGroups) ResourceName

func (sg *ElasticacheSubnetGroups) ResourceName() string

type Elasticaches

type Elasticaches struct {
	BaseAwsResource
	Client     elasticacheiface.ElastiCacheAPI
	Region     string
	ClusterIds []string
}

Elasticaches - represents all Elasticache clusters

func (*Elasticaches) GetAndSetIdentifiers

func (cache *Elasticaches) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*Elasticaches) Init

func (cache *Elasticaches) Init(session *session.Session)

func (*Elasticaches) MaxBatchSize

func (cache *Elasticaches) MaxBatchSize() int

func (*Elasticaches) Nuke

func (cache *Elasticaches) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*Elasticaches) ResourceIdentifiers

func (cache *Elasticaches) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the elasticache clusters

func (*Elasticaches) ResourceName

func (cache *Elasticaches) ResourceName() string

ResourceName - the simple name of the aws resource

type ElbDeleteError

type ElbDeleteError struct{}

func (ElbDeleteError) Error

func (e ElbDeleteError) Error() string

type GuardDuty

type GuardDuty struct {
	BaseAwsResource
	Client guarddutyiface.GuardDutyAPI
	Region string
	// contains filtered or unexported fields
}

func (*GuardDuty) GetAndSetIdentifiers

func (gd *GuardDuty) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*GuardDuty) Init

func (gd *GuardDuty) Init(session *session.Session)

func (*GuardDuty) MaxBatchSize

func (gd *GuardDuty) MaxBatchSize() int

func (*GuardDuty) Nuke

func (gd *GuardDuty) Nuke(detectorIds []string) error

func (*GuardDuty) ResourceIdentifiers

func (gd *GuardDuty) ResourceIdentifiers() []string

func (*GuardDuty) ResourceName

func (gd *GuardDuty) ResourceName() string

type IAMGroups

type IAMGroups struct {
	BaseAwsResource
	Client     iamiface.IAMAPI
	GroupNames []string
}

IAMGroups - represents all IAMGroups on the AWS Account

func (*IAMGroups) GetAndSetIdentifiers

func (ig *IAMGroups) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*IAMGroups) Init

func (ig *IAMGroups) Init(session *session.Session)

func (*IAMGroups) MaxBatchSize

func (ig *IAMGroups) MaxBatchSize() int

Tentative batch size to ensure AWS doesn't throttle There's a global max of 500 groups so it shouldn't take long either way

func (*IAMGroups) Nuke

func (ig *IAMGroups) Nuke(identifiers []string) error

Nuke - Destroy every group in this collection

func (*IAMGroups) ResourceIdentifiers

func (ig *IAMGroups) ResourceIdentifiers() []string

ResourceIdentifiers - The IAM GroupNames

func (*IAMGroups) ResourceName

func (ig *IAMGroups) ResourceName() string

ResourceName - the simple name of the AWS resource

type IAMPolicies

type IAMPolicies struct {
	BaseAwsResource
	Client     iamiface.IAMAPI
	PolicyArns []string
}

IAMPolicies - represents all IAM Policies on the AWS account

func (*IAMPolicies) GetAndSetIdentifiers

func (ip *IAMPolicies) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*IAMPolicies) Init

func (ip *IAMPolicies) Init(session *session.Session)

func (*IAMPolicies) MaxBatchSize

func (ip *IAMPolicies) MaxBatchSize() int

MaxBatchSize Tentative batch size to ensure AWS doesn't throttle

func (*IAMPolicies) Nuke

func (ip *IAMPolicies) Nuke(identifiers []string) error

Nuke - Destroy every group in this collection

func (*IAMPolicies) ResourceIdentifiers

func (ip *IAMPolicies) ResourceIdentifiers() []string

ResourceIdentifiers - The IAM GroupNames

func (*IAMPolicies) ResourceName

func (ip *IAMPolicies) ResourceName() string

ResourceName - the simple name of the AWS resource

type IAMRoles

type IAMRoles struct {
	BaseAwsResource
	Client    iamiface.IAMAPI
	RoleNames []string
}

IAMRoles - represents all IAMRoles on the AWS Account

func (*IAMRoles) GetAndSetIdentifiers

func (ir *IAMRoles) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*IAMRoles) Init

func (ir *IAMRoles) Init(session *session.Session)

func (*IAMRoles) MaxBatchSize

func (ir *IAMRoles) MaxBatchSize() int

Tentative batch size to ensure AWS doesn't throttle

func (*IAMRoles) Nuke

func (ir *IAMRoles) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*IAMRoles) ResourceIdentifiers

func (ir *IAMRoles) ResourceIdentifiers() []string

ResourceIdentifiers - The IAM UserNames

func (*IAMRoles) ResourceName

func (ir *IAMRoles) ResourceName() string

ResourceName - the simple name of the aws resource

type IAMServiceLinkedRoles

type IAMServiceLinkedRoles struct {
	BaseAwsResource
	Client    iamiface.IAMAPI
	RoleNames []string
}

IAMServiceLinkedRoles - represents all IAMServiceLinkedRoles on the AWS Account

func (*IAMServiceLinkedRoles) GetAndSetIdentifiers

func (islr *IAMServiceLinkedRoles) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*IAMServiceLinkedRoles) Init

func (islr *IAMServiceLinkedRoles) Init(session *session.Session)

func (*IAMServiceLinkedRoles) MaxBatchSize

func (islr *IAMServiceLinkedRoles) MaxBatchSize() int

Tentative batch size to ensure AWS doesn't throttle

func (*IAMServiceLinkedRoles) Nuke

func (islr *IAMServiceLinkedRoles) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*IAMServiceLinkedRoles) ResourceIdentifiers

func (islr *IAMServiceLinkedRoles) ResourceIdentifiers() []string

ResourceIdentifiers - The IAM UserNames

func (*IAMServiceLinkedRoles) ResourceName

func (islr *IAMServiceLinkedRoles) ResourceName() string

ResourceName - the simple name of the aws resource

type IAMUsers

type IAMUsers struct {
	BaseAwsResource
	Client    iamiface.IAMAPI
	UserNames []string
}

IAMUsers - represents all IAMUsers on the AWS Account

func (*IAMUsers) GetAndSetIdentifiers

func (iu *IAMUsers) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*IAMUsers) Init

func (iu *IAMUsers) Init(session *session.Session)

func (*IAMUsers) MaxBatchSize

func (iu *IAMUsers) MaxBatchSize() int

Tentative batch size to ensure AWS doesn't throttle

func (*IAMUsers) Nuke

func (iu *IAMUsers) Nuke(users []string) error

Nuke - nuke 'em all!!!

func (*IAMUsers) ResourceIdentifiers

func (iu *IAMUsers) ResourceIdentifiers() []string

ResourceIdentifiers - The IAM UserNames

func (*IAMUsers) ResourceName

func (iu *IAMUsers) ResourceName() string

ResourceName - the simple name of the aws resource

type ImageAvailableError

type ImageAvailableError struct{}

func (ImageAvailableError) Error

func (e ImageAvailableError) Error() string

type InternetGateway added in v0.35.0

type InternetGateway struct {
	BaseAwsResource
	Client     ec2iface.EC2API
	Region     string
	GatewayIds []string
}

func (*InternetGateway) GetAndSetIdentifiers added in v0.35.0

func (igw *InternetGateway) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*InternetGateway) Init added in v0.35.0

func (igw *InternetGateway) Init(session *session.Session)

func (*InternetGateway) MaxBatchSize added in v0.35.0

func (igw *InternetGateway) MaxBatchSize() int

func (*InternetGateway) Nuke added in v0.35.0

func (igw *InternetGateway) Nuke(identifiers []string) error

func (*InternetGateway) ResourceIdentifiers added in v0.35.0

func (igw *InternetGateway) ResourceIdentifiers() []string

func (*InternetGateway) ResourceName added in v0.35.0

func (igw *InternetGateway) ResourceName() string

type KinesisStreams

type KinesisStreams struct {
	BaseAwsResource
	Client kinesisiface.KinesisAPI
	Region string
	Names  []string
}

KinesisStreams - represents all Kinesis streams

func (*KinesisStreams) GetAndSetIdentifiers

func (ks *KinesisStreams) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*KinesisStreams) Init

func (ks *KinesisStreams) Init(session *session.Session)

func (*KinesisStreams) MaxBatchSize

func (ks *KinesisStreams) MaxBatchSize() int

func (*KinesisStreams) Nuke

func (ks *KinesisStreams) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*KinesisStreams) ResourceIdentifiers

func (ks *KinesisStreams) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the Kinesis Streams

func (*KinesisStreams) ResourceName

func (ks *KinesisStreams) ResourceName() string

ResourceName - The simple name of the AWS resource

type KmsCheckIncludeResult

type KmsCheckIncludeResult struct {
	KeyId string
	Error error
}

KmsCheckIncludeResult - structure used results of evaluation: not null KeyId - key should be included

type KmsCustomerKeys

type KmsCustomerKeys struct {
	BaseAwsResource
	Client     kmsiface.KMSAPI
	Region     string
	KeyIds     []string
	KeyAliases map[string][]string
}

func (*KmsCustomerKeys) GetAndSetIdentifiers

func (kck *KmsCustomerKeys) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*KmsCustomerKeys) Init

func (kck *KmsCustomerKeys) Init(session *session.Session)

func (*KmsCustomerKeys) MaxBatchSize

func (kck *KmsCustomerKeys) MaxBatchSize() int

MaxBatchSize - Requests batch size

func (*KmsCustomerKeys) Nuke

func (kck *KmsCustomerKeys) Nuke(keyIds []string) error

Nuke - remove all customer managed keys

func (*KmsCustomerKeys) ResourceIdentifiers

func (kck *KmsCustomerKeys) ResourceIdentifiers() []string

ResourceIdentifiers - The KMS Key IDs

func (*KmsCustomerKeys) ResourceName

func (kck *KmsCustomerKeys) ResourceName() string

ResourceName - the simple name of the aws resource

type LambdaDeleteError

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

func (LambdaDeleteError) Error

func (e LambdaDeleteError) Error() string

type LambdaFunctions

type LambdaFunctions struct {
	BaseAwsResource
	Client              lambdaiface.LambdaAPI
	Region              string
	LambdaFunctionNames []string
}

func (*LambdaFunctions) GetAndSetIdentifiers

func (lf *LambdaFunctions) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LambdaFunctions) Init

func (lf *LambdaFunctions) Init(session *session.Session)

func (*LambdaFunctions) MaxBatchSize

func (lf *LambdaFunctions) MaxBatchSize() int

func (*LambdaFunctions) Nuke

func (lf *LambdaFunctions) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LambdaFunctions) ResourceIdentifiers

func (lf *LambdaFunctions) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the lambda functions

func (*LambdaFunctions) ResourceName

func (lf *LambdaFunctions) ResourceName() string

type LambdaLayers

type LambdaLayers struct {
	BaseAwsResource
	Client              lambdaiface.LambdaAPI
	Region              string
	LambdaFunctionNames []string
}

func (*LambdaLayers) GetAndSetIdentifiers

func (lf *LambdaLayers) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LambdaLayers) Init

func (lf *LambdaLayers) Init(session *session.Session)

func (*LambdaLayers) MaxBatchSize

func (lf *LambdaLayers) MaxBatchSize() int

func (*LambdaLayers) Nuke

func (lf *LambdaLayers) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LambdaLayers) ResourceIdentifiers

func (lf *LambdaLayers) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the lambda functions

func (*LambdaLayers) ResourceName

func (lf *LambdaLayers) ResourceName() string

type LambdaVersionDeleteError

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

func (LambdaVersionDeleteError) Error

func (e LambdaVersionDeleteError) Error() string

type LaunchConfigs

type LaunchConfigs struct {
	BaseAwsResource
	Client                   autoscalingiface.AutoScalingAPI
	Region                   string
	LaunchConfigurationNames []string
}

LaunchConfigs - represents all launch configurations

func (*LaunchConfigs) GetAndSetIdentifiers

func (lc *LaunchConfigs) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LaunchConfigs) Init

func (lc *LaunchConfigs) Init(session *session.Session)

func (*LaunchConfigs) MaxBatchSize

func (lc *LaunchConfigs) MaxBatchSize() int

func (*LaunchConfigs) Nuke

func (lc *LaunchConfigs) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LaunchConfigs) ResourceIdentifiers

func (lc *LaunchConfigs) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the launch configurations

func (*LaunchConfigs) ResourceName

func (lc *LaunchConfigs) ResourceName() string

ResourceName - the simple name of the aws resource

type LaunchTemplates

type LaunchTemplates struct {
	BaseAwsResource
	Client              ec2iface.EC2API
	Region              string
	LaunchTemplateNames []string
}

LaunchTemplates - represents all launch templates

func (*LaunchTemplates) GetAndSetIdentifiers

func (lt *LaunchTemplates) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LaunchTemplates) Init

func (lt *LaunchTemplates) Init(session *session.Session)

func (*LaunchTemplates) MaxBatchSize

func (lt *LaunchTemplates) MaxBatchSize() int

func (*LaunchTemplates) Nuke

func (lt *LaunchTemplates) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LaunchTemplates) ResourceIdentifiers

func (lt *LaunchTemplates) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the launch templates

func (*LaunchTemplates) ResourceName

func (lt *LaunchTemplates) ResourceName() string

ResourceName - the simple name of the aws resource

type LoadBalancers

type LoadBalancers struct {
	BaseAwsResource
	Client elbiface.ELBAPI
	Region string
	Names  []string
}

LoadBalancers - represents all load balancers

func (*LoadBalancers) GetAndSetIdentifiers

func (balancer *LoadBalancers) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LoadBalancers) Init

func (balancer *LoadBalancers) Init(session *session.Session)

func (*LoadBalancers) MaxBatchSize

func (balancer *LoadBalancers) MaxBatchSize() int

func (*LoadBalancers) Nuke

func (balancer *LoadBalancers) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LoadBalancers) ResourceIdentifiers

func (balancer *LoadBalancers) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the load balancers

func (*LoadBalancers) ResourceName

func (balancer *LoadBalancers) ResourceName() string

ResourceName - the simple name of the aws resource

type LoadBalancersV2

type LoadBalancersV2 struct {
	BaseAwsResource
	Client elbv2iface.ELBV2API
	Region string
	Arns   []string
}

LoadBalancersV2 - represents all load balancers

func (*LoadBalancersV2) GetAndSetIdentifiers

func (balancer *LoadBalancersV2) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*LoadBalancersV2) Init

func (balancer *LoadBalancersV2) Init(session *session.Session)

func (*LoadBalancersV2) MaxBatchSize

func (balancer *LoadBalancersV2) MaxBatchSize() int

func (*LoadBalancersV2) Nuke

func (balancer *LoadBalancersV2) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*LoadBalancersV2) ResourceIdentifiers

func (balancer *LoadBalancersV2) ResourceIdentifiers() []string

ResourceIdentifiers - The arns of the load balancers

func (*LoadBalancersV2) ResourceName

func (balancer *LoadBalancersV2) ResourceName() string

ResourceName - the simple name of the aws resource

type MSKCluster

type MSKCluster struct {
	BaseAwsResource
	Client      kafkaiface.KafkaAPI
	Region      string
	ClusterArns []string
}

MSKCluster - represents all AWS Managed Streaming for Kafka clusters that should be deleted.

func (*MSKCluster) GetAndSetIdentifiers

func (m *MSKCluster) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*MSKCluster) Init

func (m *MSKCluster) Init(session *session.Session)

func (*MSKCluster) MaxBatchSize

func (m *MSKCluster) MaxBatchSize() int

func (*MSKCluster) Nuke

func (m *MSKCluster) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*MSKCluster) ResourceIdentifiers

func (m *MSKCluster) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the AWS Managed Streaming for Kafka clusters

func (*MSKCluster) ResourceName

func (m *MSKCluster) ResourceName() string

ResourceName - the simple name of the aws resource

type MacieMember

type MacieMember struct {
	BaseAwsResource
	Client     macie2iface.Macie2API
	Region     string
	AccountIds []string
}

func (*MacieMember) GetAndSetIdentifiers

func (mm *MacieMember) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*MacieMember) Init

func (mm *MacieMember) Init(session *session.Session)

func (*MacieMember) MaxBatchSize

func (mm *MacieMember) MaxBatchSize() int

func (*MacieMember) Nuke

func (mm *MacieMember) Nuke(identifiers []string) error

func (*MacieMember) ResourceIdentifiers

func (mm *MacieMember) ResourceIdentifiers() []string

func (*MacieMember) ResourceName

func (mm *MacieMember) ResourceName() string

type NatGateways

type NatGateways struct {
	BaseAwsResource
	Client        ec2iface.EC2API
	Region        string
	NatGatewayIDs []string
}

NatGateways - represents all AWS secrets manager secrets that should be deleted.

func (NatGateways) GetAndSetIdentifiers

func (secret NatGateways) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*NatGateways) Init

func (ngw *NatGateways) Init(session *session.Session)

func (NatGateways) MaxBatchSize

func (secret NatGateways) MaxBatchSize() int

func (*NatGateways) Nuke

func (ngw *NatGateways) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*NatGateways) ResourceIdentifiers

func (ngw *NatGateways) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*NatGateways) ResourceName

func (ngw *NatGateways) ResourceName() string

ResourceName - the simple name of the aws resource

type NetworkACL added in v0.35.0

type NetworkACL struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Ids    []string
}

func (*NetworkACL) GetAndSetIdentifiers added in v0.35.0

func (nacl *NetworkACL) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*NetworkACL) Init added in v0.35.0

func (nacl *NetworkACL) Init(session *session.Session)

func (*NetworkACL) MaxBatchSize added in v0.35.0

func (nacl *NetworkACL) MaxBatchSize() int

func (*NetworkACL) Nuke added in v0.35.0

func (nacl *NetworkACL) Nuke(identifiers []string) error

func (*NetworkACL) ResourceIdentifiers added in v0.35.0

func (nacl *NetworkACL) ResourceIdentifiers() []string

func (*NetworkACL) ResourceName added in v0.35.0

func (nacl *NetworkACL) ResourceName() string

type NetworkInterface added in v0.35.0

type NetworkInterface struct {
	BaseAwsResource
	Client       ec2iface.EC2API
	Region       string
	InterfaceIds []string
}

func (*NetworkInterface) GetAndSetIdentifiers added in v0.35.0

func (ni *NetworkInterface) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*NetworkInterface) Init added in v0.35.0

func (ni *NetworkInterface) Init(session *session.Session)

func (*NetworkInterface) MaxBatchSize added in v0.35.0

func (ni *NetworkInterface) MaxBatchSize() int

func (*NetworkInterface) Nuke added in v0.35.0

func (ni *NetworkInterface) Nuke(identifiers []string) error

func (*NetworkInterface) ResourceIdentifiers added in v0.35.0

func (ni *NetworkInterface) ResourceIdentifiers() []string

func (*NetworkInterface) ResourceName added in v0.35.0

func (ni *NetworkInterface) ResourceName() string

type OIDCProviders

type OIDCProviders struct {
	BaseAwsResource
	Client       iamiface.IAMAPI
	ProviderARNs []string
}

OIDCProviders - represents all AWS OpenID Connect providers that should be deleted.

func (*OIDCProviders) GetAndSetIdentifiers

func (oidcprovider *OIDCProviders) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*OIDCProviders) Init

func (oidcprovider *OIDCProviders) Init(session *session.Session)

func (*OIDCProviders) MaxBatchSize

func (oidcprovider *OIDCProviders) MaxBatchSize() int

func (*OIDCProviders) Nuke

func (oidcprovider *OIDCProviders) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*OIDCProviders) ResourceIdentifiers

func (oidcprovider *OIDCProviders) ResourceIdentifiers() []string

ResourceIdentifiers - The ARNs of the OIDC providers.

func (*OIDCProviders) ResourceName

func (oidcprovider *OIDCProviders) ResourceName() string

ResourceName - the simple name of the aws resource

type OpenSearchDomains

type OpenSearchDomains struct {
	BaseAwsResource
	Client      opensearchserviceiface.OpenSearchServiceAPI
	Region      string
	DomainNames []string
}

OpenSearchDomains represents all OpenSearch domains found in a region

func (*OpenSearchDomains) GetAndSetIdentifiers

func (osd *OpenSearchDomains) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*OpenSearchDomains) Init

func (osd *OpenSearchDomains) Init(session *session.Session)

func (*OpenSearchDomains) MaxBatchSize

func (osd *OpenSearchDomains) MaxBatchSize() int

MaxBatchSize returns the number of resources that should be nuked at a time. A small number is used to ensure AWS doesn't throttle. OpenSearch Domains do not support bulk delete, so we will be deleting this many in parallel using go routines. We conservatively pick 10 here, both to limit overloading the runtime and to avoid AWS throttling with many API calls.

func (*OpenSearchDomains) Nuke

func (osd *OpenSearchDomains) Nuke(identifiers []string) error

Nuke nukes all OpenSearch domain resources

func (*OpenSearchDomains) ResourceIdentifiers

func (osd *OpenSearchDomains) ResourceIdentifiers() []string

ResourceIdentifiers the collected OpenSearch Domains

func (*OpenSearchDomains) ResourceName

func (osd *OpenSearchDomains) ResourceName() string

ResourceName is the simple name of the aws resource

type RdsDeleteError

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

func (RdsDeleteError) Error

func (e RdsDeleteError) Error() string

type RdsParameterGroup added in v0.34.0

type RdsParameterGroup struct {
	BaseAwsResource
	Client     rdsiface.RDSAPI
	Region     string
	GroupNames []string
}

func (*RdsParameterGroup) GetAndSetIdentifiers added in v0.34.0

func (pg *RdsParameterGroup) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*RdsParameterGroup) Init added in v0.34.0

func (pg *RdsParameterGroup) Init(session *session.Session)

func (*RdsParameterGroup) MaxBatchSize added in v0.34.0

func (pg *RdsParameterGroup) MaxBatchSize() int

func (*RdsParameterGroup) Nuke added in v0.34.0

func (pg *RdsParameterGroup) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*RdsParameterGroup) ResourceIdentifiers added in v0.34.0

func (pg *RdsParameterGroup) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the rds parameter group

func (*RdsParameterGroup) ResourceName added in v0.34.0

func (pg *RdsParameterGroup) ResourceName() string

type RdsSnapshot

type RdsSnapshot struct {
	BaseAwsResource
	Client      rdsiface.RDSAPI
	Region      string
	Identifiers []string
}

func (*RdsSnapshot) GetAndSetIdentifiers

func (snapshot *RdsSnapshot) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*RdsSnapshot) Init

func (snapshot *RdsSnapshot) Init(session *session.Session)

func (*RdsSnapshot) MaxBatchSize

func (snapshot *RdsSnapshot) MaxBatchSize() int

func (*RdsSnapshot) Nuke

func (snapshot *RdsSnapshot) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*RdsSnapshot) ResourceIdentifiers

func (snapshot *RdsSnapshot) ResourceIdentifiers() []string

func (*RdsSnapshot) ResourceName

func (snapshot *RdsSnapshot) ResourceName() string

type RedshiftClusters

type RedshiftClusters struct {
	BaseAwsResource
	Client             redshiftiface.RedshiftAPI
	Region             string
	ClusterIdentifiers []string
}

func (*RedshiftClusters) GetAndSetIdentifiers

func (rc *RedshiftClusters) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*RedshiftClusters) Init

func (rc *RedshiftClusters) Init(session *session.Session)

func (*RedshiftClusters) MaxBatchSize

func (rc *RedshiftClusters) MaxBatchSize() int

func (*RedshiftClusters) Nuke

func (rc *RedshiftClusters) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*RedshiftClusters) ResourceIdentifiers

func (rc *RedshiftClusters) ResourceIdentifiers() []string

ResourceIdentifiers - The instance names of the rds db instances

func (*RedshiftClusters) ResourceName

func (rc *RedshiftClusters) ResourceName() string

type Route53CidrCollection added in v0.34.0

type Route53CidrCollection struct {
	BaseAwsResource
	Client route53iface.Route53API
	Region string
	Ids    []string
}

Route53CidrCollection - represents all Route53CidrCollection

func (*Route53CidrCollection) GetAndSetIdentifiers added in v0.34.0

func (r *Route53CidrCollection) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*Route53CidrCollection) Init added in v0.34.0

func (r *Route53CidrCollection) Init(session *session.Session)

func (*Route53CidrCollection) MaxBatchSize added in v0.34.0

func (r *Route53CidrCollection) MaxBatchSize() int

func (*Route53CidrCollection) Nuke added in v0.34.0

func (r *Route53CidrCollection) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*Route53CidrCollection) ResourceIdentifiers added in v0.34.0

func (r *Route53CidrCollection) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of the cidr collections

func (*Route53CidrCollection) ResourceName added in v0.34.0

func (r *Route53CidrCollection) ResourceName() string

ResourceName - the simple name of the aws resource

type Route53HostedZone added in v0.34.0

type Route53HostedZone struct {
	BaseAwsResource
	Client route53iface.Route53API
	Region string
	Ids    []string
}

Route53HostedZone - represents all Route53HostedZone

func (*Route53HostedZone) GetAndSetIdentifiers added in v0.34.0

func (r *Route53HostedZone) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*Route53HostedZone) Init added in v0.34.0

func (r *Route53HostedZone) Init(session *session.Session)

func (*Route53HostedZone) MaxBatchSize added in v0.34.0

func (r *Route53HostedZone) MaxBatchSize() int

func (*Route53HostedZone) Nuke added in v0.34.0

func (r *Route53HostedZone) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*Route53HostedZone) ResourceIdentifiers added in v0.34.0

func (r *Route53HostedZone) ResourceIdentifiers() []string

ResourceIdentifiers - The ids hosted zones

func (*Route53HostedZone) ResourceName added in v0.34.0

func (r *Route53HostedZone) ResourceName() string

ResourceName - the simple name of the aws resource

type Route53TrafficPolicy added in v0.34.0

type Route53TrafficPolicy struct {
	BaseAwsResource
	Client route53iface.Route53API
	Region string
	Ids    []string
	// contains filtered or unexported fields
}

Route53TrafficPolicy - represents all Route53TrafficPolicy

func (*Route53TrafficPolicy) GetAndSetIdentifiers added in v0.34.0

func (r *Route53TrafficPolicy) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*Route53TrafficPolicy) Init added in v0.34.0

func (r *Route53TrafficPolicy) Init(session *session.Session)

func (*Route53TrafficPolicy) MaxBatchSize added in v0.34.0

func (r *Route53TrafficPolicy) MaxBatchSize() int

func (*Route53TrafficPolicy) Nuke added in v0.34.0

func (r *Route53TrafficPolicy) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*Route53TrafficPolicy) ResourceIdentifiers added in v0.34.0

func (r *Route53TrafficPolicy) ResourceIdentifiers() []string

ResourceIdentifiers - The ids of traffic policies

func (*Route53TrafficPolicy) ResourceName added in v0.34.0

func (r *Route53TrafficPolicy) ResourceName() string

ResourceName - the simple name of the aws resource

type S3AccessPoint added in v0.34.0

type S3AccessPoint struct {
	BaseAwsResource
	Client       s3controliface.S3ControlAPI
	Region       string
	AccessPoints []string
	AccountID    *string
}

func (*S3AccessPoint) GetAndSetIdentifiers added in v0.34.0

func (ap *S3AccessPoint) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*S3AccessPoint) Init added in v0.34.0

func (ap *S3AccessPoint) Init(session *session.Session)

func (*S3AccessPoint) MaxBatchSize added in v0.34.0

func (ap *S3AccessPoint) MaxBatchSize() int

func (*S3AccessPoint) Nuke added in v0.34.0

func (ap *S3AccessPoint) Nuke(identifiers []string) error

func (*S3AccessPoint) ResourceIdentifiers added in v0.34.0

func (ap *S3AccessPoint) ResourceIdentifiers() []string

func (*S3AccessPoint) ResourceName added in v0.34.0

func (ap *S3AccessPoint) ResourceName() string

type S3Bucket

type S3Bucket struct {
	Name          string
	CreationDate  time.Time
	Tags          map[string]string
	Error         error
	IsValid       bool
	InvalidReason string
}

S3Bucket - represents S3 bucket

type S3Buckets

type S3Buckets struct {
	BaseAwsResource
	Client s3iface.S3API
	Region string
	Names  []string
}

S3Buckets - represents all S3 Buckets

func (*S3Buckets) GetAndSetIdentifiers

func (bucket *S3Buckets) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*S3Buckets) GetAndSetResourceConfig added in v0.35.0

func (bucket *S3Buckets) GetAndSetResourceConfig(configObj config.Config) config.ResourceType

To get the resource configuration

func (*S3Buckets) Init

func (bucket *S3Buckets) Init(session *session.Session)

func (*S3Buckets) MaxBatchSize

func (bucket *S3Buckets) MaxBatchSize() int

MaxBatchSize decides how many S3 buckets to delete in one call.

func (*S3Buckets) MaxConcurrentGetSize

func (bucket *S3Buckets) MaxConcurrentGetSize() int

MaxConcurrentGetSize decides how many S3 buckets to fetch in one call.

func (*S3Buckets) Nuke

func (bucket *S3Buckets) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*S3Buckets) ObjectMaxBatchSize

func (bucket *S3Buckets) ObjectMaxBatchSize() int

ObjectMaxBatchSize decides how many unique objects of an S3 bucket (object + version = unique object) to delete in one call.

func (*S3Buckets) ResourceIdentifiers

func (bucket *S3Buckets) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the S3 buckets

func (*S3Buckets) ResourceName

func (bucket *S3Buckets) ResourceName() string

ResourceName - the simple name of the aws resource

type S3MultiRegionAccessPoint added in v0.34.0

type S3MultiRegionAccessPoint struct {
	BaseAwsResource
	Client       s3controliface.S3ControlAPI
	Region       string
	AccessPoints []string
	AccountID    *string
}

func (*S3MultiRegionAccessPoint) GetAndSetIdentifiers added in v0.34.0

func (ap *S3MultiRegionAccessPoint) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*S3MultiRegionAccessPoint) Init added in v0.34.0

func (ap *S3MultiRegionAccessPoint) Init(session *session.Session)

func (*S3MultiRegionAccessPoint) MaxBatchSize added in v0.34.0

func (ap *S3MultiRegionAccessPoint) MaxBatchSize() int

func (*S3MultiRegionAccessPoint) Nuke added in v0.34.0

func (ap *S3MultiRegionAccessPoint) Nuke(identifiers []string) error

func (*S3MultiRegionAccessPoint) ResourceIdentifiers added in v0.34.0

func (ap *S3MultiRegionAccessPoint) ResourceIdentifiers() []string

func (*S3MultiRegionAccessPoint) ResourceName added in v0.34.0

func (ap *S3MultiRegionAccessPoint) ResourceName() string

type S3ObjectLambdaAccessPoint added in v0.34.0

type S3ObjectLambdaAccessPoint struct {
	BaseAwsResource
	Client       s3controliface.S3ControlAPI
	Region       string
	AccessPoints []string
	AccountID    *string
}

func (*S3ObjectLambdaAccessPoint) GetAndSetIdentifiers added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*S3ObjectLambdaAccessPoint) Init added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) Init(session *session.Session)

func (*S3ObjectLambdaAccessPoint) MaxBatchSize added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) MaxBatchSize() int

func (*S3ObjectLambdaAccessPoint) Nuke added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) Nuke(identifiers []string) error

func (*S3ObjectLambdaAccessPoint) ResourceIdentifiers added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) ResourceIdentifiers() []string

func (*S3ObjectLambdaAccessPoint) ResourceName added in v0.34.0

func (ap *S3ObjectLambdaAccessPoint) ResourceName() string

type SNSTopic

type SNSTopic struct {
	BaseAwsResource
	Client snsiface.SNSAPI
	Region string
	Arns   []string
}

func (*SNSTopic) GetAndSetIdentifiers

func (s *SNSTopic) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SNSTopic) Init

func (s *SNSTopic) Init(session *session.Session)

func (*SNSTopic) MaxBatchSize

func (s *SNSTopic) MaxBatchSize() int

func (*SNSTopic) Nuke

func (s *SNSTopic) Nuke(identifiers []string) error

func (*SNSTopic) ResourceIdentifiers

func (s *SNSTopic) ResourceIdentifiers() []string

func (*SNSTopic) ResourceName

func (s *SNSTopic) ResourceName() string

type SageMakerNotebookInstanceDeleteError

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

func (SageMakerNotebookInstanceDeleteError) Error

type SageMakerNotebookInstances

type SageMakerNotebookInstances struct {
	BaseAwsResource
	Client        sagemakeriface.SageMakerAPI
	Region        string
	InstanceNames []string
}

func (*SageMakerNotebookInstances) GetAndSetIdentifiers

func (smni *SageMakerNotebookInstances) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SageMakerNotebookInstances) Init

func (smni *SageMakerNotebookInstances) Init(session *session.Session)

func (*SageMakerNotebookInstances) MaxBatchSize

func (smni *SageMakerNotebookInstances) MaxBatchSize() int

func (*SageMakerNotebookInstances) Nuke

func (smni *SageMakerNotebookInstances) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SageMakerNotebookInstances) ResourceIdentifiers

func (smni *SageMakerNotebookInstances) ResourceIdentifiers() []string

ResourceIdentifiers - The instance names of the rds db instances

func (*SageMakerNotebookInstances) ResourceName

func (smni *SageMakerNotebookInstances) ResourceName() string

type SecretsManagerSecrets

type SecretsManagerSecrets struct {
	BaseAwsResource
	Client    secretsmanageriface.SecretsManagerAPI
	Region    string
	SecretIDs []string
}

SecretsManagerSecrets - represents all AWS secrets manager secrets that should be deleted.

func (*SecretsManagerSecrets) GetAndSetIdentifiers

func (sms *SecretsManagerSecrets) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SecretsManagerSecrets) Init

func (sms *SecretsManagerSecrets) Init(session *session.Session)

func (*SecretsManagerSecrets) MaxBatchSize

func (sms *SecretsManagerSecrets) MaxBatchSize() int

func (*SecretsManagerSecrets) Nuke

func (sms *SecretsManagerSecrets) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SecretsManagerSecrets) ResourceIdentifiers

func (sms *SecretsManagerSecrets) ResourceIdentifiers() []string

ResourceIdentifiers - The instance ids of the ec2 instances

func (*SecretsManagerSecrets) ResourceName

func (sms *SecretsManagerSecrets) ResourceName() string

ResourceName - the simple name of the aws resource

type SecurityGroup added in v0.35.0

type SecurityGroup struct {
	BaseAwsResource
	Client         ec2iface.EC2API
	Region         string
	SecurityGroups []string
}

func (*SecurityGroup) GetAndSetIdentifiers added in v0.35.0

func (sg *SecurityGroup) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SecurityGroup) Init added in v0.35.0

func (sg *SecurityGroup) Init(session *session.Session)

func (*SecurityGroup) MaxBatchSize added in v0.35.0

func (sg *SecurityGroup) MaxBatchSize() int

func (*SecurityGroup) Nuke added in v0.35.0

func (sg *SecurityGroup) Nuke(identifiers []string) error

func (*SecurityGroup) ResourceIdentifiers added in v0.35.0

func (sg *SecurityGroup) ResourceIdentifiers() []string

func (*SecurityGroup) ResourceName added in v0.35.0

func (sg *SecurityGroup) ResourceName() string

type SecurityHub

type SecurityHub struct {
	BaseAwsResource
	Client  securityhubiface.SecurityHubAPI
	Region  string
	HubArns []string
}

func (*SecurityHub) GetAndSetIdentifiers

func (sh *SecurityHub) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SecurityHub) Init

func (sh *SecurityHub) Init(session *session.Session)

func (*SecurityHub) MaxBatchSize

func (sh *SecurityHub) MaxBatchSize() int

func (*SecurityHub) Nuke

func (sh *SecurityHub) Nuke(identifiers []string) error

func (*SecurityHub) ResourceIdentifiers

func (sh *SecurityHub) ResourceIdentifiers() []string

func (*SecurityHub) ResourceName

func (sh *SecurityHub) ResourceName() string

type SesConfigurationSet added in v0.34.0

type SesConfigurationSet struct {
	BaseAwsResource
	Client sesiface.SESAPI
	Region string
	Ids    []string
}

SesConfigurationSet - represents all SES configuartion set

func (*SesConfigurationSet) GetAndSetIdentifiers added in v0.34.0

func (scs *SesConfigurationSet) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SesConfigurationSet) Init added in v0.34.0

func (scs *SesConfigurationSet) Init(session *session.Session)

func (*SesConfigurationSet) MaxBatchSize added in v0.34.0

func (scs *SesConfigurationSet) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*SesConfigurationSet) Nuke added in v0.34.0

func (scs *SesConfigurationSet) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SesConfigurationSet) ResourceIdentifiers added in v0.34.0

func (scs *SesConfigurationSet) ResourceIdentifiers() []string

ResourceIdentifiers - The Ids of the configuration set

func (*SesConfigurationSet) ResourceName added in v0.34.0

func (scs *SesConfigurationSet) ResourceName() string

ResourceName - the simple name of the aws resource

type SesEmailTemplates added in v0.34.0

type SesEmailTemplates struct {
	BaseAwsResource
	Client sesiface.SESAPI
	Region string
	Ids    []string
}

SesEmailTemplates - represents all ses email templates

func (*SesEmailTemplates) GetAndSetIdentifiers added in v0.34.0

func (set *SesEmailTemplates) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SesEmailTemplates) Init added in v0.34.0

func (set *SesEmailTemplates) Init(session *session.Session)

func (*SesEmailTemplates) MaxBatchSize added in v0.34.0

func (set *SesEmailTemplates) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*SesEmailTemplates) Nuke added in v0.34.0

func (set *SesEmailTemplates) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SesEmailTemplates) ResourceIdentifiers added in v0.34.0

func (set *SesEmailTemplates) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the ses email templates

func (*SesEmailTemplates) ResourceName added in v0.34.0

func (set *SesEmailTemplates) ResourceName() string

ResourceName - the simple name of the aws resource

type SesIdentities added in v0.34.0

type SesIdentities struct {
	BaseAwsResource
	Client sesiface.SESAPI
	Region string
	Ids    []string
}

SesIdentities - represents all SES identities

func (*SesIdentities) GetAndSetIdentifiers added in v0.34.0

func (Sid *SesIdentities) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SesIdentities) Init added in v0.34.0

func (Sid *SesIdentities) Init(session *session.Session)

func (*SesIdentities) MaxBatchSize added in v0.34.0

func (Sid *SesIdentities) MaxBatchSize() int

func (*SesIdentities) Nuke added in v0.34.0

func (Sid *SesIdentities) Nuke(identifiers []string) error

func (*SesIdentities) ResourceIdentifiers added in v0.34.0

func (Sid *SesIdentities) ResourceIdentifiers() []string

func (*SesIdentities) ResourceName added in v0.34.0

func (Sid *SesIdentities) ResourceName() string

type SesReceiptFilter added in v0.34.0

type SesReceiptFilter struct {
	BaseAwsResource
	Client  sesiface.SESAPI
	Region  string
	Ids     []string
	Nukable map[string]bool
}

func (*SesReceiptFilter) GetAndSetIdentifiers added in v0.34.0

func (sef *SesReceiptFilter) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SesReceiptFilter) Init added in v0.34.0

func (sef *SesReceiptFilter) Init(session *session.Session)

func (*SesReceiptFilter) MaxBatchSize added in v0.34.0

func (sef *SesReceiptFilter) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*SesReceiptFilter) Nuke added in v0.34.0

func (sef *SesReceiptFilter) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SesReceiptFilter) ResourceIdentifiers added in v0.34.0

func (sef *SesReceiptFilter) ResourceIdentifiers() []string

ResourceIdentifiers - The Ids of the receipt filter

func (*SesReceiptFilter) ResourceName added in v0.34.0

func (sef *SesReceiptFilter) ResourceName() string

ResourceName - the simple name of the aws resource

type SesReceiptRule added in v0.34.0

type SesReceiptRule struct {
	BaseAwsResource
	Client  sesiface.SESAPI
	Region  string
	Ids     []string
	Nukable map[string]bool
}

SesReceiptRule - represents all ses receipt rules

func (*SesReceiptRule) GetAndSetIdentifiers added in v0.34.0

func (ser *SesReceiptRule) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SesReceiptRule) Init added in v0.34.0

func (ser *SesReceiptRule) Init(session *session.Session)

func (*SesReceiptRule) MaxBatchSize added in v0.34.0

func (ser *SesReceiptRule) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*SesReceiptRule) Nuke added in v0.34.0

func (ser *SesReceiptRule) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SesReceiptRule) ResourceIdentifiers added in v0.34.0

func (ser *SesReceiptRule) ResourceIdentifiers() []string

ResourceIdentifiers - The names of the rule set

func (*SesReceiptRule) ResourceName added in v0.34.0

func (ser *SesReceiptRule) ResourceName() string

ResourceName - the simple name of the aws resource

type Snapshots

type Snapshots struct {
	BaseAwsResource
	Client      ec2iface.EC2API
	Region      string
	SnapshotIds []string
}

Snapshots - represents all user owned Snapshots

func (*Snapshots) GetAndSetIdentifiers

func (s *Snapshots) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*Snapshots) Init

func (s *Snapshots) Init(session *session.Session)

func (*Snapshots) MaxBatchSize

func (s *Snapshots) MaxBatchSize() int

func (*Snapshots) Nuke

func (s *Snapshots) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*Snapshots) ResourceIdentifiers

func (s *Snapshots) ResourceIdentifiers() []string

ResourceIdentifiers - The Snapshot snapshot ids

func (*Snapshots) ResourceName

func (s *Snapshots) ResourceName() string

ResourceName - the simple name of the aws resource

type SqsQueue

type SqsQueue struct {
	BaseAwsResource
	Client    sqsiface.SQSAPI
	Region    string
	QueueUrls []string
}

SqsQueue - represents all sqs queues

func (*SqsQueue) GetAndSetIdentifiers

func (sq *SqsQueue) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*SqsQueue) Init

func (sq *SqsQueue) Init(session *session.Session)

func (*SqsQueue) MaxBatchSize

func (sq *SqsQueue) MaxBatchSize() int

func (*SqsQueue) Nuke

func (sq *SqsQueue) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*SqsQueue) ResourceIdentifiers

func (sq *SqsQueue) ResourceIdentifiers() []string

ResourceIdentifiers - The arns of the sqs queues

func (*SqsQueue) ResourceName

func (sq *SqsQueue) ResourceName() string

ResourceName - the simple name of the aws resource

type TooManyAccessAnalyzersErr

type TooManyAccessAnalyzersErr struct{}

func (TooManyAccessAnalyzersErr) Error

func (err TooManyAccessAnalyzersErr) Error() string

type TooManyApiGatewayErr

type TooManyApiGatewayErr struct{}

func (TooManyApiGatewayErr) Error

func (err TooManyApiGatewayErr) Error() string

type TooManyApiGatewayV2Err

type TooManyApiGatewayV2Err struct{}

func (TooManyApiGatewayV2Err) Error

func (err TooManyApiGatewayV2Err) Error() string

type TooManyCloudWatchAlarmsErr

type TooManyCloudWatchAlarmsErr struct{}

func (TooManyCloudWatchAlarmsErr) Error

func (err TooManyCloudWatchAlarmsErr) Error() string

type TooManyCloudWatchDashboardsErr

type TooManyCloudWatchDashboardsErr struct{}

func (TooManyCloudWatchDashboardsErr) Error

type TooManyEKSClustersErr

type TooManyEKSClustersErr struct{}

func (TooManyEKSClustersErr) Error

func (err TooManyEKSClustersErr) Error() string

type TooManyElasticFileSystemsErr

type TooManyElasticFileSystemsErr struct{}

func (TooManyElasticFileSystemsErr) Error

type TooManyIamGroupErr

type TooManyIamGroupErr struct{}

TooManyIamGroupErr Custom Errors

func (TooManyIamGroupErr) Error

func (err TooManyIamGroupErr) Error() string

type TooManyIamPolicyErr

type TooManyIamPolicyErr struct{}

TooManyIamPolicyErr Custom Errors

func (TooManyIamPolicyErr) Error

func (err TooManyIamPolicyErr) Error() string

type TooManyIamRoleErr

type TooManyIamRoleErr struct{}

func (TooManyIamRoleErr) Error

func (err TooManyIamRoleErr) Error() string

type TooManyIamServiceLinkedRoleErr

type TooManyIamServiceLinkedRoleErr struct{}

func (TooManyIamServiceLinkedRoleErr) Error

type TooManyLogGroupsErr

type TooManyLogGroupsErr struct{}

func (TooManyLogGroupsErr) Error

func (err TooManyLogGroupsErr) Error() string

type TooManyNatErr

type TooManyNatErr struct{}

func (TooManyNatErr) Error

func (err TooManyNatErr) Error() string

type TooManyOIDCProvidersErr

type TooManyOIDCProvidersErr struct{}

func (TooManyOIDCProvidersErr) Error

func (err TooManyOIDCProvidersErr) Error() string

type TooManyOpenSearchDomainsErr

type TooManyOpenSearchDomainsErr struct{}

func (TooManyOpenSearchDomainsErr) Error

func (err TooManyOpenSearchDomainsErr) Error() string

type TooManySNSTopicsErr

type TooManySNSTopicsErr struct{}

func (TooManySNSTopicsErr) Error

func (err TooManySNSTopicsErr) Error() string

type TooManyStreamsErr

type TooManyStreamsErr struct{}

func (TooManyStreamsErr) Error

func (err TooManyStreamsErr) Error() string

type TransitGatewayPeeringAttachment

type TransitGatewayPeeringAttachment struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Ids    []string
}

TransitGateways - represents all transit gateways

func (*TransitGatewayPeeringAttachment) GetAndSetIdentifiers

func (tgpa *TransitGatewayPeeringAttachment) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*TransitGatewayPeeringAttachment) Init

func (tgpa *TransitGatewayPeeringAttachment) Init(session *session.Session)

func (*TransitGatewayPeeringAttachment) MaxBatchSize

func (tgpa *TransitGatewayPeeringAttachment) MaxBatchSize() int

func (*TransitGatewayPeeringAttachment) Nuke

func (tgpa *TransitGatewayPeeringAttachment) Nuke(identifiers []string) error

func (*TransitGatewayPeeringAttachment) ResourceIdentifiers

func (tgpa *TransitGatewayPeeringAttachment) ResourceIdentifiers() []string

func (*TransitGatewayPeeringAttachment) ResourceName

func (tgpa *TransitGatewayPeeringAttachment) ResourceName() string

type TransitGateways

type TransitGateways struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Ids    []string
}

TransitGateways - represents all transit gateways

func (*TransitGateways) GetAndSetIdentifiers

func (tgw *TransitGateways) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*TransitGateways) Init

func (tgw *TransitGateways) Init(session *session.Session)

func (*TransitGateways) MaxBatchSize

func (tgw *TransitGateways) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*TransitGateways) Nuke

func (tgw *TransitGateways) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*TransitGateways) ResourceIdentifiers

func (tgw *TransitGateways) ResourceIdentifiers() []string

ResourceIdentifiers - The Ids of the transit gateways

func (*TransitGateways) ResourceName

func (tgw *TransitGateways) ResourceName() string

ResourceName - the simple name of the aws resource

type TransitGatewaysRouteTables

type TransitGatewaysRouteTables struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Ids    []string
}

TransitGatewaysRouteTables - represents all transit gateways route tables

func (*TransitGatewaysRouteTables) GetAndSetIdentifiers

func (tgw *TransitGatewaysRouteTables) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*TransitGatewaysRouteTables) Init

func (tgw *TransitGatewaysRouteTables) Init(session *session.Session)

func (*TransitGatewaysRouteTables) MaxBatchSize

func (tgw *TransitGatewaysRouteTables) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*TransitGatewaysRouteTables) Nuke

func (tgw *TransitGatewaysRouteTables) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*TransitGatewaysRouteTables) ResourceIdentifiers

func (tgw *TransitGatewaysRouteTables) ResourceIdentifiers() []string

ResourceIdentifiers - The arns of the transit gateways route tables

func (*TransitGatewaysRouteTables) ResourceName

func (tgw *TransitGatewaysRouteTables) ResourceName() string

ResourceName - the simple name of the aws resource

type TransitGatewaysVpcAttachment

type TransitGatewaysVpcAttachment struct {
	BaseAwsResource
	Client ec2iface.EC2API
	Region string
	Ids    []string
}

TransitGatewaysVpcAttachment - represents all transit gateways vpc attachments

func (*TransitGatewaysVpcAttachment) GetAndSetIdentifiers

func (tgw *TransitGatewaysVpcAttachment) GetAndSetIdentifiers(c context.Context, configObj config.Config) ([]string, error)

func (*TransitGatewaysVpcAttachment) Init

func (tgw *TransitGatewaysVpcAttachment) Init(session *session.Session)

func (*TransitGatewaysVpcAttachment) MaxBatchSize

func (tgw *TransitGatewaysVpcAttachment) MaxBatchSize() int

MaxBatchSize - Tentative batch size to ensure AWS doesn't throttle

func (*TransitGatewaysVpcAttachment) Nuke

func (tgw *TransitGatewaysVpcAttachment) Nuke(identifiers []string) error

Nuke - nuke 'em all!!!

func (*TransitGatewaysVpcAttachment) ResourceIdentifiers

func (tgw *TransitGatewaysVpcAttachment) ResourceIdentifiers() []string

ResourceIdentifiers - The Ids of the transit gateways

func (*TransitGatewaysVpcAttachment) ResourceName

func (tgw *TransitGatewaysVpcAttachment) ResourceName() string

ResourceName - the simple name of the aws resource

type VPCEndpointDeleteTimeoutError

type VPCEndpointDeleteTimeoutError struct{}

func (VPCEndpointDeleteTimeoutError) Error

type Vpc

type Vpc struct {
	Region string
	VpcId  string
	// contains filtered or unexported fields
}

func GetDefaultVpcs

func GetDefaultVpcs(vpcs []Vpc) ([]Vpc, error)

GetDefaultVpcs needs a slice of vpcs that already have service clients and regions assigned, either via NewVpcPerRegion() (as in the CLI) or manually (as in the mock tests)

func NewVpcPerRegion

func NewVpcPerRegion(regions []string) []Vpc

NewVpcPerRegion merely assigns a service client and region to a VPC object The CLI calls this, but the tests don't because the tests need to use a mocked service client.

Source Files

Jump to

Keyboard shortcuts

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