|
47 | 47 |
|
48 | 48 | from .aaz.latest.vm.disk import AttachDetachDataDisk |
49 | 49 | from .aaz.latest.vm import Update as UpdateVM |
| 50 | +from .aaz.latest.vmss import Update as UpdateVMSS |
50 | 51 |
|
51 | 52 | from .generated.custom import * # noqa: F403, pylint: disable=unused-wildcard-import,wildcard-import |
52 | 53 | try: |
@@ -873,7 +874,7 @@ def create_vm(cmd, vm_name, resource_group_name, image=None, size='Standard_DS1_ |
873 | 874 | enable_user_redeploy_scheduled_events=None, zone_placement_policy=None, include_zones=None, |
874 | 875 | exclude_zones=None, align_regional_disks_to_vm_zone=None, wire_server_mode=None, imds_mode=None, |
875 | 876 | wire_server_access_control_profile_reference_id=None, imds_access_control_profile_reference_id=None, |
876 | | - key_incarnation_id=None): |
| 877 | + key_incarnation_id=None, add_proxy_agent_extension=None): |
877 | 878 |
|
878 | 879 | from azure.cli.core.commands.client_factory import get_subscription_id |
879 | 880 | from azure.cli.core.util import random_string, hash_string |
@@ -1103,7 +1104,7 @@ def create_vm(cmd, vm_name, resource_group_name, image=None, size='Standard_DS1_ |
1103 | 1104 | imds_mode=imds_mode, |
1104 | 1105 | wire_server_access_control_profile_reference_id=wire_server_access_control_profile_reference_id, |
1105 | 1106 | imds_access_control_profile_reference_id=imds_access_control_profile_reference_id, |
1106 | | - key_incarnation_id=key_incarnation_id) |
| 1107 | + key_incarnation_id=key_incarnation_id, add_proxy_agent_extension=add_proxy_agent_extension) |
1107 | 1108 |
|
1108 | 1109 | vm_resource['dependsOn'] = vm_dependencies |
1109 | 1110 |
|
@@ -1649,6 +1650,7 @@ def update_vm(cmd, resource_group_name, vm_name, os_disk=None, disk_caching=None |
1649 | 1650 | security_type=None, enable_proxy_agent=None, proxy_agent_mode=None, additional_scheduled_events=None, |
1650 | 1651 | enable_user_reboot_scheduled_events=None, enable_user_redeploy_scheduled_events=None, |
1651 | 1652 | align_regional_disks_to_vm_zone=None, wire_server_mode=None, imds_mode=None, |
| 1653 | + add_proxy_agent_extension=None, |
1652 | 1654 | wire_server_access_control_profile_reference_id=None, imds_access_control_profile_reference_id=None, |
1653 | 1655 | key_incarnation_id=None, **kwargs): |
1654 | 1656 | from azure.mgmt.core.tools import parse_resource_id, resource_id, is_valid_resource_id |
@@ -1680,6 +1682,21 @@ def _output(self, *args, **kwargs): |
1680 | 1682 | })) |
1681 | 1683 | vm = get_vm_to_update(cmd, resource_group_name, vm_name) |
1682 | 1684 |
|
| 1685 | + if add_proxy_agent_extension is not None: |
| 1686 | + args = { |
| 1687 | + 'resource_group': resource_group_name, |
| 1688 | + 'vm_name': vm_name, |
| 1689 | + 'no_wait': no_wait, |
| 1690 | + 'security_profile': { |
| 1691 | + 'proxy_agent_settings': { |
| 1692 | + 'add_proxy_agent_extension': add_proxy_agent_extension |
| 1693 | + } |
| 1694 | + } |
| 1695 | + } |
| 1696 | + |
| 1697 | + LongRunningOperation(cmd.cli_ctx)(UpdateVM(cli_ctx=cmd.cli_ctx)(command_args=args)) |
| 1698 | + vm = get_vm_to_update(cmd, resource_group_name, vm_name) |
| 1699 | + |
1683 | 1700 | disk_name = None |
1684 | 1701 | if os_disk is not None: |
1685 | 1702 | if is_valid_resource_id(os_disk): |
@@ -1897,7 +1914,8 @@ def _output(self, *args, **kwargs): |
1897 | 1914 | } |
1898 | 1915 | client = _compute_client_factory(cmd.cli_ctx, aux_subscriptions=aux_subscriptions) |
1899 | 1916 | if wire_server_access_control_profile_reference_id is not None or \ |
1900 | | - imds_access_control_profile_reference_id is not None: |
| 1917 | + imds_access_control_profile_reference_id is not None or \ |
| 1918 | + add_proxy_agent_extension is not None: |
1901 | 1919 | kwargs['parameters'] = vm |
1902 | 1920 | return sdk_no_wait(no_wait, client.virtual_machines.begin_create_or_update, resource_group_name, vm_name, **kwargs) |
1903 | 1921 | # endregion |
@@ -3407,7 +3425,7 @@ def create_vmss(cmd, vmss_name, resource_group_name, image=None, |
3407 | 3425 | enable_user_redeploy_scheduled_events=None, skuprofile_vmsizes=None, |
3408 | 3426 | skuprofile_allostrat=None, skuprofile_rank=None, |
3409 | 3427 | security_posture_reference_is_overridable=None, zone_balance=None, wire_server_mode=None, |
3410 | | - imds_mode=None, wire_server_access_control_profile_reference_id=None, |
| 3428 | + imds_mode=None, add_proxy_agent_extension=None, wire_server_access_control_profile_reference_id=None, |
3411 | 3429 | imds_access_control_profile_reference_id=None, enable_automatic_zone_balancing=None, |
3412 | 3430 | automatic_zone_balancing_strategy=None, automatic_zone_balancing_behavior=None, |
3413 | 3431 | enable_automatic_repairs=None): |
@@ -3728,6 +3746,7 @@ def _get_public_ip_address_allocation(value, sku): |
3728 | 3746 | skuprofile_rank=skuprofile_rank, |
3729 | 3747 | security_posture_reference_is_overridable=security_posture_reference_is_overridable, |
3730 | 3748 | zone_balance=zone_balance, wire_server_mode=wire_server_mode, imds_mode=imds_mode, |
| 3749 | + add_proxy_agent_extension=add_proxy_agent_extension, |
3731 | 3750 | wire_server_access_control_profile_reference_id=wire_server_access_control_profile_reference_id, |
3732 | 3751 | imds_access_control_profile_reference_id=imds_access_control_profile_reference_id, |
3733 | 3752 | enable_automatic_zone_balancing=enable_automatic_zone_balancing, |
@@ -4166,7 +4185,8 @@ def update_vmss(cmd, resource_group_name, name, license_type=None, no_wait=False |
4166 | 4185 | upgrade_policy_mode=None, enable_auto_os_upgrade=None, skuprofile_vmsizes=None, |
4167 | 4186 | skuprofile_allostrat=None, skuprofile_rank=None, |
4168 | 4187 | security_posture_reference_is_overridable=None, zone_balance=None, |
4169 | | - wire_server_mode=None, imds_mode=None, wire_server_access_control_profile_reference_id=None, |
| 4188 | + wire_server_mode=None, imds_mode=None, add_proxy_agent_extension=None, |
| 4189 | + wire_server_access_control_profile_reference_id=None, |
4170 | 4190 | imds_access_control_profile_reference_id=None, enable_automatic_zone_balancing=None, |
4171 | 4191 | automatic_zone_balancing_strategy=None, automatic_zone_balancing_behavior=None, **kwargs): |
4172 | 4192 | vmss = kwargs['parameters'] |
@@ -4197,6 +4217,23 @@ def _output(self, *args, **kwargs): |
4197 | 4217 | })) |
4198 | 4218 | vmss = get_vmss_modified(cmd, resource_group_name, name, instance_id, security_type) |
4199 | 4219 |
|
| 4220 | + if add_proxy_agent_extension is not None: |
| 4221 | + args = { |
| 4222 | + 'resource_group': resource_group_name, |
| 4223 | + 'vm_scale_set_name': name, |
| 4224 | + 'no_wait': no_wait, |
| 4225 | + 'virtual_machine_profile': { |
| 4226 | + 'security_profile': { |
| 4227 | + 'proxy_agent_settings': { |
| 4228 | + 'add_proxy_agent_extension': add_proxy_agent_extension |
| 4229 | + } |
| 4230 | + } |
| 4231 | + } |
| 4232 | + } |
| 4233 | + |
| 4234 | + LongRunningOperation(cmd.cli_ctx)(UpdateVMSS(cli_ctx=cmd.cli_ctx)(command_args=args)) |
| 4235 | + vmss = get_vmss_modified(cmd, resource_group_name, name, instance_id, security_type) |
| 4236 | + |
4200 | 4237 | aux_subscriptions = None |
4201 | 4238 | # pylint: disable=too-many-boolean-expressions |
4202 | 4239 | if vmss and hasattr(vmss, 'virtual_machine_profile') and vmss.virtual_machine_profile and \ |
@@ -4542,7 +4579,8 @@ def _output(self, *args, **kwargs): |
4542 | 4579 | vmss.zone_balance = zone_balance |
4543 | 4580 |
|
4544 | 4581 | if wire_server_access_control_profile_reference_id is not None or \ |
4545 | | - imds_access_control_profile_reference_id is not None: |
| 4582 | + imds_access_control_profile_reference_id is not None or \ |
| 4583 | + add_proxy_agent_extension is not None: |
4546 | 4584 | kwargs['parameters'] = vmss |
4547 | 4585 |
|
4548 | 4586 | return sdk_no_wait(no_wait, client.virtual_machine_scale_sets.begin_create_or_update, |
|
0 commit comments