Skip to content

[Network] az network ddos-custom-policy create/update: Add --front-end-ip-configuration to support specifying frontend IP configuration associations#33413

Draft
huiii99 wants to merge 1 commit into
Azure:devfrom
huiii99:feat/network-ddos-custom-policy-update-33383
Draft

[Network] az network ddos-custom-policy create/update: Add --front-end-ip-configuration to support specifying frontend IP configuration associations#33413
huiii99 wants to merge 1 commit into
Azure:devfrom
huiii99:feat/network-ddos-custom-policy-update-33383

Conversation

@huiii99
Copy link
Copy Markdown
Member

@huiii99 huiii99 commented May 21, 2026

Related command
az network ddos-custom-policy create
az network ddos-custom-policy update
az network ddos-custom-policy show
az network ddos-custom-policy list
az network ddos-custom-policy delete

Description

Upgrade the API version of az network ddos-custom-policy to 2025-07-01.

This change brings the following updates:

  • Add support for --front-end-ip-configuration parameter to specify frontend IP configuration resource IDs associated with the custom policy.
  • Add list command to retrieve DDoS custom policies.

resolve: #33383
aaz: Azure/aaz#1013

Testing Guide
azdev test test_ddos_custom_policy --live

History Notes


This checklist is used to make sure that common guidelines for a pull request are followed.

@azure-client-tools-bot-prd
Copy link
Copy Markdown

azure-client-tools-bot-prd Bot commented May 21, 2026

❌AzureCLI-FullTest
️✔️acr
️✔️latest
️✔️3.12
️✔️3.13
️✔️acs
️✔️latest
️✔️3.12
️✔️3.13
️✔️advisor
️✔️latest
️✔️3.12
️✔️3.13
️✔️ams
️✔️latest
️✔️3.12
️✔️3.13
️✔️apim
️✔️latest
️✔️3.12
️✔️3.13
️✔️appconfig
️✔️latest
️✔️3.12
️✔️3.13
️✔️appservice
️✔️latest
️✔️3.12
️✔️3.13
️✔️aro
️✔️latest
️✔️3.12
️✔️3.13
️✔️backup
️✔️latest
️✔️3.12
️✔️3.13
️✔️batch
️✔️latest
️✔️3.12
️✔️3.13
️✔️batchai
️✔️latest
️✔️3.12
️✔️3.13
️✔️billing
️✔️latest
️✔️3.12
️✔️3.13
️✔️botservice
️✔️latest
️✔️3.12
️✔️3.13
️✔️cdn
️✔️latest
️✔️3.12
️✔️3.13
️✔️cloud
️✔️latest
️✔️3.12
️✔️3.13
️✔️cognitiveservices
️✔️latest
️✔️3.12
️✔️3.13
️✔️compute_recommender
️✔️latest
️✔️3.12
️✔️3.13
️✔️computefleet
️✔️latest
️✔️3.12
️✔️3.13
️✔️config
️✔️latest
️✔️3.12
️✔️3.13
️✔️configure
️✔️latest
️✔️3.12
️✔️3.13
️✔️consumption
️✔️latest
️✔️3.12
️✔️3.13
️✔️container
️✔️latest
️✔️3.12
️✔️3.13
️✔️containerapp
️✔️latest
️✔️3.12
️✔️3.13
️✔️core
️✔️latest
️✔️3.12
️✔️3.13
️✔️cosmosdb
️✔️latest
️✔️3.12
️✔️3.13
️✔️databoxedge
️✔️latest
️✔️3.12
️✔️3.13
️✔️dls
️✔️latest
️✔️3.12
️✔️3.13
️✔️dms
️✔️latest
️✔️3.12
️✔️3.13
️✔️eventgrid
️✔️latest
️✔️3.12
️✔️3.13
️✔️eventhubs
️✔️latest
️✔️3.12
️✔️3.13
️✔️feedback
️✔️latest
️✔️3.12
️✔️3.13
️✔️find
️✔️latest
️✔️3.12
️✔️3.13
️✔️hdinsight
️✔️latest
️✔️3.12
️✔️3.13
️✔️identity
️✔️latest
️✔️3.12
️✔️3.13
️✔️iot
️✔️latest
️✔️3.12
️✔️3.13
️✔️keyvault
️✔️latest
️✔️3.12
️✔️3.13
️✔️lab
️✔️latest
️✔️3.12
️✔️3.13
️✔️managedservices
️✔️latest
️✔️3.12
️✔️3.13
️✔️maps
️✔️latest
️✔️3.12
️✔️3.13
️✔️marketplaceordering
️✔️latest
️✔️3.12
️✔️3.13
️✔️monitor
️✔️latest
️✔️3.12
️✔️3.13
️✔️mysql
️✔️latest
️✔️3.12
️✔️3.13
️✔️netappfiles
️✔️latest
️✔️3.12
️✔️3.13
❌network
❌latest
❌3.12
Type Test Case Error Message Line
Failed test_ddos_custom_policy self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f3344cba390>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f334d271b20>
command = 'network ddos-custom-policy create -g test_ddos_cuspol000001 -n policy1 --detection-rule-name RuleName1 --detection-mo...0000/resourceGroups/test_ddos_cuspol000001/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/fip1'
expect_failure = False

    def in_process_execute(self, cli_ctx, command, expect_failure=False):
        from io import StringIO
        from vcr.errors import CannotOverwriteExistingCassetteException
    
        if command.startswith('az '):
            command = command[3:]
    
        stdout_buf = StringIO()
        logging_buf = StringIO()
        try:
            # issue: stderr cannot be redirect in this form, as a result some failure information
            # is lost when command fails.
