Skip to content

Commit 32d16aa

Browse files
author
Jianping Zeng
committed
resolve conflicts
2 parents 69e0108 + 8e9a356 commit 32d16aa

112 files changed

Lines changed: 51251 additions & 33934 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/aks-preview/HISTORY.rst

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,18 @@ To release a new version, please select a new version number (usually plus 1 to
1212
Pending
1313
+++++++
1414

15-
18.0.0b7
15+
18.0.0b9
1616
+++++++
1717
* Add `--max-blocked-nodes` to the `az aks nodepool add/update/upgrade` commands.
1818

19+
18.0.0b8
20+
+++++++
21+
* Populate location of managed namespaces using managed cluster's location
22+
23+
18.0.0b7
24+
+++++++
25+
* Add option `--disable-http-proxy` to `az aks update`.
26+
1927
18.0.0b6
2028
+++++++
2129
* Quality improvements for `az aks extension` and `az aks extension type` command groups

src/aks-preview/azext_aks_preview/_help.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1262,6 +1262,9 @@
12621262
- name: --migrate-vmas-to-vms
12631263
type: bool
12641264
short-summary: Migrate cluster with VMAS node pool to VMS node pool.
1265+
- name: --disable-http-proxy
1266+
type: bool
1267+
short-summary: Disable HTTP Proxy Configuration on the cluster.
12651268
examples:
12661269
- name: Reconcile the cluster back to its current state.
12671270
text: az aks update -g MyResourceGroup -n MyManagedCluster

src/aks-preview/azext_aks_preview/_params.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1444,6 +1444,7 @@ def load_arguments(self, _):
14441444
)
14451445

14461446
c.argument('migrate_vmas_to_vms', is_preview=True, action='store_true')
1447+
c.argument("disable_http_proxy", action="store_true", is_preview=True)
14471448

14481449
with self.argument_context("aks upgrade") as c:
14491450
c.argument("kubernetes_version", completer=get_k8s_upgrades_completion_list)

