Skip to content

Add new resource type addonPlugins to Microsoft.Addons#20

Open
vikeshi26 wants to merge 218 commits into
mainfrom
add-addons-new-rt
Open

Add new resource type addonPlugins to Microsoft.Addons#20
vikeshi26 wants to merge 218 commits into
mainfrom
add-addons-new-rt

Conversation

@vikeshi26

Copy link
Copy Markdown
Owner

Choose a PR Template

Switch to "Preview" on this description then select one of the choices below.

Click here to open a PR for a Data Plane API.

Click here to open a PR for a Control Plane (ARM) API.

Click here to open a PR for only SDK configuration.

tejaswiMinnu and others added 13 commits March 20, 2026 18:59
…thub/arm-leases/testrop/Microsoft.TestROP/arm-leases/testrop/Microsoft.TestROP/TestROP/lease.yaml
…p/Microsoft.TestROP/TestROP/lease.yaml to .github/arm-leases/testrop/Microsoft.TestROP/TestROP/lease.yaml
Add ARM lease for Microsoft.Polarbear
…git-compatible relative paths

Co-authored-by: tejaswiMinnu <14865963+tejaswiMinnu@users.noreply.github.com>
Agent-Logs-Url: https://github.com/tejaswiMinnu/azure-rest-api-specs/sessions/96e18844-e7ab-48c0-b318-007904014bfc
…nc-issues-for-lease

Fix ARM lease detection: path.resolve() produces absolute paths incompatible with git show
Add ARM lease for Microsoft.Tiwari
@github-actions

github-actions Bot commented Mar 23, 2026

Copy link
Copy Markdown

Next Steps to Merge

Next steps that must be taken to merge this PR:
  • ❌ This PR targets either the main branch of the public specs repo or the RPSaaSMaster branch of the private specs repo. These branches are not intended for iterative development. Therefore, you must acknowledge you understand that after this PR is merged, the APIs are considered shipped to Azure customers. Any further attempts at in-place modifications to the APIs will be subject to Azure's versioning and breaking change policies. Additionally, for control plane APIs, you must acknowledge that you are following all the best practices documented by ARM at aka.ms/armapibestpractices. If you do intend to release the APIs to your customers by merging this PR, add the PublishToCustomers label to your PR in acknowledgement of the above. Otherwise, retarget this PR onto a feature branch, i.e. with prefix release- (see aka.ms/azsdk/api-versions#release--branches).
  • ❌ This PR is in purview of the ARM review (label: ARMReview). This PR must get ARMSignedOff label from an ARM reviewer.
    This PR is not ready for ARM review (label: NotReadyForARMReview). This PR will not be reviewed by ARM until relevant problems are fixed. Consult the rest of this Next Steps to Merge comment for details.
    Once the blocking problems are addressed, add to the PR a comment with contents /azp run. Automation will re-evaluate this PR and if everything looks good, it will add WaitForARMFeedback label which will put this PR on the ARM review queue.
    For details of the ARM review, see aka.ms/azsdk/pr-arm-review
  • ❌ This PR is NotReadyForARMReview because it has the BreakingChangeReviewRequired label.
  • ❌ This PR has at least one breaking change (label: BreakingChangeReviewRequired).
    To unblock this PR, follow the process at aka.ms/brch.

Important checks have failed. As of today they are not blocking this PR, but in near future they may.
Addressing the following failures is highly recommended:
  • ⚠️ The check named Swagger LintDiff has failed. Refer to the check in the PR's 'Checks' tab for details on how to fix it and consult the aka.ms/ci-fix guide


Comment generated by summarize-checks workflow run.

