[AutoPR azure-mgmt-containerregistrytasks]-generated-from-SDK Generation - Python-5780621#44786
Open
azure-sdk wants to merge 13 commits intoAzure:mainfrom
Open
[AutoPR azure-mgmt-containerregistrytasks]-generated-from-SDK Generation - Python-5780621#44786azure-sdk wants to merge 13 commits intoAzure:mainfrom
azure-sdk wants to merge 13 commits intoAzure:mainfrom
Conversation
…rosoft.ContainerRegistry/RegistryTasks/tspconfig.yaml', API Version: 2025-03-01-preview, SDK Release Type: beta, and CommitSHA: '3f223d61b02c0496581dfb71c78104761b448d5e' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5780621 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
This was referenced Jan 22, 2026
…rosoft.ContainerRegistry/RegistryTasks/tspconfig.yaml', API Version: 2025-03-01-preview, SDK Release Type: beta, and CommitSHA: '92a141a5124dc3776424f311fede0a70ac789097' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5782944 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release.
Contributor
There was a problem hiding this comment.
Pull request overview
This PR introduces a new management plane package, azure-mgmt-containerregistrytasks, generated from the Microsoft.ContainerRegistry/RegistryTasks 2025-03-01-preview API, and wires it into the containerregistry SDK CI.
Changes:
- Adds the
azure-mgmt-containerregistrytaskspackage (clients, models, operations, configuration, metadata, and packaging files) for the 2025-03-01-preview Container Registry Tasks management API. - Generates corresponding async/sync tests and recorded-test sanitization configuration under
generated_tests/for the new client. - Generates end‑to‑end usage samples under
generated_samples/and registers the new package insdk/containerregistry/ci.yml.
Notable review comments
-
Bug –
Model.copy()produces incorrect copies- File:
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_utils/model_base.py, around lines 667–668 - Issue:
Model.copyis implemented asreturn Model(self.__dict__).self.__dict__contains the internal_datamapping rather than the public REST-field mapping, so the resulting instance’s underlying data includes an extra_datakey and does not represent a clean shallow copy of the model’s logical fields. This can lead to incorrect serialized output (e.g., an unexpected_dataproperty) and violates typicalMapping.copy()semantics. - Suggested fix: Implement
copybased on the underlying mapping (e.g., using the existing mapping interface /self._data), so that the new model instance has the same REST-field keys and values as the original, without injecting implementation details like_dataitself.
- File:
-
Codebase convention – missing
blackflag inazure-sdk-buildconfig- File:
sdk/containerregistry/azure-mgmt-containerregistrytasks/pyproject.toml, lines 70–74 - Issue:
[tool.azure-sdk-build]only setsbreaking = false,pyright = false, andmypy = false, but omitsblack = true,type_check_samples, andverifytypes, whereas the siblingazure-mgmt-containerregistrypackage enablesblack(seesdk/containerregistry/azure-mgmt-containerregistry/pyproject.toml:70–76). This means the new package will not participate in the same formatting pipeline as the existing containerregistry mgmt package. - Suggested fix: Align the
azure-sdk-buildsection withazure-mgmt-containerregistryby at least addingblack = true, and consider also adding the other flags as appropriate for consistency.
- File:
-
Spelling / naming nit in README
- File:
sdk/containerregistry/azure-mgmt-containerregistrytasks/README.md, line 3 and line 49 - Issue: The description uses “Containerregistrytasks” as a single word (“Microsoft Azure Containerregistrytasks Management Client Library” and “Search Containerregistrytasks Management”), which is inconsistent with how the related package describes “Container Registry” in
azure-mgmt-containerregistry/README.mdand is hard to read. - Suggested fix: Update the wording to something like “Microsoft Azure Container Registry Tasks Management Client Library” and “Search Container Registry Tasks Management” to match the naming style used by the sibling package.
- File:
Reviewed changes
Copilot reviewed 84 out of 87 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
sdk/containerregistry/ci.yml |
Adds azure-mgmt-containerregistrytasks to the containerregistry SDK CI matrix so the new package is built and tested. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/tsp-location.yaml |
Points code generation to the RegistryTasks TypeSpec location and specific REST API commit. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/pyproject.toml |
Defines build system, project metadata, dependencies, azure-sdk-build flags, and packaging metadata for azure-mgmt-containerregistrytasks. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_tasks_operations_async.py |
Auto-generated async tests for TasksOperations (get/create/update/delete/list/get_details), currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_tasks_operations.py |
Auto-generated sync tests for TasksOperations, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_task_runs_operations_async.py |
Auto-generated async tests for TaskRunsOperations including LRO begin_create/begin_update paths, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_task_runs_operations.py |
Auto-generated sync tests for TaskRunsOperations, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_runs_operations_async.py |
Auto-generated async tests for RunsOperations (get/update/list/get_log_sas_url/cancel), currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_runs_operations.py |
Auto-generated sync tests for RunsOperations, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_registries_operations_async.py |
Auto-generated async tests for RegistriesOperations (schedule_run/get_build_source_upload_url), currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_registries_operations.py |
Auto-generated sync tests for RegistriesOperations, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_agent_pools_operations_async.py |
Auto-generated async tests for AgentPoolsOperations (get/create/update/delete/list/get_queue_status), currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/test_container_registry_tasks_mgmt_agent_pools_operations.py |
Auto-generated sync tests for AgentPoolsOperations, currently skipped. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_tests/conftest.py |
Test fixtures configuring recording sanitizers for subscription, tenant, client ID/secret, and cookies for this mgmt package. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update_with_opaque_custom_credentials.py |
Sample showing task update using opaque custom registry credentials. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update_with_msi_custom_credentials.py |
Sample showing task update using managed identity-based custom registry credentials. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update_with_login_identity.py |
Sample showing task update using source registry login identity [system]. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update_with_key_vault_custom_credentials.py |
Sample showing task update using Key Vault-backed custom credentials. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update_quick_task.py |
Sample updating a “quicktask” with a log template and tags. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_update.py |
General task update sample demonstrating agent config, credentials, logging, and triggers. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_list.py |
Sample listing tasks in a registry. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_get_details.py |
Sample fetching detailed information about a specific task. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_get.py |
Sample fetching a task by name. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_delete.py |
Sample deleting a task. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create_with_user_identities.py |
Sample creating a task that uses user-assigned managed identities. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create_with_system_identity.py |
Sample creating a task with a system-assigned managed identity. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create_with_system_and_user_identities.py |
Sample creating a task with both system-assigned and user-assigned identities. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create_with_login_identity.py |
Sample creating a task where the source registry uses a login identity. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create_quick_task.py |
Sample creating a simple “quicktask” with minimal properties. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/tasks_create.py |
Full task creation sample, including base image and source triggers. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_update.py |
Sample updating a task run with an encoded task run request. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_list.py |
Sample listing task runs in a registry. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_get_details.py |
Sample fetching details for a specific task run. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_get.py |
Sample getting a task run by name. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_delete.py |
Sample deleting a task run. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/task_runs_create.py |
Sample creating a task run with an encoded task. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/runs_update.py |
Sample updating a run (non-task-specific) to toggle archiving. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/runs_list.py |
Sample listing runs in a registry. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/runs_get_log_sas_url.py |
Sample retrieving a SAS URL for run logs. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/runs_get.py |
Sample getting a run by ID. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/runs_cancel.py |
Sample canceling a running build/task. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_with_log_template.py |
Sample scheduling a Docker build run with a custom log template. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_with_custom_credentials.py |
Sample scheduling a Docker build run with opaque custom registry credentials. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_task.py |
Sample scheduling a run for an existing task with override step properties. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_file_task_with_custom_credentials.py |
Sample scheduling a file-based task run with custom credentials. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_file_task_run.py |
Sample scheduling a file-based task run with values and source location. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run_encoded_task_run.py |
Sample scheduling an encoded task run. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_schedule_run.py |
Sample scheduling a standard Docker build run. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/registries_get_build_source_upload_url.py |
Sample obtaining a SAS URL for uploading build source content. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_update.py |
Sample updating an agent pool’s count. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_list.py |
Sample listing agent pools in a registry. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_get_queue_status.py |
Sample retrieving the queue status of an agent pool. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_get.py |
Sample fetching an agent pool. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_delete.py |
Sample deleting an agent pool. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/generated_samples/agent_pools_create.py |
Sample creating a new agent pool. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/dev_requirements.txt |
Development-time dependencies for the new package (azure-sdk-tools, core/mgmt-core, identity, aiohttp). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/py.typed |
PEP 561 marker declaring the package as typed. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/operations/_patch.py |
Customization hook for sync operations package (currently empty). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/operations/__init__.py |
Public sync operations surface importing generated *_Operations and applying _patch. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/models/_patch.py |
Customization hook for models package (currently empty). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/models/_enums.py |
Enum definitions for architectures, OS, statuses, trigger types, etc., for the tasks API. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/models/__init__.py |
Public models surface aggregating all model and enum types plus _patch. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/operations/_patch.py |
Customization hook for async operations package (currently empty). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/operations/__init__.py |
Public async operations surface importing generated *_Operations and applying _patch. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/_patch.py |
Customization hook for async client package (currently empty). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/_configuration.py |
Async client configuration (pipeline policies, auth, API version, etc.) for ContainerRegistryTasksMgmtClient. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/_client.py |
Async ContainerRegistryTasksMgmtClient implementation and send_request helper. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/aio/__init__.py |
Async package entry point exporting ContainerRegistryTasksMgmtClient and applying async _patch. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_version.py |
Version constant (1.0.0b1) for the new package. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_utils/model_base.py |
Shared model base implementation (mapping behavior, JSON/XML serialization/deserialization, Model class). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_utils/__init__.py |
Module marker for the _utils namespace. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_patch.py |
Customization hook for the main sync client package (currently empty). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_configuration.py |
Sync client configuration (pipeline policies, auth, API version, etc.). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/_client.py |
Sync ContainerRegistryTasksMgmtClient implementation and send_request helper. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/containerregistrytasks/__init__.py |
Package entry point exporting ContainerRegistryTasksMgmtClient, version metadata, and applying _patch. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/mgmt/__init__.py |
Namespace-package initializer for azure.mgmt within this distribution. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/azure/__init__.py |
Namespace-package initializer for azure within this distribution. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/apiview-properties.json |
APIView cross-language mapping metadata for types/operations in this package. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/_metadata.json |
Generation metadata (API version, spec repo commit, emitter version, TypeSpec source path). |
sdk/containerregistry/azure-mgmt-containerregistrytasks/README.md |
Package-level README describing purpose, install/auth instructions, and links to samples. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/MANIFEST.in |
Source distribution manifest including docs, license, py.typed, samples, tests, and namespace __init__.py files. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/LICENSE |
MIT license file for the new package. |
sdk/containerregistry/azure-mgmt-containerregistrytasks/CHANGELOG.md |
Initial changelog for version 1.0.0b1 of azure-mgmt-containerregistrytasks. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Configurations: 'specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/RegistryTasks/tspconfig.yaml', API Version: 2025-03-01-preview, SDK Release Type: beta, and CommitSHA: '3f223d61b02c0496581dfb71c78104761b448d5e' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=5780621 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release. Release plan link: https://web.powerapps.com/apps/821ab569-ae60-420d-8264-d7b5d5ef734c?release-plan-id=2a608315-60f6-f011-8406-000d3a376cbb Submitted by: clarkporter@microsoft.com
Release Plan Details
Spec pull request: [Typespec Migration] migrate control plane containerregistry to typespec azure-rest-api-specs#37169
Spec API version: 2025-03-01-preview