Documentation ¶
Index ¶
- func IsPodIdentityAgentInstalled(ctx context.Context, eksAPI awsapi.EKS, clusterName string) (bool, error)
- func MakeStackName(clusterName, namespace, serviceAccountName string) string
- type APIDeleter
- type APILister
- type APIUpdater
- type AddonCreator
- type Creator
- type Deleter
- type Getter
- type IRSAv1StackNameResolver
- type IRSAv1StackSummary
- type Identifier
- type Migrator
- type PodIdentityMigrationOptions
- type StackCreator
- type StackDeleter
- type StackLister
- type StackUpdater
- type Summary
- type Updater
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsPodIdentityAgentInstalled ¶ added in v0.166.0
func MakeStackName ¶
MakeStackName creates a stack name for the specified access entry.
Types ¶
type APIDeleter ¶
type APIDeleter interface { APILister DeletePodIdentityAssociation(ctx context.Context, params *eks.DeletePodIdentityAssociationInput, optFns ...func(*eks.Options)) (*eks.DeletePodIdentityAssociationOutput, error) }
APIDeleter lists and deletes pod identity associations using the EKS API.
type APILister ¶
type APILister interface {
ListPodIdentityAssociations(ctx context.Context, params *eks.ListPodIdentityAssociationsInput, optFns ...func(*eks.Options)) (*eks.ListPodIdentityAssociationsOutput, error)
}
APILister lists pod identity associations using the EKS API.
type APIUpdater ¶
type APIUpdater interface { APILister DescribePodIdentityAssociation(ctx context.Context, params *eks.DescribePodIdentityAssociationInput, optFns ...func(*eks.Options)) (*eks.DescribePodIdentityAssociationOutput, error) UpdatePodIdentityAssociation(ctx context.Context, params *eks.UpdatePodIdentityAssociationInput, optFns ...func(*eks.Options)) (*eks.UpdatePodIdentityAssociationOutput, error) }
APIUpdater updates pod identity associations using the EKS API.
type AddonCreator ¶ added in v0.166.0
type Creator ¶
type Creator struct {
// contains filtered or unexported fields
}
func NewCreator ¶
func NewCreator(clusterName string, stackCreator StackCreator, eksAPI awsapi.EKS) *Creator
func (*Creator) CreatePodIdentityAssociations ¶
func (*Creator) CreateTasks ¶
type Deleter ¶
type Deleter struct { // ClusterName is the cluster name. ClusterName string // StackDeleter is used to delete stacks. StackDeleter StackDeleter // APIDeleter deletes pod identity associations using the EKS API. APIDeleter APIDeleter }
A Deleter deletes pod identity associations.
func NewDeleter ¶
func NewDeleter(clusterName string, stackDeleter StackDeleter, apiDeleter APIDeleter) *Deleter
func (*Deleter) Delete ¶
func (d *Deleter) Delete(ctx context.Context, podIDs []Identifier) error
Delete deletes the specified podIdentityAssociations.
func (*Deleter) DeleteTasks ¶
type IRSAv1StackNameResolver ¶ added in v0.166.0
type IRSAv1StackNameResolver map[string]IRSAv1StackSummary
func (*IRSAv1StackNameResolver) GetStack ¶ added in v0.166.0
func (r *IRSAv1StackNameResolver) GetStack(roleARN string) (IRSAv1StackSummary, bool)
func (*IRSAv1StackNameResolver) Populate ¶ added in v0.166.0
func (r *IRSAv1StackNameResolver) Populate( getIAMServiceAccounts func() ([]*api.ClusterIAMServiceAccount, error), ) error
type IRSAv1StackSummary ¶ added in v0.166.0
type Identifier ¶
type Identifier struct { // Namespace is the namespace the service account belongs to. Namespace string // ServiceAccountName is the name of the Kubernetes ServiceAccount. ServiceAccountName string }
Identifier represents a pod identity association.
func ToIdentifiers ¶
func ToIdentifiers(podIdentityAssociations []api.PodIdentityAssociation) []Identifier
ToIdentifiers maps a list of PodIdentityAssociations to a list of Identifiers.
func (Identifier) IDString ¶ added in v0.166.0
func (i Identifier) IDString() string
func (Identifier) NameString ¶ added in v0.166.0
func (i Identifier) NameString() string
type Migrator ¶ added in v0.166.0
type Migrator struct {
// contains filtered or unexported fields
}
func NewMigrator ¶ added in v0.166.0
func NewMigrator( clusterName string, eksAPI awsapi.EKS, iamAPI awsapi.IAM, stackUpdater StackUpdater, clientSet kubernetes.Interface, addonCreator AddonCreator, ) *Migrator
func (*Migrator) MigrateToPodIdentity ¶ added in v0.166.0
func (m *Migrator) MigrateToPodIdentity(ctx context.Context, options PodIdentityMigrationOptions) error
type PodIdentityMigrationOptions ¶ added in v0.166.0
type StackCreator ¶ added in v0.166.0
type StackDeleter ¶
type StackDeleter interface { StackLister DeleteStackBySpecSync(ctx context.Context, stack *cfntypes.Stack, errCh chan error) error }
A StackDeleter lists and deletes CloudFormation stacks.
type StackLister ¶
type StackLister interface { ListPodIdentityStackNames(ctx context.Context) ([]string, error) DescribeStack(ctx context.Context, stack *manager.Stack) (*manager.Stack, error) GetIAMServiceAccounts(ctx context.Context) ([]*api.ClusterIAMServiceAccount, error) }
A StackLister lists and describes CloudFormation stacks.
type StackUpdater ¶
type StackUpdater interface { StackLister // MustUpdateStack updates the CloudFormation stack. MustUpdateStack(ctx context.Context, options manager.UpdateStackOptions) error }
A StackUpdater updates CloudFormation stacks.
type Updater ¶
type Updater struct { // ClusterName is the cluster name. ClusterName string // StackUpdater updates stacks. StackUpdater StackUpdater // APIDeleter updates pod identity associations using the EKS API. APIUpdater APIUpdater }
An Updater updates pod identity associations.