@@ -163,6 +163,10 @@ func (r *AWSMachinePool) validateRefreshPreferences() field.ErrorList {
163
163
return allErrs
164
164
}
165
165
166
+ func (r * AWSMachinePool ) validateLifecycleHooks () field.ErrorList {
167
+ return validateLifecycleHooks (r .Spec .AWSLifecycleHooks )
168
+ }
169
+
166
170
// ValidateCreate will do any extra validation when creating a AWSMachinePool.
167
171
func (r * AWSMachinePool ) ValidateCreate () (admission.Warnings , error ) {
168
172
log .Info ("AWSMachinePool validate create" , "machine-pool" , klog .KObj (r ))
@@ -178,6 +182,7 @@ func (r *AWSMachinePool) ValidateCreate() (admission.Warnings, error) {
178
182
allErrs = append (allErrs , r .validateSpotInstances ()... )
179
183
allErrs = append (allErrs , r .validateRefreshPreferences ()... )
180
184
allErrs = append (allErrs , r .validateInstanceMarketType ()... )
185
+ allErrs = append (allErrs , r .validateLifecycleHooks ()... )
181
186
182
187
if len (allErrs ) == 0 {
183
188
return nil , nil
@@ -205,7 +210,7 @@ func (r *AWSMachinePool) validateInstanceMarketType() field.ErrorList {
205
210
switch r .Spec .AWSLaunchTemplate .MarketType {
206
211
case "" , v1beta2 .MarketTypeOnDemand , v1beta2 .MarketTypeSpot , v1beta2 .MarketTypeCapacityBlock :
207
212
default :
208
- allErrs = append (allErrs , field .Invalid (field .NewPath ("spec.awsLaunchTemplate.MarketType " ), r .Spec .AWSLaunchTemplate .MarketType , fmt .Sprintf ("Valid values are: %s, %s, %s and omitted" , v1beta2 .MarketTypeOnDemand , v1beta2 .MarketTypeSpot , v1beta2 .MarketTypeCapacityBlock )))
213
+ allErrs = append (allErrs , field .Invalid (field .NewPath ("spec.awsLaunchTemplate.marketType " ), r .Spec .AWSLaunchTemplate .MarketType , fmt .Sprintf ("Valid values are: %s, %s, %s and omitted" , v1beta2 .MarketTypeOnDemand , v1beta2 .MarketTypeSpot , v1beta2 .MarketTypeCapacityBlock )))
209
214
}
210
215
if r .Spec .AWSLaunchTemplate .MarketType == v1beta2 .MarketTypeSpot && r .Spec .AWSLaunchTemplate .CapacityReservationID != nil {
211
216
allErrs = append (allErrs , field .Forbidden (field .NewPath ("spec.awsLaunchTemplate.marketType" ), "cannot be set to 'Spot' when CapacityReservationID is specified" ))
@@ -228,6 +233,7 @@ func (r *AWSMachinePool) ValidateUpdate(_ runtime.Object) (admission.Warnings, e
228
233
allErrs = append (allErrs , r .validateAdditionalSecurityGroups ()... )
229
234
allErrs = append (allErrs , r .validateSpotInstances ()... )
230
235
allErrs = append (allErrs , r .validateRefreshPreferences ()... )
236
+ allErrs = append (allErrs , r .validateLifecycleHooks ()... )
231
237
232
238
if len (allErrs ) == 0 {
233
239
return nil , nil
0 commit comments