Documentation
¶
Index ¶
- type CFNStackCleanup
- type Cleanup
- type CloudWatchLogsCleaner
- type EC2Cleaner
- func (e *EC2Cleaner) DeleteInstances(ctx context.Context, instanceIDs []string) error
- func (e *EC2Cleaner) DeleteKeyPair(ctx context.Context, keyPairID string) error
- func (e *EC2Cleaner) ListKeyPairs(ctx context.Context, input FilterInput) ([]string, error)
- func (e *EC2Cleaner) ListTaggedInstances(ctx context.Context, input FilterInput) ([]string, error)
- type EKSClusterCleanup
- type FSxCleaner
- type FilterInput
- type IAMCleaner
- func (c *IAMCleaner) DeleteInstanceProfile(ctx context.Context, profileName string) error
- func (c *IAMCleaner) DeleteRole(ctx context.Context, roleName string) error
- func (c *IAMCleaner) ListInstanceProfiles(ctx context.Context, filterInput FilterInput) ([]string, error)
- func (c *IAMCleaner) ListRoles(ctx context.Context, filterInput FilterInput) ([]string, error)
- func (c *IAMCleaner) ListRolesForInstanceProfile(ctx context.Context, profileName string) ([]string, error)
- func (c *IAMCleaner) RemoveRolesFromInstanceProfile(ctx context.Context, roles []string, profileName string) error
- type ManagedNodeGroupCleanup
- type NodeGroupInfo
- type ResourceTaggingClient
- type ResourceWithTags
- type RolesAnywhereCleaner
- func (c *RolesAnywhereCleaner) DeleteProfile(ctx context.Context, profileID string) error
- func (c *RolesAnywhereCleaner) DeleteTrustAnchor(ctx context.Context, anchorID string) error
- func (c *RolesAnywhereCleaner) ListProfiles(ctx context.Context, filterInput FilterInput) ([]string, error)
- func (c *RolesAnywhereCleaner) ListTrustAnchors(ctx context.Context, filterInput FilterInput) ([]string, error)
- type S3Cleaner
- type SSMCleaner
- func (s *SSMCleaner) DeleteActivation(ctx context.Context, activationID string) error
- func (s *SSMCleaner) DeleteManagedInstance(ctx context.Context, instanceID string) error
- func (s *SSMCleaner) DeleteParameter(ctx context.Context, parameterName string) error
- func (s *SSMCleaner) ListActivations(ctx context.Context, filterInput FilterInput) ([]string, error)
- func (s *SSMCleaner) ListActivationsForNode(ctx context.Context, nodeName, clusterName string) ([]string, error)
- func (s *SSMCleaner) ListManagedInstances(ctx context.Context, filterInput FilterInput) ([]string, error)
- func (s *SSMCleaner) ListManagedInstancesByActivationID(ctx context.Context, activationIDs ...string) ([]string, error)
- func (s *SSMCleaner) ListParameters(ctx context.Context, filterInput FilterInput) ([]string, error)
- type Sweeper
- type SweeperInput
- type Tag
- type VPCCleaner
- func (v *VPCCleaner) DeleteInternetGateway(ctx context.Context, igwID string) error
- func (v *VPCCleaner) DeleteNetworkInterface(ctx context.Context, networkInterfaceID string) error
- func (v *VPCCleaner) DeletePeeringConnection(ctx context.Context, peeringConnectionID string) error
- func (v *VPCCleaner) DeleteRouteTable(ctx context.Context, routeTableID string) error
- func (v *VPCCleaner) DeleteSecurityGroup(ctx context.Context, securityGroupID string) error
- func (v *VPCCleaner) DeleteSubnet(ctx context.Context, subnetID string) error
- func (v *VPCCleaner) DeleteTransitGateway(ctx context.Context, tgwID string) error
- func (v *VPCCleaner) DeleteVPC(ctx context.Context, vpcID string) error
- func (v *VPCCleaner) ListInternetGateways(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListNetworkInterfaces(ctx context.Context, vpcID string) ([]string, error)
- func (v *VPCCleaner) ListPeeringConnections(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListRouteTables(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListSecurityGroups(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListSubnets(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListTransitGateways(ctx context.Context, input FilterInput) ([]string, error)
- func (v *VPCCleaner) ListVPCs(ctx context.Context, input FilterInput) ([]string, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CFNStackCleanup ¶
type CFNStackCleanup struct {
// contains filtered or unexported fields
}
func NewCFNStackCleanup ¶
func NewCFNStackCleanup(cfnClient *cloudformation.Client, logger logr.Logger) *CFNStackCleanup
func (*CFNStackCleanup) DeleteStack ¶
func (c *CFNStackCleanup) DeleteStack(ctx context.Context, stackName string) error
func (*CFNStackCleanup) ListArchitectureStacks ¶
func (c *CFNStackCleanup) ListArchitectureStacks(ctx context.Context, input FilterInput) ([]string, error)
ListArchitectureStacks lists all the architecture stacks for a given cluster architecture stacks start with EKSHybridCI-Arch
func (*CFNStackCleanup) ListCredentialStacks ¶
func (c *CFNStackCleanup) ListCredentialStacks(ctx context.Context, input FilterInput) ([]string, error)
ListCredentialStacks lists all the credential stacks for a given cluster credentials stacks start with EKSHybridCI but not EKSHybridCI-Arch
type Cleanup ¶ added in v1.0.5
type Cleanup struct {
Cleanup func(ctx context.Context, filterInput FilterInput) error
FailureMessage string
}
type CloudWatchLogsCleaner ¶ added in v1.0.6
type CloudWatchLogsCleaner struct {
// contains filtered or unexported fields
}
func NewCloudWatchLogsCleaner ¶ added in v1.0.6
func NewCloudWatchLogsCleaner(client *cloudwatchlogs.Client, taggingClient *ResourceTaggingClient, logger logr.Logger) *CloudWatchLogsCleaner
func (*CloudWatchLogsCleaner) DeleteLogGroup ¶ added in v1.0.6
func (c *CloudWatchLogsCleaner) DeleteLogGroup(ctx context.Context, logGroupName string) error
func (*CloudWatchLogsCleaner) ListLogGroups ¶ added in v1.0.6
func (c *CloudWatchLogsCleaner) ListLogGroups(ctx context.Context, filterInput FilterInput) ([]string, error)
ListLogGroups lists all log groups that match the filter input the instance age threshold is not used for log groups, instead we use 15 days as the threshold
type EC2Cleaner ¶
type EC2Cleaner struct {
// contains filtered or unexported fields
}
func NewEC2Cleaner ¶
func NewEC2Cleaner(ec2Client *ec2.Client, logger logr.Logger) *EC2Cleaner
func (*EC2Cleaner) DeleteInstances ¶
func (e *EC2Cleaner) DeleteInstances(ctx context.Context, instanceIDs []string) error
func (*EC2Cleaner) DeleteKeyPair ¶
func (e *EC2Cleaner) DeleteKeyPair(ctx context.Context, keyPairID string) error
func (*EC2Cleaner) ListKeyPairs ¶
func (e *EC2Cleaner) ListKeyPairs(ctx context.Context, input FilterInput) ([]string, error)
func (*EC2Cleaner) ListTaggedInstances ¶
func (e *EC2Cleaner) ListTaggedInstances(ctx context.Context, input FilterInput) ([]string, error)
type EKSClusterCleanup ¶
type EKSClusterCleanup struct {
// contains filtered or unexported fields
}
func NewEKSClusterCleanup ¶
func NewEKSClusterCleanup(eksClient *eks.Client, logger logr.Logger) *EKSClusterCleanup
func (*EKSClusterCleanup) DeleteCluster ¶
func (c *EKSClusterCleanup) DeleteCluster(ctx context.Context, clusterName string) error
func (*EKSClusterCleanup) ListEKSClusters ¶
func (c *EKSClusterCleanup) ListEKSClusters(ctx context.Context, input FilterInput) ([]string, error)
type FSxCleaner ¶ added in v1.0.18
type FSxCleaner struct {
// contains filtered or unexported fields
}
func NewFSxCleaner ¶ added in v1.0.18
func (*FSxCleaner) DeleteFileSystems ¶ added in v1.0.18
func (f *FSxCleaner) DeleteFileSystems(ctx context.Context, fileSystemIDs []string) error
func (*FSxCleaner) ListTaggedFileSystems ¶ added in v1.0.18
func (f *FSxCleaner) ListTaggedFileSystems(ctx context.Context, input FilterInput) ([]string, error)
type FilterInput ¶
type IAMCleaner ¶
type IAMCleaner struct {
// contains filtered or unexported fields
}
func NewIAMCleaner ¶
func NewIAMCleaner(iamClient *iam.Client, logger logr.Logger) *IAMCleaner
func (*IAMCleaner) DeleteInstanceProfile ¶
func (c *IAMCleaner) DeleteInstanceProfile(ctx context.Context, profileName string) error
func (*IAMCleaner) DeleteRole ¶
func (c *IAMCleaner) DeleteRole(ctx context.Context, roleName string) error
func (*IAMCleaner) ListInstanceProfiles ¶
func (c *IAMCleaner) ListInstanceProfiles(ctx context.Context, filterInput FilterInput) ([]string, error)
func (*IAMCleaner) ListRoles ¶
func (c *IAMCleaner) ListRoles(ctx context.Context, filterInput FilterInput) ([]string, error)
func (*IAMCleaner) ListRolesForInstanceProfile ¶
func (*IAMCleaner) RemoveRolesFromInstanceProfile ¶
type ManagedNodeGroupCleanup ¶ added in v1.0.10
type ManagedNodeGroupCleanup struct {
// contains filtered or unexported fields
}
func NewManagedNodeGroupCleanup ¶ added in v1.0.10
func NewManagedNodeGroupCleanup(eksClient *eks.Client, logger logr.Logger) *ManagedNodeGroupCleanup
func (*ManagedNodeGroupCleanup) DeleteManagedNodeGroup ¶ added in v1.0.10
func (c *ManagedNodeGroupCleanup) DeleteManagedNodeGroup(ctx context.Context, clusterName, nodeGroupName string) error
func (*ManagedNodeGroupCleanup) ListManagedNodeGroups ¶ added in v1.0.10
func (c *ManagedNodeGroupCleanup) ListManagedNodeGroups(ctx context.Context, input FilterInput) ([]NodeGroupInfo, error)
type NodeGroupInfo ¶ added in v1.0.10
type ResourceTaggingClient ¶ added in v1.0.6
type ResourceTaggingClient struct {
// contains filtered or unexported fields
}
func NewResourceTaggingClient ¶ added in v1.0.6
func NewResourceTaggingClient(client *resourcegroupstaggingapi.Client) *ResourceTaggingClient
func (*ResourceTaggingClient) GetResourcesWithClusterTag ¶ added in v1.0.6
func (c *ResourceTaggingClient) GetResourcesWithClusterTag(ctx context.Context, resourceType string, filterInput FilterInput) (map[string][]Tag, error)
GetResourcesWithClusterTag returns a array of resourceARNs for the resourceType with the given cluster tag this is useful for getting resources which do not allow filtering by tag in their native api and (usually) an additional api call per resource to get the tags which we need to determine if we want to delete the resource
type ResourceWithTags ¶
type RolesAnywhereCleaner ¶
type RolesAnywhereCleaner struct {
// contains filtered or unexported fields
}
func NewRolesAnywhereCleaner ¶
func NewRolesAnywhereCleaner(rolesAnywhere *rolesanywhere.Client, logger logr.Logger) *RolesAnywhereCleaner
func (*RolesAnywhereCleaner) DeleteProfile ¶
func (c *RolesAnywhereCleaner) DeleteProfile(ctx context.Context, profileID string) error
func (*RolesAnywhereCleaner) DeleteTrustAnchor ¶
func (c *RolesAnywhereCleaner) DeleteTrustAnchor(ctx context.Context, anchorID string) error
func (*RolesAnywhereCleaner) ListProfiles ¶
func (c *RolesAnywhereCleaner) ListProfiles(ctx context.Context, filterInput FilterInput) ([]string, error)
func (*RolesAnywhereCleaner) ListTrustAnchors ¶
func (c *RolesAnywhereCleaner) ListTrustAnchors(ctx context.Context, filterInput FilterInput) ([]string, error)
type S3Cleaner ¶
type S3Cleaner struct {
// contains filtered or unexported fields
}
func (*S3Cleaner) DeleteBucket ¶
func (*S3Cleaner) EmptyS3Bucket ¶
func (*S3Cleaner) ListBuckets ¶
type SSMCleaner ¶
type SSMCleaner struct {
// contains filtered or unexported fields
}
func NewSSMCleaner ¶
func NewSSMCleaner(ssm *ssm.Client, logger logr.Logger) *SSMCleaner
func (*SSMCleaner) DeleteActivation ¶
func (s *SSMCleaner) DeleteActivation(ctx context.Context, activationID string) error
func (*SSMCleaner) DeleteManagedInstance ¶
func (s *SSMCleaner) DeleteManagedInstance(ctx context.Context, instanceID string) error
func (*SSMCleaner) DeleteParameter ¶
func (s *SSMCleaner) DeleteParameter(ctx context.Context, parameterName string) error
func (*SSMCleaner) ListActivations ¶
func (s *SSMCleaner) ListActivations(ctx context.Context, filterInput FilterInput) ([]string, error)
func (*SSMCleaner) ListActivationsForNode ¶
func (*SSMCleaner) ListManagedInstances ¶
func (s *SSMCleaner) ListManagedInstances(ctx context.Context, filterInput FilterInput) ([]string, error)
func (*SSMCleaner) ListManagedInstancesByActivationID ¶
func (*SSMCleaner) ListParameters ¶
func (s *SSMCleaner) ListParameters(ctx context.Context, filterInput FilterInput) ([]string, error)
type SweeperInput ¶
type VPCCleaner ¶
type VPCCleaner struct {
// contains filtered or unexported fields
}
VPCCleaner is responsible for cleaning up AWS VPC resources
func NewVPCCleaner ¶
func NewVPCCleaner(ec2Client *ec2.Client, logger logr.Logger) *VPCCleaner
NewVPCCleaner creates a new VPC cleaner
func (*VPCCleaner) DeleteInternetGateway ¶
func (v *VPCCleaner) DeleteInternetGateway(ctx context.Context, igwID string) error
func (*VPCCleaner) DeleteNetworkInterface ¶
func (v *VPCCleaner) DeleteNetworkInterface(ctx context.Context, networkInterfaceID string) error
func (*VPCCleaner) DeletePeeringConnection ¶
func (v *VPCCleaner) DeletePeeringConnection(ctx context.Context, peeringConnectionID string) error
func (*VPCCleaner) DeleteRouteTable ¶
func (v *VPCCleaner) DeleteRouteTable(ctx context.Context, routeTableID string) error
func (*VPCCleaner) DeleteSecurityGroup ¶
func (v *VPCCleaner) DeleteSecurityGroup(ctx context.Context, securityGroupID string) error
func (*VPCCleaner) DeleteSubnet ¶
func (v *VPCCleaner) DeleteSubnet(ctx context.Context, subnetID string) error
func (*VPCCleaner) DeleteTransitGateway ¶ added in v1.0.5
func (v *VPCCleaner) DeleteTransitGateway(ctx context.Context, tgwID string) error
func (*VPCCleaner) DeleteVPC ¶
func (v *VPCCleaner) DeleteVPC(ctx context.Context, vpcID string) error
func (*VPCCleaner) ListInternetGateways ¶
func (v *VPCCleaner) ListInternetGateways(ctx context.Context, input FilterInput) ([]string, error)
func (*VPCCleaner) ListNetworkInterfaces ¶
func (*VPCCleaner) ListPeeringConnections ¶
func (v *VPCCleaner) ListPeeringConnections(ctx context.Context, input FilterInput) ([]string, error)
func (*VPCCleaner) ListRouteTables ¶
func (v *VPCCleaner) ListRouteTables(ctx context.Context, input FilterInput) ([]string, error)
func (*VPCCleaner) ListSecurityGroups ¶
func (v *VPCCleaner) ListSecurityGroups(ctx context.Context, input FilterInput) ([]string, error)
func (*VPCCleaner) ListSubnets ¶
func (v *VPCCleaner) ListSubnets(ctx context.Context, input FilterInput) ([]string, error)
func (*VPCCleaner) ListTransitGateways ¶ added in v1.0.5
func (v *VPCCleaner) ListTransitGateways(ctx context.Context, input FilterInput) ([]string, error)
ListTransitGateways lists all transit gateways
func (*VPCCleaner) ListVPCs ¶
func (v *VPCCleaner) ListVPCs(ctx context.Context, input FilterInput) ([]string, error)