src/aks-preview/azext_aks_preview/custom.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -822,6 +822,7 @@ def aks_update(
822822
azure_keyvault_kms_key_vault_network_access=None,
823823
azure_keyvault_kms_key_vault_resource_id=None,
824824
http_proxy_config=None,
825+
disable_http_proxy=False,
825826
bootstrap_artifact_source=None,
826827
bootstrap_container_registry_resource_id=None,
827828
# addons

src/aks-preview/azext_aks_preview/managed_cluster_decorator.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2839,6 +2839,16 @@ def get_migrate_vmas_to_vms(self) -> bool:
28392839
"""
28402840
return self.raw_param.get("migrate_vmas_to_vms")
28412841

2842+
def get_disable_http_proxy(self) -> bool:
2843+
"""Obtain the value of disable_http_proxy.
2844+
2845+
:return: bool
2846+
"""
2847+
# read the original value passed by the command
2848+
disable_http_proxy = self.raw_param.get("disable_http_proxy")
2849+
2850+
return disable_http_proxy
2851+
28422852

28432853
# pylint: disable=too-many-public-methods
28442854
class AKSPreviewManagedClusterCreateDecorator(AKSManagedClusterCreateDecorator):
@@ -5322,6 +5332,22 @@ def update_vmas_to_vms(self, mc: ManagedCluster) -> ManagedCluster:
53225332

53235333
return mc
53245334

5335+
def update_http_proxy_enabled(self, mc: ManagedCluster) -> ManagedCluster:
5336+
"""Update http proxy config for the ManagedCluster object.
5337+
5338+
:return: the ManagedCluster object
5339+
"""
5340+
self._ensure_mc(mc)
5341+
5342+
if self.context.get_disable_http_proxy():
5343+
if mc.http_proxy_config is None:
5344+
mc.http_proxy_config = (
5345+
self.models.ManagedClusterHTTPProxyConfig() # pylint: disable=no-member
5346+
)
5347+
mc.http_proxy_config.enabled = False
5348+
5349+
return mc
5350+
53255351
def update_mc_profile_preview(self) -> ManagedCluster:
53265352
"""The overall controller used to update the preview ManagedCluster profile.
53275353
@@ -5397,6 +5423,8 @@ def update_mc_profile_preview(self) -> ManagedCluster:
53975423
mc = self.update_imds_restriction(mc)
53985424
# update VMAS to VMS
53995425
mc = self.update_vmas_to_vms(mc)
5426+
# update http proxy config
5427+
mc = self.update_http_proxy_enabled(mc)
54005428

54015429
return mc
54025430

src/aks-preview/azext_aks_preview/managednamespace.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
from azure.cli.core.util import (
1313
sdk_no_wait,
1414
)
15+
from azure.cli.core.commands.client_factory import get_mgmt_service_client
16+
from azure.mgmt.containerservice import ContainerServiceClient
1517

1618
from azext_aks_preview._consts import (
1719
CONST_NAMESPACE_NETWORK_POLICY_RULE_DENYALL,
@@ -27,11 +29,19 @@
2729
from azext_aks_preview._client_factory import CUSTOM_MGMT_AKS_PREVIEW
2830

2931

32+
def get_cluster_location(cmd, resource_group_name, cluster_name):
33+
containerservice_client = get_mgmt_service_client(cmd.cli_ctx, ContainerServiceClient)
34+
cluster = containerservice_client.managed_clusters.get(resource_group_name, cluster_name)
35+
return cluster.location
36+
37+
3038
def aks_managed_namespace_add(cmd, client, raw_parameters, headers, no_wait):
3139
resource_group_name = raw_parameters.get("resource_group_name")
3240
cluster_name = raw_parameters.get("cluster_name")
3341
namespace_name = raw_parameters.get("name")
42+
3443
namespace_config = constructNamespace(cmd, raw_parameters, namespace_name)
44+
namespace_config.location = get_cluster_location(cmd, resource_group_name, cluster_name)
3545

3646
return sdk_no_wait(
3747
no_wait,
@@ -193,7 +203,9 @@ def aks_managed_namespace_update(cmd, client, raw_parameters, headers, existedNa
193203
resource_group_name = raw_parameters.get("resource_group_name")
194204
cluster_name = raw_parameters.get("cluster_name")
195205
namespace_name = raw_parameters.get("name")
206+
196207
namespace_config = updateNamespace(cmd, raw_parameters, existedNamespace)
208+
namespace_config.location = get_cluster_location(cmd, resource_group_name, cluster_name)
197209

198210
return sdk_no_wait(
199211
no_wait,

src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_create_and_update_outbound_ips.yaml

Lines changed: 1004 additions & 785 deletions
Large diffs are not rendered by default.

src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_create_and_update_with_http_proxy_config.yaml

Lines changed: 5570 additions & 0 deletions
Large diffs are not rendered by default.

src/aks-preview/azext_aks_preview/tests/latest/recordings/test_aks_managed_namespace.yaml

Lines changed: 612 additions & 331 deletions
Large diffs are not rendered by default.

src/aks-preview/azext_aks_preview/tests/latest/test_aks_commands.py

Lines changed: 32 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6086,7 +6086,7 @@ def test_aks_create_with_node_config(self, resource_group, resource_group_locati
60866086
# In any case, AKS clirunner will execute this case in live mode every day to ensure that there are no problems,
60876087
# so mark this case as live_only.
60886088
@live_only()
6089-
@AllowLargeResponse()
6089+
@AllowLargeResponse(99999)
60906090
@AKSCustomResourceGroupPreparer(
60916091
random_name_length=17, name_prefix="clitest", location="westus2"
60926092
)
@@ -6193,6 +6193,28 @@ def test_aks_create_and_update_with_http_proxy_config(
61936193
],
61946194
)
61956195

6196+
self.kwargs.update(
6197+
{
6198+
"resource_group": resource_group,
6199+
"name": aks_name,
6200+
}
6201+
)
6202+
6203+
disable_cmd = "aks update --resource-group={resource_group} --name={name} --disable-http-proxy --aks-custom-headers AKSHTTPCustomFeatures=Microsoft.ContainerService/DisableHTTPProxyPreview"
6204+
6205+
self.cmd(
6206+
disable_cmd,
6207+
checks=[
6208+
self.check("httpProxyConfig.enabled", False),
6209+
],
6210+
)
6211+
6212+
# delete
6213+
self.cmd(
6214+
"aks delete -g {resource_group} -n {name} --yes --no-wait",
6215+
checks=[self.is_empty()],
6216+
)
6217+
61966218
@AllowLargeResponse()
61976219
@AKSCustomResourceGroupPreparer(
61986220
random_name_length=17, name_prefix="clitest", location="westus2"
@@ -7269,9 +7291,9 @@ def test_aks_maintenanceconfiguration(
72697291
)
72707292

72717293
@AllowLargeResponse()
7272-
@AKSCustomResourceGroupPreparer(random_name_length=17, name_prefix='clitest', location='eastus2')
7294+
@AKSCustomResourceGroupPreparer(random_name_length=17, name_prefix='clitest', location='uksouth')
72737295
def test_aks_managed_namespace(self, resource_group, resource_group_location):
7274-
# reset the count so in replay mode the random names will start with 0
7296+
# reset the count so that in replay mode the random names will start with 0
72757297
self.test_resources_count = 0
72767298
# kwargs for string formatting
72777299
resource_name = self.create_random_name('cliakstest', 16)
@@ -7285,10 +7307,11 @@ def test_aks_managed_namespace(self, resource_group, resource_group_location):
72857307
'ssh_key_value': self.generate_ssh_keys(),
72867308
})
72877309

7288-
create_cmd = ' '.join([
7289-
'aks', 'create', '--resource-group={resource_group}', '--name={resource_name}', '--location={location}',
7290-
'--ssh-key-value={ssh_key_value}'
7291-
])
7310+
create_cmd = (
7311+
"aks create --resource-group={resource_group} --name={resource_name} --location={location} "
7312+
"--enable-aad --aad-admin-group-object-ids 00000000-0000-0000-0000-000000000001 "
7313+
"--ssh-key-value={ssh_key_value}"
7314+
)
72927315

72937316
self.cmd(create_cmd, checks=[
72947317
self.check('provisioningState', 'Succeeded'),
@@ -7356,6 +7379,8 @@ def test_aks_managed_namespace(self, resource_group, resource_group_location):
73567379
checks=[self.is_empty()],
73577380
)
73587381

7382+
time.sleep(2*60)
7383+
73597384
self.cmd(
73607385
"aks delete -g {resource_group} -n {resource_name} --yes --no-wait",
73617386
checks=[self.is_empty()],

0 commit comments

Comments
 (0)