[Stream Analytics] Migrate az stream-analytics input to AAZ#10031
Open
huiii99 wants to merge 3 commits into
Open
[Stream Analytics] Migrate az stream-analytics input to AAZ#10031huiii99 wants to merge 3 commits into
az stream-analytics input to AAZ#10031huiii99 wants to merge 3 commits into
Conversation
feat: migrate stream analytics input command to aaz
️✔️Azure CLI Extensions Breaking Change Test
|
Collaborator
|
Stream Analytics |
Contributor
There was a problem hiding this comment.
Pull request overview
Migrates the az stream-analytics input command group from the vendored SDK implementation to the auto-generated AAZ framework, while preserving the existing --properties JSON interface via a translation helper and updating tests/recordings accordingly.
Changes:
- Switch
stream-analytics inputcustom command implementations to invoke AAZ command classes (list/show/create/update/delete/test). - Add a helper to translate legacy
--propertiespayloads into flattened AAZ command arguments. - Update scenario tests and recordings (including scoping/cleanup for policy assignments) and bump extension version/history.
Reviewed changes
Copilot reviewed 16 out of 21 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/stream-analytics/setup.py | Bumps extension version to 1.0.5. |
| src/stream-analytics/HISTORY.rst | Adds 1.0.5 changelog entry for the input AAZ migration. |
| src/stream-analytics/azext_stream_analytics/tests/latest/test_stream_analytics_commands.py | Updates/extends input policy + SQL auth scenario coverage and scopes policy assignments to RG. |
| src/stream-analytics/azext_stream_analytics/tests/latest/recordings/test_output_create_policy_violation.yaml | Updates recording for RG-scoped policy assignment + cleanup call. |
| src/stream-analytics/azext_stream_analytics/tests/latest/recordings/test_job_scale.yaml | Updates recording to reflect input API version change to 2021-10-01-preview. |
| src/stream-analytics/azext_stream_analytics/tests/latest/recordings/test_input_sql_reference_authentication_mode.yaml | Updates recording for new input API version and MSI auth scenario. |
| src/stream-analytics/azext_stream_analytics/tests/latest/recordings/test_input_sql_create_policy_violation.yaml | Adds new recording for SQL input policy-violation scenario on upgraded API. |
| src/stream-analytics/azext_stream_analytics/tests/latest/recordings/test_input_create_policy_violation.yaml | Updates recording for RG-scoped policy assignment + cleanup call. |
| src/stream-analytics/azext_stream_analytics/generated/custom.py | Re-routes input commands through AAZ and uses the --properties translation helper. |
| src/stream-analytics/azext_stream_analytics/generated/commands.py | Removes input client factory usage and registers input group to use cmd-based custom handlers. |
| src/stream-analytics/azext_stream_analytics/generated/_input_helpers.py | Introduces helper to map legacy --properties JSON into AAZ args. |
| src/stream-analytics/azext_stream_analytics/generated/_client_factory.py | Removes unused cf_input factory after migration. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/_test.py | Adds generated AAZ implementation for stream-analytics input test. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/_show.py | Adds generated AAZ implementation for stream-analytics input show. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/_list.py | Adds generated AAZ implementation for stream-analytics input list. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/_delete.py | Adds generated AAZ implementation for stream-analytics input delete. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/init.py | Exposes generated input command modules. |
| src/stream-analytics/azext_stream_analytics/aaz/latest/stream_analytics/input/__cmd_group.py | Registers the generated AAZ command group for stream-analytics input. |
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.
This checklist is used to make sure that common guidelines for a pull request are followed.
Related command
az stream-analytics input create / update / show / list / delete / testDescription
Migrates the
az stream-analytics inputcommand group from the vendored SDK to the auto-generated AAZ framework, following the same pattern already used foraz stream-analytics output. The custom functions ingenerated/custom.pynow call the AAZ command classes internally, so the existing--propertiesCLI interface is fully preserved (no breaking change).Fixes Azure/azure-cli#33553
aaz Azure/aaz#1032
General Guidelines
azdev style <YOUR_EXT>locally? (pip install azdevrequired)python scripts/ci/test_index.py -qlocally? (azdevrequired; see.azure-pipelines/templates/azdev_setup.ymlfor the install command untilazdev==0.2.11b1is on PyPI)For new extensions:
About Extension Publish
There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update
src/index.jsonautomatically.You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify
src/index.json.