diff --git a/lib/shared/addon/components/cluster-driver/driver-azureaks/component.js b/lib/shared/addon/components/cluster-driver/driver-azureaks/component.js index a7da6944f..c8ec9c842 100644 --- a/lib/shared/addon/components/cluster-driver/driver-azureaks/component.js +++ b/lib/shared/addon/components/cluster-driver/driver-azureaks/component.js @@ -3,12 +3,15 @@ import Component from '@ember/component' import { computed, get, set, setProperties, observer } from '@ember/object'; +import { alias } from '@ember/object/computed'; import layout from './template'; import { inject as service } from '@ember/service'; import { hash } from 'rsvp'; import { on } from '@ember/object/evented'; import ipaddr from 'ipaddr.js'; import { equal } from '@ember/object/computed' +import C from 'shared/utils/constants'; +import Semver from 'semver'; import { sizes, @@ -32,6 +35,7 @@ const NETWORK_PLUGINS = [ export default Component.extend(ClusterDriver, { globalStore: service(), intl: service(), + settings: service(), layout, configField: 'azureKubernetesServiceConfig', @@ -42,6 +46,7 @@ export default Component.extend(ClusterDriver, { netMode: 'default', monitoringRegionConent: [], networkPlugins: NETWORK_PLUGINS, + defaultK8sVersionRange: alias(`settings.${ C.SETTING.VERSION_SYSTEM_K8S_DEFAULT_RANGE }`), editing: equal('mode', 'edit'), isNew: equal('mode', 'new'), @@ -115,6 +120,12 @@ export default Component.extend(ClusterDriver, { return hash(aksRequest).then((resp) => { const { versions, virtualNetworks } = resp; + const versionz = (get(versions, 'body') || []); + const initialVersion = Semver.maxSatisfying(versionz, this.defaultK8sVersionRange); + + if (initialVersion) { + set(this, 'cluster.azureKubernetesServiceConfig.kubernetesVersion', initialVersion); + } setProperties(this, { step: 2,