tejaswiMinnu pushed a commit that referenced this pull request May 26, 2026
…icrosoft.ComputeBulkActions (Azure#43268)

* Add LaunchBulkInstancesOperation resource

* Fix CI: format + suppressions for LintDiff/BreakingChange/TypeSpec Validation

* Refactor: move VM attribute types to reusable vmAttributes.tsp

* Fix readme.md YAML: escape colon in ParameterNotUsingCommonTypes suppression reason

* Move LaunchBulkInstancesOperation to new 2026-06-06-preview api-version

* Rename interface BulkActions -> LaunchBulkInstancesOperation; rename example files; prettier-format

* Fix nested resource URL: use bare LaunchBulkInstancesOperationEnvelope for @listsResource; use LaunchBulkInstancesOperationId for child path

* Address review findings #1, #5, #6, #7: orphan example cleanup, version-scoped suppressions, internally consistent VMAttributes example

* Add createdTime to LaunchBulkInstancesOperationProperties (read-only) to match Kronox DTO

* Address ARM API review feedback on PR Azure#43268

Consolidates the LaunchBulkInstancesOperation surface into the existing
2026-04-06-preview API version (no separate 2026-06-06-preview) and applies
the blocking review findings from the ARM API reviewer agent.

Findings addressed:
- EX-RESOURCE-ID: set id/name/type to the canonical
  Microsoft.Compute/locations/launchBulkInstancesOperations envelope across
  all LaunchBulkInstancesOperation_* example response bodies.
- EX-LRO-HEADERS: rename location header to PascalCase Location, replace
  contoso.com placeholders with realistic management.azure.com polling URLs.
- RPC-Async-V1-11: emit both Location and Azure-AsyncOperation headers on
  Cancel and Delete 202 responses by setting
  LroHeaders = ArmCombinedLroHeaders & RetryAfterHeader in TSP.
- Section 10A (Suppression Scoping): add a where: JSONPath array to the
  ParameterNotUsingCommonTypes suppression so it covers both the new
  launchBulkInstancesOperations paths and the existing virtualMachinesBulk*
  paths after the location parameter rename.
- EX-DESCRIPTIVE-VALUES (ListVirtualMachines): fix the example so the
  operation name parameter no longer duplicates the subscriptionId, and use
  realistic VM name/type/filter/nextLink values.
- Section 1.6 (Resource Type Naming): rename the routes.tsp alias key
  locationparameter -> location so all bulk-action POST paths use the same
  parameter name; update example payloads accordingly.
- EX-TITLE: drop the duplicate "- generated by [MaximumSet] rule" suffix from
  BulkCreate_MinimumSet_Gen.json and BulkVdiFlexCreate_MinimumSet_Gen.json
  titles.
- SEC-SECRET-DETECT: replace the customData base64 string that decoded to
  "export SENSITIVE=1" in BulkReimage_MaximumSet_Gen.json with a clearly-fake
  placeholder.

Cleanup:
- Drop the redundant @added(Microsoft.Compute.Versions.\2026-04-06-preview\)
  decorators across vmAttributes.tsp, launchBulkInstancesOperation.tsp, and
  models.tsp now that 2026-04-06-preview is the only version (decorators are
  no-ops on a single-version service and the generated swagger is
  byte-identical without them).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Match source RP: drop Azure-AsyncOperation header from Cancel/Delete 202

Reverts the prior LroHeaders = ArmCombinedLroHeaders override on the
LaunchBulkInstancesOperation Cancel (POST) and Delete (DELETE) operations
so the emitted 202 headers exactly match the source
Microsoft.ComputeBulkActions/2026-02-01-preview RP: Location + Retry-After
only. CreateOrUpdate PUT continues to emit Azure-AsyncOperation + Retry-After
on 201 via the default azure-async-operation final-state-via mode, which
also matches the source RP.

This re-introduces the RPC-Async-V1-11 lint observation on Cancel/Delete
async POST/DELETE, which is acceptable because the same pattern is
already in production under Microsoft.ComputeBulkActions/2026-02-01-preview
with the corresponding PostResponseCodes suppression.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix Operations_List example: replace data-action/internal payload

Replaces the Operations_List_MaximumSet_Gen.json example payload, which had
isDataAction: true, actionType: "Internal", and a placeholder nextLink, with
a representative control-plane operation:

  - name: Microsoft.Compute/locations/launchBulkInstancesOperations/read
  - isDataAction: false
  - display provider/resource/operation/description matching the real read op
  - origin: "user,system"
  - realistic nextLink URL with api-version and an opaque page token

Addresses ARM reviewer feedback (EX-PAYLOAD / RPC-Operations-V1): the
operations listing endpoint is itself a control-plane read, so its sample
payload should describe a control-plane operation rather than a hidden
data-action operation.

Applied to both the canonical preview/2026-04-06-preview/examples/ folder
and the mirrored examples/2026-04-06-preview/ folder.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Restore @added decorators in models.tsp

Restores the 9 \@added(Microsoft.Compute.Versions.\2026-04-06-preview\)\
decorators on the ExecuteCreateFlex unions/models in models.tsp that existed
on origin/main and were inadvertently removed during the
"drop redundant @added decorators" cleanup in the consolidation commit.

These decorators are no-ops for a single-version service today, but they
are present on origin/main and removing them produced unnecessary churn in
the PR diff. Keeping them aligned with origin/main minimizes the diff and
preserves the existing version-gating pattern for when a second API version
is introduced later.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Annotate BulkactionVMExtension protected settings as secrets

Add @secret decorator to BulkactionVMExtensionProperties.protectedSettings
and .protectedSettingsFromKeyVault. The autorest emitter now produces
x-ms-secret: true and format: password on both properties in the generated
swagger, satisfying ARM Section 7.2 / SEC-SECRET-DETECT.

Addresses reviewer finding #20 (EXISTING). The same omission exists in the
source Microsoft.ComputeBulkActions RP and will be fixed there in a
coordinated follow-up.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Fix ModelValidation: remove protectedSettings from example responses

Removed protectedSettings and protectedSettingsFromKeyVault from response
payloads in 4 LaunchBulkInstancesOperation example files (canon + mirror).
These autogenerated keys triggered SECRET_PROPERTY errors after the
@secret annotation was added in f3a470d. Request bodies still carry
them; only responses were corrected, since a service must never return
secrets.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Change GetOperationStatus URL to launchBulkInstancesOperations/asyncOperations/{asyncOperationId}

Replaces the previous .../locations/{location}/operations/{id} path with
.../locations/{location}/launchBulkInstancesOperations/asyncOperations/{asyncOperationId}
to match the service contract. The TSP operation now uses an explicit
@route since the literal launchBulkInstancesOperations collection segment
cannot be injected via ArmResourceRead. Updated path parameter from id
to asyncOperationId. Also updated Azure-AsyncOperation and Location
header URLs in the CreateOrUpdate, Cancel, and Delete examples.

Validated locally with tsp compile --warn-as-error, azsdk
run_typespec_validation (Succeeded), and oav validate-example.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

* Add PathForNestedResource suppression for GetOperationStatus path

The new GetOperationStatus path
.../locations/{location}/launchBulkInstancesOperations/asyncOperations/{asyncOperationId}
intentionally uses a fixed launchBulkInstancesOperations collection segment
followed by asyncOperations/{id} to match the service-side routing contract.
This is the documented exception case for the PathForNestedResource rule.

Also updates the existing ParameterNotUsingCommonTypes suppression entry
to point at the new path since the previous /operations/{id} path no
longer exists.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <copilot@microsoft.com>
Co-authored-by: Yash Khandelwal (from Dev Box) <yakhande@microsoft.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants