From 19434d8b2eeb3d08d08cf365dd4c77dee5c7be64 Mon Sep 17 00:00:00 2001 From: Westly Wright Date: Fri, 24 Jan 2020 16:24:18 -0700 Subject: [PATCH] Azure aks get the latest satisfying version from versions --- .../cluster-driver/driver-azureaks/component.js | 11 +++++++++++ 1 file changed, 11 insertions(+) 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,