>           self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/azure-cli-testsdk/azure/cli/testsdk/base.py:303: 
                                        
env/lib/python3.12/site-packages/knack/cli.py:245: in invoke
    exit_code = self.exception_handler(ex)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/init.py:157: in exception_handler
    return handle_exception(ex)
           ^^^^^^^^^^^^^^^^^^^^
                                        

ex = ResourceNotFoundError("(InvalidResourceType) The resource type could not be found in the namespace 'Microsoft.Network'...ype\nMessage: The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.")
args = (), kwargs = {}

    def handle_main_exception(ex, *args, **kwargs):  # pylint: disable=unused-argument
        if isinstance(ex, CannotOverwriteExistingCassetteException):
            # This exception usually caused by a no match HTTP request. This is a product error
            # that is caused by change of SDK invocation.
            raise ex
    
>       raise CliExecutionError(ex)
E       azure.cli.testsdk.exceptions.CliExecutionError: The CLI throws exception ResourceNotFoundError during execution and fails the command.

src/azure-cli-testsdk/azure/cli/testsdk/patches.py:35: CliExecutionError

During handling of the above exception, another exception occurred:

self = <azure.cli.command_modules.network.tests.latest.test_network_commands.DdosCustomPolicyScenarioTest testMethod=test_ddos_custom_policy>
resource_group = 'test_ddos_cuspol000001'

    @ResourceGroupPreparer(name_prefix='test_ddos_cuspol', location='eastus')
    def test_ddos_custom_policy(self, resource_group):
        self.kwargs.update({
            'policy_name': 'policy1',
            'detection_mode': 'TrafficThreshold',
            'detection_rule_name1': 'RuleName1',
            'traffic_type1': 'Tcp',
            'packets_per_second1': '1000000',
            'detection_rule_name2': 'RuleName2',
            'traffic_type2': 'Udp',
            'packets_per_second2': '200000',
            'detection_rule_name3': 'RuleName3',
            'pip_name': 'pip1',
            'lb_name': 'lb1',
            'fip_name': 'fip1',
            'pip_name2': 'pip2',
            'lb_name2': 'lb2',
            'fip_name2': 'fip2',
        })
    
        self.cmd('network public-ip create -g {rg} -n {pip_name} --sku Standard --allocation-method Static')
    
        self.cmd('network lb create -g {rg} -n {lb_name} --sku Standard --public-ip-address {pip_name} --frontend-ip-name {fip_name}')
    
        fip_id = self.cmd('network lb frontend-ip show -g {rg} --lb-name {lb_name} -n {fip_name}').get_output_in_json()['id']
        self.kwargs['fip_id'] = fip_id
    
>       self.cmd('network ddos-custom-policy create -g {rg} -n {policy_name} --detection-rule-name {detection_rule_name1} '
                 '--detection-mode {detection_mode} --traffic-type {traffic_type1} --packets-per-second {packets_per_second1} '
                 '--fip-config {fip_id}', checks=[
            self.check('length(detectionRules)', 1),
            self.check('detectionRules[0].name', '{detection_rule_name1}'),
            self.check('detectionRules[0].trafficDetectionRule.packetsPerSecond', '{packets_per_second1}'),
            self.check('detectionRules[0].trafficDetectionRule.trafficType', '{traffic_type1}'),
            self.check('name', '{policy_name}'),
            self.check('length(frontEndIpConfiguration)', 1),
            self.check('frontEndIpConfiguration[0].id', '{fip_id}'),
        ])

