@@ -82,13 +82,85 @@ func TestEKSAddonPlan(t *testing.T) {
8282 },
8383 }, nil )
8484
85- m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
85+ out := & eks.DescribeAddonOutput {
86+ Addon : & eks.Addon {
87+ Status : aws .String (eks .AddonStatusActive ),
88+ },
89+ }
90+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
8691 AddonName : aws .String (addon1Name ),
8792 ClusterName : aws .String (clusterName ),
88- })).Return (nil )
93+ })).Return (out , nil )
94+ },
95+ desiredAddons : []* EKSAddon {
96+ createDesiredAddon (addon1Name , addon1version ),
97+ },
98+ expectCreateError : false ,
99+ expectDoError : false ,
100+ },
101+ {
102+ name : "no installed and 2 desired" ,
103+ expect : func (m * mock_eksiface.MockEKSAPIMockRecorder ) {
104+ m .
105+ CreateAddon (gomock .Eq (& eks.CreateAddonInput {
106+ AddonName : aws .String (addon1Name ),
107+ AddonVersion : aws .String (addon1version ),
108+ ClusterName : aws .String (clusterName ),
109+ ResolveConflicts : aws .String (eks .ResolveConflictsOverwrite ),
110+ Tags : convertTags (createTags ()),
111+ })).
112+ Return (& eks.CreateAddonOutput {
113+ Addon : & eks.Addon {
114+ AddonArn : aws .String (addonARN ),
115+ AddonName : aws .String (addon1Name ),
116+ AddonVersion : aws .String (addon1version ),
117+ ClusterName : aws .String (clusterName ),
118+ CreatedAt : & created ,
119+ ModifiedAt : & created ,
120+ Status : aws .String (addonStatusCreating ),
121+ Tags : convertTags (createTags ()),
122+ },
123+ }, nil )
124+
125+ out := & eks.DescribeAddonOutput {
126+ Addon : & eks.Addon {
127+ Status : aws .String (eks .AddonStatusActive ),
128+ },
129+ }
130+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
131+ AddonName : aws .String (addon1Name ),
132+ ClusterName : aws .String (clusterName ),
133+ })).Return (out , nil )
134+
135+ m .
136+ CreateAddon (gomock .Eq (& eks.CreateAddonInput {
137+ AddonName : aws .String ("addon2" ),
138+ AddonVersion : aws .String (addon1version ),
139+ ClusterName : aws .String (clusterName ),
140+ ResolveConflicts : aws .String (eks .ResolveConflictsOverwrite ),
141+ Tags : convertTags (createTags ()),
142+ })).
143+ Return (& eks.CreateAddonOutput {
144+ Addon : & eks.Addon {
145+ AddonArn : aws .String (addonARN ),
146+ AddonName : aws .String ("addon2" ),
147+ AddonVersion : aws .String (addon1version ),
148+ ClusterName : aws .String (clusterName ),
149+ CreatedAt : & created ,
150+ ModifiedAt : & created ,
151+ Status : aws .String (addonStatusCreating ),
152+ Tags : convertTags (createTags ()),
153+ },
154+ }, nil )
155+
156+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
157+ AddonName : aws .String ("addon2" ),
158+ ClusterName : aws .String (clusterName ),
159+ })).Return (out , nil )
89160 },
90161 desiredAddons : []* EKSAddon {
91162 createDesiredAddon (addon1Name , addon1version ),
163+ createDesiredAddon ("addon2" , addon1version ),
92164 },
93165 expectCreateError : false ,
94166 expectDoError : false ,
@@ -110,10 +182,15 @@ func TestEKSAddonPlan(t *testing.T) {
110182 {
111183 name : "1 installed and 1 desired - both same and installed is creating" ,
112184 expect : func (m * mock_eksiface.MockEKSAPIMockRecorder ) {
113- m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
185+ out := & eks.DescribeAddonOutput {
186+ Addon : & eks.Addon {
187+ Status : aws .String (eks .AddonStatusActive ),
188+ },
189+ }
190+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
114191 AddonName : aws .String (addon1Name ),
115192 ClusterName : aws .String (clusterName ),
116- })).Return (nil )
193+ })).Return (out , nil )
117194 },
118195 desiredAddons : []* EKSAddon {
119196 createDesiredAddon (addon1Name , addon1version ),
@@ -142,10 +219,16 @@ func TestEKSAddonPlan(t *testing.T) {
142219 Type : aws .String (eks .UpdateTypeVersionUpdate ),
143220 },
144221 }, nil )
145- m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
222+
223+ out := & eks.DescribeAddonOutput {
224+ Addon : & eks.Addon {
225+ Status : aws .String (eks .AddonStatusActive ),
226+ },
227+ }
228+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
146229 AddonName : aws .String (addon1Name ),
147230 ClusterName : aws .String (clusterName ),
148- })).Return (nil )
231+ })).Return (out , nil )
149232 },
150233 desiredAddons : []* EKSAddon {
151234 createDesiredAddon (addon1Name , addon1Upgrade ),
@@ -159,10 +242,15 @@ func TestEKSAddonPlan(t *testing.T) {
159242 {
160243 name : "1 installed and 1 desired - version upgrade in progress" ,
161244 expect : func (m * mock_eksiface.MockEKSAPIMockRecorder ) {
162- m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
245+ out := & eks.DescribeAddonOutput {
246+ Addon : & eks.Addon {
247+ Status : aws .String (eks .AddonStatusActive ),
248+ },
249+ }
250+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
163251 AddonName : aws .String (addon1Name ),
164252 ClusterName : aws .String (clusterName ),
165- })).Return (nil )
253+ })).Return (out , nil )
166254 },
167255 desiredAddons : []* EKSAddon {
168256 createDesiredAddon (addon1Name , addon1Upgrade ),
@@ -217,10 +305,15 @@ func TestEKSAddonPlan(t *testing.T) {
217305 },
218306 }, nil )
219307
220- m .WaitUntilAddonActive (gomock .Eq (& eks.DescribeAddonInput {
308+ out := & eks.DescribeAddonOutput {
309+ Addon : & eks.Addon {
310+ Status : aws .String (eks .AddonStatusActive ),
311+ },
312+ }
313+ m .DescribeAddon (gomock .Eq (& eks.DescribeAddonInput {
221314 AddonName : aws .String (addon1Name ),
222315 ClusterName : aws .String (clusterName ),
223- })).Return (nil )
316+ })).Return (out , nil )
224317 },
225318 desiredAddons : []* EKSAddon {
226319 createDesiredAddonExtraTag (addon1Name , addon1Upgrade ),
@@ -251,7 +344,6 @@ func TestEKSAddonPlan(t *testing.T) {
251344 Tags : convertTags (createTags ()),
252345 },
253346 }, nil )
254-
255347 m .WaitUntilAddonDeleted (gomock .Eq (& eks.DescribeAddonInput {
256348 AddonName : aws .String (addon1Name ),
257349 ClusterName : aws .String (clusterName ),
0 commit comments