Skip to content

Commit

Permalink
Merge branch 'main' into main-fb500f047
Browse files Browse the repository at this point in the history
  • Loading branch information
Himangini committed Sep 28, 2023
2 parents 88f6e4d + c41a274 commit f6e7363
Show file tree
Hide file tree
Showing 6 changed files with 563 additions and 10 deletions.
2 changes: 1 addition & 1 deletion pkg/actions/addon/create_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ import (
"github.com/stretchr/testify/mock"

"github.com/weaveworks/eksctl/pkg/actions/addon"
"github.com/weaveworks/eksctl/pkg/actions/addon/fakes"
api "github.com/weaveworks/eksctl/pkg/apis/eksctl.io/v1alpha5"
"github.com/weaveworks/eksctl/pkg/cfn/builder"
"github.com/weaveworks/eksctl/pkg/cfn/manager/fakes"
iamoidc "github.com/weaveworks/eksctl/pkg/iam/oidc"
"github.com/weaveworks/eksctl/pkg/testutils"
"github.com/weaveworks/eksctl/pkg/testutils/mockprovider"
Expand Down
10 changes: 3 additions & 7 deletions pkg/actions/addon/delete.go
Original file line number Diff line number Diff line change
Expand Up @@ -84,17 +84,13 @@ func NewRemover(stackManager StackManager) *Remover {
func (ar *Remover) DeleteAddonIAMTasks(ctx context.Context, wait bool) (*tasks.TaskTree, error) {
stacks, err := ar.stackManager.GetIAMAddonsStacks(ctx)
if err != nil {
return nil, err
return nil, fmt.Errorf("failed to fetch addons stacks: %v", err)
}
taskTree := &tasks.TaskTree{Parallel: true}
for _, s := range stacks {
deleteStackTasks := &tasks.TaskTree{
Parallel: false,
IsSubTask: true,
}
deleteStackTasks.Append(&deleteAddonIAMTask{
taskTree.Append(&deleteAddonIAMTask{
ctx: ctx,
info: fmt.Sprintf("deleting addon IAM %q", *s.StackName),
info: fmt.Sprintf("delete addon IAM %q", *s.StackName),
stack: s,
stackManager: ar.stackManager,
wait: wait,
Expand Down
37 changes: 36 additions & 1 deletion pkg/actions/addon/delete_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ import (
"github.com/pkg/errors"

"github.com/weaveworks/eksctl/pkg/actions/addon"
"github.com/weaveworks/eksctl/pkg/actions/addon/fakes"
api "github.com/weaveworks/eksctl/pkg/apis/eksctl.io/v1alpha5"
"github.com/weaveworks/eksctl/pkg/cfn/manager/fakes"
"github.com/weaveworks/eksctl/pkg/testutils/mockprovider"
)

Expand Down Expand Up @@ -223,4 +223,39 @@ var _ = Describe("Delete", func() {
})
})
})

Describe("DeleteAddonIAMTasks", func() {
var (
ar *addon.Remover
)
BeforeEach(func() {
fakeStackManager = new(fakes.FakeStackManager)
ar = addon.NewRemover(fakeStackManager)
})

When("it fails to fetch addons stacks", func() {
It("returns an error", func() {
fakeStackManager.GetIAMAddonsStacksReturns(nil, fmt.Errorf("foo"))
_, err := ar.DeleteAddonIAMTasks(context.Background(), false)
Expect(err).To(MatchError(ContainSubstring("failed to fetch addons stacks")))
})
})

When("there are multiple addons stacks", func() {
It("returns a tasktree with all expected tasks", func() {
fakeStackManager.GetIAMAddonsStacksReturns([]*types.Stack{
{
StackName: aws.String("eksctl-it-cluster-addon-vpc-cni"),
},
{
StackName: aws.String("eksctl-it-cluster-addon-coredns"),
},
}, nil)
taskTree, err := ar.DeleteAddonIAMTasks(context.Background(), false)
Expect(err).NotTo(HaveOccurred())
Expect(taskTree.Parallel).To(Equal(true))
Expect(len(taskTree.Tasks)).To(Equal(2))
})
})
})
})
Loading

0 comments on commit f6e7363

Please sign in to comment.