in cmd/resource/eks_handlers.go [40:92]
func updateCluster(svc eksiface.EKSAPI, desiredModel *Model) (OperationComplete, error) {
currentModel, complete, _, err := stabilize(svc, desiredModel, "ACTIVE")
if err != nil {
return Complete, err
}
if !complete {
return InProgress, err
}
if vpcChanged(*currentModel, *desiredModel) {
log.Println("Updating VPC config...")
err := updateVpcConfig(svc, desiredModel)
if err != nil {
if updateInProgress(err) {
return InProgress, nil
}
return Complete, err
}
return InProgress, nil
}
if loggingChanged(*currentModel, *desiredModel) {
log.Println("Updating logging config...")
err := updateLoggingConfig(svc, desiredModel)
if err != nil {
if updateInProgress(err) {
return InProgress, nil
}
return Complete, err
}
return InProgress, nil
}
if versionChanged(*currentModel, *desiredModel) {
log.Println("Updating kubernetes version...")
err := updateVersionConfig(svc, desiredModel)
if err != nil {
if updateInProgress(err) {
return InProgress, nil
}
return Complete, err
}
return InProgress, nil
}
if tagsChanged(*currentModel, *desiredModel) {
log.Println("Updating kubernetes tags...")
err = updateTags(svc, currentModel, desiredModel)
if err != nil {
if updateInProgress(err) {
return InProgress, nil
}
return Complete, err
}
}
return Complete, nil
}