Skip to content

[Network] az network first-party-service-tag: Add support for First Party Service Tags - #34081

Draft
Jian Hui (huiii99) wants to merge 8 commits into
Azure:devfrom
huiii99:feat/network-first-party-service-tag
Draft

Jian Hui (huiii99) wants to merge 8 commits into
Azure:devfrom
huiii99:feat/network-first-party-service-tag

Conversation

@huiii99

@huiii99 Jian Hui (huiii99) commented Sep 15, 2026

Copy link
Copy Markdown
Member

🤖 PR Validation — ❌ Action needed

Breaking Changes Tests
❌ 1 🔄 130/130
❌AzureCLI-BreakingChangeTest
❌network
rule cmd_name rule_message suggest_message
1007 - ParaRemove network public-ip prefix show cmd network public-ip prefix show removed parameter expand please add back parameter expand for cmd network public-ip prefix show
1007 - ParaRemove network public-ip prefix wait cmd network public-ip prefix wait removed parameter expand please add back parameter expand for cmd network public-ip prefix wait
1007 - ParaRemove network public-ip show cmd network public-ip show removed parameter expand please add back parameter expand for cmd network public-ip show
1007 - ParaRemove network public-ip wait cmd network public-ip wait removed parameter expand please add back parameter expand for cmd network public-ip wait
⚠️ 1011 - SubgroupAdd network first-party-service-tag sub group network first-party-service-tag added
⚠️ 1006 - ParaAdd network public-ip create cmd network public-ip create added parameter first_party_service_tag_id
⚠️ 1006 - ParaAdd network public-ip prefix create cmd network public-ip prefix create added parameter first_party_service_tag_id
⚠️ 1006 - ParaAdd network public-ip prefix update cmd network public-ip prefix update added parameter first_party_service_tag_id
⚠️ 1006 - ParaAdd network public-ip prefix update cmd network public-ip prefix update added parameter ip_tags
⚠️ 1006 - ParaAdd network public-ip update cmd network public-ip update added parameter first_party_service_tag_id

Please submit your Breaking Change Pre-announcement ASAP if you haven't already. Please note:

  • Breaking changes can only be merged during the designated breaking change window
  • A pre-announcement must be released at least one month in advance

For more details on how to introduce breaking changes, refer to the documentation: azure-cli/doc/how_to_introduce_breaking_changes.md

Related command
az network first-party-service-tag create
az network first-party-service-tag update
az network first-party-service-tag show
az network first-party-service-tag list
az network first-party-service-tag delete
az network first-party-service-tag wait

az network public-ip create
az network public-ip update
az network public-ip prefix create
az network public-ip prefix update

Description
Fixes #34034.
Azz Azure/aaz#1089.

This PR adds Preview support for managing Microsoft.Network/firstPartyServiceTags resources using Network API version 2025-09-01, including create, update, show, list, delete, and wait operations. Create, update, and delete support asynchronous execution through --no-wait.

It also updates Public IP Address and Public IP Prefix commands to Network API version 2025-09-01 and adds --first-party-service-tag-id support for associating a First Party Service Tag with an IP tag. The existing --ip-tags TYPE=VALUE syntax remains backward compatible.

Because the current Swagger defines resourceGuid under properties while the service returns it at the resource root, this PR adds an AAZ custom response-schema compatibility layer for create, update, show, and list operations.

VM and VMSS changes are outside the scope of this PR.

Testing Guide
azdev test test_network_first_party_service_tag --live

History Notes
[Network] az network first-party-service-tag: Add Preview commands to manage First Party Service Tag resources
[Network] az network public-ip: Add --first-party-service-tag-id to associate a First Party Service Tag with an IP tag
[Network] az network public-ip prefix: Add --first-party-service-tag-id to associate a First Party Service Tag with an IP tag


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

@yonzhan

Copy link
Copy Markdown
Collaborator

Network

@huiii99

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).

@a0x1ab

Copy link
Copy Markdown
Member

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).

Copilot-Session: f3888681-ef35-48bf-99b8-d97a49e802e0
- Remove subscription-level list, which the service does not support in
  this release, and make --resource-group required for list.
- Update via tags-only PATCH. The generated PUT returns 200 but the
  service silently ignores tag changes, and a PATCH carrying properties
  is rejected with OnlyTagsSupportedForPatch.
- Make resource GUID schema augmentation idempotent so repeated show
  calls no longer raise AAZConflictFieldDefinitionError.
- Fix the scenario test: FirstPartyUsage IP tag value must match the
  service tag value, assert properties.value, use a /31 prefix, and
  cover delete with a tag that has no VIP allocations.
- Add the test recording.

Copilot-Session: 8d0c9141-0426-4c48-b72f-b99447dd9168
@huiii99

Copy link
Copy Markdown
Member Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 3 pipeline(s).

The earlier bulk API version bump for the first party service tag work
also rewrote recorded requests that are not issued by the regenerated
`az network public-ip` commands, which broke cassette playback in CI:

* 10 `Microsoft.Network/publicIPAddresses` requests in the vm module were
  bumped from 2022-01-01 to 2022-05-01, but the vm module still sends
  2022-01-01.
* 3 requests in resource/test_tag_update_by_patch.yaml issued by the
  generic `az resource tag` / `az resource delete` commands were bumped
  from 2024-07-01 to 2025-09-01.

Restore those entries to their original versions and keep the 2025-09-01
bump only for requests coming from the regenerated aaz commands.

Copilot-Session: 8d0c9141-0426-4c48-b72f-b99447dd9168
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

act-quality-productivity-squad Auto-Assign Auto assign by bot Network az network vnet/lb/nic/dns/etc...

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add Azure CLI support for First Party Service Tags

4 participants