src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py:9576: 
 
                                       
src/azure-cli-testsdk/azure/cli/testsdk/base.py:177: in cmd
    return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-testsdk/azure/cli/testsdk/base.py:252: in init
    self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:315: in in_process_execute
    raise ex.exception
env/lib/python3.12/site-packages/knack/cli.py:233: in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:677: in execute
    raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:820: in run_jobs_serially
    results.append(self.run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:800: in run_job
    result = LongRunningOperation(cmd_copy.cli_ctx, 'Starting {}'.format(cmd_copy.name))(result)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:1181: in call
    raise exception
src/azure-cli-core/azure/cli/core/commands/init.py:1168: in call
    result = poller.result()
             ^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/aaz/poller.py:105: in result
    self.wait(timeout)
env/lib/python3.12/site-packages/azure/core/tracing/decorator.py:119: in wrapper_use_tracer
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/aaz/poller.py:127: in wait
    raise self.exception
src/azure-cli-core/azure/cli/core/aaz/poller.py:80: in start
    for polling_method in self.polling_generator:
                          ^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli/azure/cli/command_modules/network/aaz/latest/network/ddos_custom_policy/__cmds.py:139: in execute_operations
    yield self.DdosCustomPoliciesCreateOrUpdate(ctx=self.ctx)()
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli/azure/cli/command_modules/network/aaz/latest/network/ddos_custom_policy/__cmds.py:179: in call
    return self.on_error(session.http_response)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 
 
 
 
 
 
 
 
 
 
                             

self = <azure.cli.command_modules.network.aaz.latest.network.ddos_custom_policy.__cmds.Create.DdosCustomPoliciesCreateOrUpdate object at 0x7f334464e4e0>
response = RequestsTransportResponse: 404 Not Found, Content-Type: application/json; charset=utf-8

    def on_error(self, response):
        """ handle errors in response
        """
        # raise common http errors
        error_type = self.error_map.get(response.status_code)
        if error_type:
>           raise error_type(response=response)
E           azure.core.exceptions.ResourceNotFoundError: (InvalidResourceType) The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.
E           Code: InvalidResourceType
E           Message: The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.

src/azure-cli-core/azure/cli/core/aaz/_operation.py:324: ResourceNotFoundError
src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py:9548
❌3.13
Type Test Case Error Message Line
Failed test_ddos_custom_policy self = <azure.cli.testsdk.base.ExecutionResult object at 0x7f8f76a0ad50>
cli_ctx = <azure.cli.core.mock.DummyCli object at 0x7f8f7f8c5a90>
command = 'network ddos-custom-policy create -g test_ddos_cuspol000001 -n policy1 --detection-rule-name RuleName1 --detection-mo...0000/resourceGroups/test_ddos_cuspol000001/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/fip1'
expect_failure = False

    def in_process_execute(self, cli_ctx, command, expect_failure=False):
        from io import StringIO
        from vcr.errors import CannotOverwriteExistingCassetteException
    
        if command.startswith('az '):
            command = command[3:]
    
        stdout_buf = StringIO()
        logging_buf = StringIO()
        try:
            # issue: stderr cannot be redirect in this form, as a result some failure information
            # is lost when command fails.
>           self.exit_code = cli_ctx.invoke(shlex.split(command), out_file=stdout_buf) or 0
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

src/azure-cli-testsdk/azure/cli/testsdk/base.py:303: 
                                        
env/lib/python3.13/site-packages/knack/cli.py:245: in invoke
    exit_code = self.exception_handler(ex)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/init.py:157: in exception_handler
    return handle_exception(ex)
           ^^^^^^^^^^^^^^^^^^^^
                                        

ex = ResourceNotFoundError("(InvalidResourceType) The resource type could not be found in the namespace 'Microsoft.Network'...ype\nMessage: The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.")
args = (), kwargs = {}

    def handle_main_exception(ex, *args, **kwargs):  # pylint: disable=unused-argument
        if isinstance(ex, CannotOverwriteExistingCassetteException):
            # This exception usually caused by a no match HTTP request. This is a product error
            # that is caused by change of SDK invocation.
            raise ex
    
>       raise CliExecutionError(ex)
E       azure.cli.testsdk.exceptions.CliExecutionError: The CLI throws exception ResourceNotFoundError during execution and fails the command.

src/azure-cli-testsdk/azure/cli/testsdk/patches.py:35: CliExecutionError

During handling of the above exception, another exception occurred:

self = <azure.cli.command_modules.network.tests.latest.test_network_commands.DdosCustomPolicyScenarioTest testMethod=test_ddos_custom_policy>
resource_group = 'test_ddos_cuspol000001'

    @ResourceGroupPreparer(name_prefix='test_ddos_cuspol', location='eastus')
    def test_ddos_custom_policy(self, resource_group):
        self.kwargs.update({
            'policy_name': 'policy1',
            'detection_mode': 'TrafficThreshold',
            'detection_rule_name1': 'RuleName1',
            'traffic_type1': 'Tcp',
            'packets_per_second1': '1000000',
            'detection_rule_name2': 'RuleName2',
            'traffic_type2': 'Udp',
            'packets_per_second2': '200000',
            'detection_rule_name3': 'RuleName3',
            'pip_name': 'pip1',
            'lb_name': 'lb1',
            'fip_name': 'fip1',
            'pip_name2': 'pip2',
            'lb_name2': 'lb2',
            'fip_name2': 'fip2',
        })
    
        self.cmd('network public-ip create -g {rg} -n {pip_name} --sku Standard --allocation-method Static')
    
        self.cmd('network lb create -g {rg} -n {lb_name} --sku Standard --public-ip-address {pip_name} --frontend-ip-name {fip_name}')
    
        fip_id = self.cmd('network lb frontend-ip show -g {rg} --lb-name {lb_name} -n {fip_name}').get_output_in_json()['id']
        self.kwargs['fip_id'] = fip_id
    
>       self.cmd('network ddos-custom-policy create -g {rg} -n {policy_name} --detection-rule-name {detection_rule_name1} '
                 '--detection-mode {detection_mode} --traffic-type {traffic_type1} --packets-per-second {packets_per_second1} '
                 '--fip-config {fip_id}', checks=[
            self.check('length(detectionRules)', 1),
            self.check('detectionRules[0].name', '{detection_rule_name1}'),
            self.check('detectionRules[0].trafficDetectionRule.packetsPerSecond', '{packets_per_second1}'),
            self.check('detectionRules[0].trafficDetectionRule.trafficType', '{traffic_type1}'),
            self.check('name', '{policy_name}'),
            self.check('length(frontEndIpConfiguration)', 1),
            self.check('frontEndIpConfiguration[0].id', '{fip_id}'),
        ])

src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py:9576: 
 
                                       
src/azure-cli-testsdk/azure/cli/testsdk/base.py:177: in cmd
    return execute(self.cli_ctx, command, expect_failure=expect_failure).assert_with_checks(checks)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-testsdk/azure/cli/testsdk/base.py:252: in init
    self.in_process_execute(cli_ctx, command, expect_failure=expect_failure)
src/azure-cli-testsdk/azure/cli/testsdk/base.py:315: in in_process_execute
    raise ex.exception
env/lib/python3.13/site-packages/knack/cli.py:233: in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:677: in execute
    raise ex
src/azure-cli-core/azure/cli/core/commands/init.py:820: in run_jobs_serially
    results.append(self.run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:800: in run_job
    result = LongRunningOperation(cmd_copy.cli_ctx, 'Starting {}'.format(cmd_copy.name))(result)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/commands/init.py:1181: in call
    raise exception
src/azure-cli-core/azure/cli/core/commands/init.py:1168: in call
    result = poller.result()
             ^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/aaz/poller.py:105: in result
    self.wait(timeout)
env/lib/python3.13/site-packages/azure/core/tracing/decorator.py:119: in wrapper_use_tracer
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
src/azure-cli-core/azure/cli/core/aaz/poller.py:127: in wait
    raise self.exception
src/azure-cli-core/azure/cli/core/aaz/poller.py:80: in start
    for polling_method in self.polling_generator:
                          ^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli/azure/cli/command_modules/network/aaz/latest/network/ddos_custom_policy/__cmds.py:1012: in execute_operations
    yield self.DdosCustomPoliciesCreateOrUpdate(ctx=self.ctx)()
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
src/azure-cli/azure/cli/command_modules/network/aaz/latest/network/ddos_custom_policy/__cmds.py:1052: in call
    return self.on_error(session.http_response)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 
 
 
 
 
 
 
 
 
 
                             

self = <azure.cli.command_modules.network.aaz.latest.network.ddos_custom_policy.__cmds.Create.DdosCustomPoliciesCreateOrUpdate object at 0x7f8f76d8b770>
response = RequestsTransportResponse: 404 Not Found, Content-Type: application/json; charset=utf-8

    def on_error(self, response):
        """ handle errors in response
        """
        # raise common http errors
        error_type = self.error_map.get(response.status_code)
        if error_type:
>           raise error_type(response=response)
E           azure.core.exceptions.ResourceNotFoundError: (InvalidResourceType) The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.
E           Code: InvalidResourceType
E           Message: The resource type could not be found in the namespace 'Microsoft.Network' for api version '2025-07-01'.

src/azure-cli-core/azure/cli/core/aaz/_operation.py:324: ResourceNotFoundError
src/azure-cli/azure/cli/command_modules/network/tests/latest/test_network_commands.py:9548
️✔️policyinsights
️✔️latest
️✔️3.12
️✔️3.13
️✔️postgresql
️✔️latest
️✔️3.12
️✔️3.13
️✔️privatedns
️✔️latest
️✔️3.12
️✔️3.13
️✔️profile
️✔️latest
️✔️3.12
️✔️3.13
️✔️rdbms
️✔️latest
️✔️3.12
️✔️3.13
️✔️redis
️✔️latest
️✔️3.12
️✔️3.13
️✔️relay
️✔️latest
️✔️3.12
️✔️3.13
️✔️resource
️✔️latest
️✔️3.12
️✔️3.13
️✔️role
️✔️latest
️✔️3.12
️✔️3.13
️✔️search
️✔️latest
️✔️3.12
️✔️3.13
️✔️security
️✔️latest
️✔️3.12
️✔️3.13
️✔️servicebus
️✔️latest
️✔️3.12
️✔️3.13
️✔️serviceconnector
️✔️latest
️✔️3.12
️✔️3.13
️✔️servicefabric
️✔️latest
️✔️3.12
️✔️3.13
️✔️signalr
️✔️latest
️✔️3.12
️✔️3.13
️✔️sql
️✔️latest
️✔️3.12
️✔️3.13
️✔️sqlvm
️✔️latest
️✔️3.12
️✔️3.13
️✔️storage
️✔️latest
️✔️3.12
️✔️3.13
️✔️synapse
️✔️latest
️✔️3.12
️✔️3.13
️✔️telemetry
️✔️latest
️✔️3.12
️✔️3.13
️✔️util
️✔️latest
️✔️3.12
️✔️3.13
️✔️vm
️✔️latest
️✔️3.12
️✔️3.13

@azure-client-tools-bot-prd
Copy link
Copy Markdown

Hi @huiii99,
Since the current milestone time is less than 7 days, this pr will be reviewed in the next milestone.

@azure-client-tools-bot-prd
Copy link
Copy Markdown

azure-client-tools-bot-prd Bot commented May 21, 2026

⚠️AzureCLI-BreakingChangeTest
⚠️network
rule cmd_name rule_message suggest_message
⚠️ 1006 - ParaAdd network ddos-custom-policy create cmd network ddos-custom-policy create added parameter front_end_ip_configuration
⚠️ 1001 - CmdAdd network ddos-custom-policy list cmd network ddos-custom-policy list added
⚠️ 1006 - ParaAdd network ddos-custom-policy update cmd network ddos-custom-policy update added parameter front_end_ip_configuration

@yonzhan
Copy link
Copy Markdown
Collaborator

yonzhan commented May 21, 2026

Thank you for your contribution! We will review the pull request and get back to you soon.

@github-actions
Copy link
Copy Markdown

The git hooks are available for azure-cli and azure-cli-extensions repos. They could help you run required checks before creating the PR.

Please sync the latest code with latest dev branch (for azure-cli) or main branch (for azure-cli-extensions).
After that please run the following commands to enable git hooks:

pip install azdev --upgrade
azdev setup -c <your azure-cli repo path> -r <your azure-cli-extensions repo path>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Auto-Assign Auto assign by bot

Projects

None yet

Development

Successfully merging this pull request may close these issues.

DDoS Custom Policy CLI Release

3 participants