Skip to content

Comments

Introduce CosmosDB RP API 2024-08-15 Version#29905

Merged
20 commits merged intomainfrom
cosmosdb/2024-08-15-rp-api
Sep 9, 2024
Merged

Introduce CosmosDB RP API 2024-08-15 Version#29905
20 commits merged intomainfrom
cosmosdb/2024-08-15-rp-api

Conversation

@ghost
Copy link

@ghost ghost commented Jul 18, 2024

ARM (Control Plane) API Specification Update Pull Request

Tip

Overwhelmed by all this guidance? See the Getting help section at the bottom of this PR description.

PR review workflow diagram

Please understand this diagram before proceeding. It explains how to get your PR approved & merged.

spec_pr_review_workflow_diagram

Purpose of this PR

What's the purpose of this PR? Check the specific option that applies. This is mandatory!

  • New resource provider.
  • New API version for an existing resource provider. (If API spec is not defined in TypeSpec, the PR should have been created in adherence to OpenAPI specs PR creation guidance).
  • Update existing version for a new feature. (This is applicable only when you are revising a private preview API version.)
  • Update existing version to fix OpenAPI spec quality issues in S360.
  • Convert existing OpenAPI spec to TypeSpec spec (do not combine this with implementing changes for a new API version).
  • Other, please clarify:
    • edit this with your clarification

Due diligence checklist

To merge this PR, you must go through the following checklist and confirm you understood
and followed the instructions by checking all the boxes:

  • I confirm this PR is modifying Azure Resource Manager (ARM) related specifications, and not data plane related specifications.
  • I have reviewed following Resource Provider guidelines, including
    ARM resource provider contract and
    REST guidelines (estimated time: 4 hours).
    I understand this is required before I can proceed to the diagram Step 2, "ARM API changes review", for this PR.

Additional information

Viewing API changes

For convenient view of the API changes made by this PR, refer to the URLs provided in the table
in the Generated ApiView comment added to this PR. You can use ApiView to show API versions diff.

Suppressing failures

If one or multiple validation error/warning suppression(s) is detected in your PR, please follow the
suppressions guide to get approval.

Getting help

  • First, please carefully read through this PR description, from top to bottom. Please fill out the Purpose of this PR and Due diligence checklist.
  • If you don't have permissions to remove or add labels to the PR, request write access per aka.ms/azsdk/access#request-access-to-rest-api-or-sdk-repositories
  • To understand what you must do next to merge this PR, see the Next Steps to Merge comment. It will appear within few minutes of submitting this PR and will continue to be up-to-date with current PR state.
  • For guidance on fixing this PR CI check failures, see the hyperlinks provided in given failure
    and https://aka.ms/ci-fix.
  • For help with ARM review (PR workflow diagram Step 2), see https://aka.ms/azsdk/pr-arm-review.
  • If the PR CI checks appear to be stuck in queued state, please add a comment with contents /azp run.
    This should result in a new comment denoting a PR validation pipeline has started and the checks should be updated after few minutes.
  • If the help provided by the previous points is not enough, post to https://aka.ms/azsdk/support/specreview-channel and link to this PR.

Carolyn Jackson added 3 commits July 18, 2024 13:20
Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.
Updated the API version from stable/2024-05-15 to stable/2024-08-15.
@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Jul 18, 2024

Next Steps to Merge

✅ All automated merging requirements have been met! To get your PR merged, see aka.ms/azsdk/specreview/merge.

@openapi-pipeline-app
Copy link

openapi-pipeline-app bot commented Jul 18, 2024

Swagger Generation Artifacts

️️✔️ApiDocPreview succeeded [Detail] [Expand]
 Please click here to preview with your @microsoft account. 
️⚠️ azure-sdk-for-python warning [Detail]
    For more instructions, please refer to the FAQ .
  • ⚠️Warning in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	sh scripts/automation_init.sh ../azure-sdk-for-python_tmp/initInput.json ../azure-sdk-for-python_tmp/initOutput.json
    cmderr	[automation_init.sh] W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target Translations (main/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target CNF (main/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target CNF (main/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target Packages (main/binary-amd64/Packages) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target Packages (main/binary-all/Packages) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target Translations (main/i18n/Translation-en) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target CNF (main/cnf/Commands-amd64) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] W: Target CNF (main/cnf/Commands-all) is configured multiple times in /etc/apt/sources.list.d/azure-cli.list:1 and /etc/apt/sources.list.d/azure-cli.sources:1
    cmderr	[automation_init.sh] WARNING: Skipping azure-nspkg as it is not installed.
    cmderr	[automation_init.sh] npm notice
    cmderr	[automation_init.sh] npm notice New minor version of npm available! 10.7.0 -> 10.8.2
    cmderr	[automation_init.sh] npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.8.2
    cmderr	[automation_init.sh] npm notice To update run: npm install -g npm@10.8.2
    cmderr	[automation_init.sh] npm notice
    command	sh scripts/automation_generate.sh ../azure-sdk-for-python_tmp/generateInput.json ../azure-sdk-for-python_tmp/generateOutput.json
  • ️✔️azure-mgmt-cosmosdb [Preview SDK Changes]
    info	[Changelog]
️❌ azure-sdk-for-net-track2 failed [Detail]
    For more instructions, please refer to the FAQ .
  • Failed in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	pwsh ./eng/scripts/Automation-Sdk-Init.ps1 ../azure-sdk-for-net_tmp/initInput.json ../azure-sdk-for-net_tmp/initOutput.json
    command	pwsh ./eng/scripts/Invoke-GenerateAndBuildV2.ps1 ../azure-sdk-for-net_tmp/generateInput.json ../azure-sdk-for-net_tmp/generateOutput.json
    cmderr	[Invoke-GenerateAndBuildV2.ps1] GeneratePackage: /mnt/vss/_work/1/s/azure-sdk-for-net/eng/scripts/automation/GenerateAndBuildLib.ps1:714
    cmderr	[Invoke-GenerateAndBuildV2.ps1] Line |
    cmderr	[Invoke-GenerateAndBuildV2.ps1]  714 |          GeneratePackage -projectFolder $projectFolder -sdkRootPath $s …
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      | Failed to generate sdk. exit code: False
    cmderr	[Invoke-GenerateAndBuildV2.ps1] Get-ChildItem: /mnt/vss/_work/1/s/azure-sdk-for-net/eng/scripts/automation/GenerateAndBuildLib.ps1:787
    cmderr	[Invoke-GenerateAndBuildV2.ps1] Line |
    cmderr	[Invoke-GenerateAndBuildV2.ps1]  787 |  … rtifacts += Get-ChildItem $artifactsPath -Filter *.nupkg -exclude *.s …
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      | Cannot find path
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      | '/mnt/vss/_work/1/s/azure-sdk-for-net/artifacts/packages/Debug/' because
    cmderr	[Invoke-GenerateAndBuildV2.ps1]      | it does not exist.
  • Azure.ResourceManager.CosmosDB [Preview SDK Changes]
    info	[Changelog]
️️✔️ azure-sdk-for-java succeeded [Detail] [Expand]
    For more instructions, please refer to the FAQ .
  • ️✔️Succeeded in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	./eng/automation/init.sh ../azure-sdk-for-java_tmp/initInput.json ../azure-sdk-for-java_tmp/initOutput.json
    command	./eng/automation/generate.py ../azure-sdk-for-java_tmp/generateInput.json ../azure-sdk-for-java_tmp/generateOutput.json
  • ️✔️azure-resourcemanager-cosmos-generated [Preview SDK Changes]
    info	[Changelog]
️️✔️ azure-sdk-for-go succeeded [Detail] [Expand]
    For more instructions, please refer to the FAQ .
  • ️✔️Succeeded in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	sh ./eng/scripts/automation_init.sh ../../../../../azure-sdk-for-go_tmp/initInput.json ../../../../../azure-sdk-for-go_tmp/initOutput.json
    command	generator automation-v2 ../../../../../azure-sdk-for-go_tmp/generateInput.json ../../../../../azure-sdk-for-go_tmp/generateOutput.json
  • ️✔️sdk/resourcemanager/cosmos/armcosmos [Preview SDK Changes]
    info	[Changelog] ### Other Changes
    info	[Changelog]
    info	[Changelog] Total 0 breaking change(s), 0 additive change(s).
️️✔️ azure-sdk-for-js succeeded [Detail] [Expand]
    For more instructions, please refer to the FAQ .
  • ️✔️Succeeded in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	sh .scripts/automation_init.sh ../azure-sdk-for-js_tmp/initInput.json ../azure-sdk-for-js_tmp/initOutput.json
    warn	Warning: File azure-sdk-for-js_tmp/initOutput.json not found to read. Please re-run the pipeline if the error is transitient error or report this issue through https://aka.ms/azsdk/support/specreview-channel.
    command	sh .scripts/automation_generate.sh ../azure-sdk-for-js_tmp/generateInput.json ../azure-sdk-for-js_tmp/generateOutput.json
    cmderr	[automation_generate.sh] [ERROR] Cannot generate changelog because the codes of local and npm may be the same.
  • ️✔️@azure/arm-cosmosdb [Preview SDK Changes]
    info	[Changelog]
️❌ azure-resource-manager-schemas failed [Detail]
    For more instructions, please refer to the FAQ .
  • Code Generator Failed in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. Schema Automation 14.0.0
    command	.sdkauto/initScript.sh ../azure-resource-manager-schemas_tmp/initInput.json ../azure-resource-manager-schemas_tmp/initOutput.json
    cmderr	[initScript.sh] Submodule 'bicep-types-az' (https://github.com/Azure/bicep-types-az) registered for path 'bicep-types-az'
    cmderr	[initScript.sh] Cloning into '/mnt/vss/_work/1/s/azure-resource-manager-schemas/bicep-types-az'...
    cmderr	[initScript.sh] Submodule 'bicep-types' (https://github.com/Azure/bicep-types) registered for path 'bicep-types-az/bicep-types'
    cmderr	[initScript.sh] Cloning into '/mnt/vss/_work/1/s/azure-resource-manager-schemas/bicep-types-az/bicep-types'...
    cmderr	[initScript.sh] npm notice
    cmderr	[initScript.sh] npm notice New minor version of npm available! 10.7.0 -> 10.8.2
    cmderr	[initScript.sh] npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.8.2
    cmderr	[initScript.sh] npm notice To update run: npm install -g npm@10.8.2
    cmderr	[initScript.sh] npm notice
    error	Script return with result [failed] code [1] signal [null] cwd [azure-resource-manager-schemas]: .sdkauto/initScript.sh
    warn	Warning: File azure-resource-manager-schemas_tmp/initOutput.json not found to read. Please re-run the pipeline if the error is transitient error or report this issue through https://aka.ms/azsdk/support/specreview-channel.
    command	.sdkauto/generateScript.sh ../azure-resource-manager-schemas_tmp/generateInput.json ../azure-resource-manager-schemas_tmp/generateOutput.json
    cmderr	[generateScript.sh] /mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:500
    cmderr	[generateScript.sh]     return new TSError(diagnosticText, diagnosticCodes)
    cmderr	[generateScript.sh]            ^
    cmderr	[generateScript.sh] TSError: ⨯ Unable to compile TypeScript:
    cmderr	[generateScript.sh] cmd/generateall.ts(6,20): error TS2307: Cannot find module 'colors' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(10,19): error TS2307: Cannot find module 'yargs' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(11,18): error TS2307: Cannot find module 'path' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(13,35): error TS2307: Cannot find module 'fs' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(14,23): error TS2307: Cannot find module 'strip-ansi' or its corresponding type declarations.
    cmderr	[generateScript.sh] cmd/generateall.ts(42,9): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(53,9): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(69,67): error TS7006: Parameter 'x' implicitly has an 'any' type.
    cmderr	[generateScript.sh] cmd/generateall.ts(70,49): error TS7006: Parameter 'f' implicitly has an 'any' type.
    cmderr	[generateScript.sh] cmd/generateall.ts(94,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(105,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(106,21): error TS2584: Cannot find name 'console'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'.
    cmderr	[generateScript.sh] cmd/generateall.ts(157,13): error TS2591: Cannot find name 'process'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig.
    cmderr	[generateScript.sh]     at createTSError (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:500:12)
    cmderr	[generateScript.sh]     at reportTSError (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:504:19)
    cmderr	[generateScript.sh]     at getOutput (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:739:36)
    cmderr	[generateScript.sh]     at Object.compile (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:955:32)
    cmderr	[generateScript.sh]     at Module.m._compile (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:1043:43)
    cmderr	[generateScript.sh]     at Module._extensions..js (node:internal/modules/cjs/loader:1422:10)
    cmderr	[generateScript.sh]     at Object.require.extensions.<computed> [as .ts] (/mnt/vss/_work/1/a/unified-pipeline-runtime/common/temp/node_modules/.pnpm/ts-node@9.0.0_typescript@5.3.3/node_modules/ts-node/src/index.ts:1046:12)
    cmderr	[generateScript.sh]     at Module.load (node:internal/modules/cjs/loader:1203:32)
    cmderr	[generateScript.sh]     at Function.Module._load (node:internal/modules/cjs/loader:1019:12)
    cmderr	[generateScript.sh]     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:128:12)
    error	Script return with result [failed] code [1] signal [null] cwd [azure-resource-manager-schemas]: .sdkauto/generateScript.sh
    warn	Warning: Package processing is skipped as the SDK generation fails. Please look into the above generation errors or report this issue through https://aka.ms/azsdk/support/specreview-channel.
️⚠️ azure-powershell warning [Detail]
    For more instructions, please refer to the FAQ .
  • ⚠️Warning in generating from 02d515c6fffe7a08881dcca92a4fb50af32fe0d6. SDK Automation 14.0.0
    command	sh ./tools/SwaggerCI/init.sh ../azure-powershell_tmp/initInput.json ../azure-powershell_tmp/initOutput.json
    command	pwsh ./tools/SwaggerCI/psci.ps1 ../azure-powershell_tmp/generateInput.json ../azure-powershell_tmp/generateOutput.json
  • ⚠️Az.cosmos-db.DefaultTag [Preview SDK Changes]
Posted by Swagger Pipeline | How to fix these errors?

@AzureRestAPISpecReview AzureRestAPISpecReview added BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required and removed SuppressionReviewRequired labels Jul 30, 2024
Causes powershell build to fail.
This reverts commit 49b4257.
@ghost ghost added the BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior label Jul 31, 2024
@ghost
Copy link
Author

ghost commented Jul 31, 2024

I have added the BreakingChange-Approved-BugFix label due to the following:

If your changes to the REST API definition are correcting the definition to accurately describe the service behavior, you can bypass the review process by adding appropriate BreakingChange-Approved-BugFix or Versioning-Approved-BugFix label to your pull request.

The breaking change is due to updating the ErrorResponse format in our privateEndpointConnections.json to the correct format. Previously, the file was using an outdated custom format that does not reflect how our RP sends error responses.

Previous format:

{
    code: "",
    message: ""
}

New, correct format which aligns with our RP:

"error": {
    "code": "",
    "message": ""
}

@ghost ghost marked this pull request as ready for review July 31, 2024 16:46
@ghost ghost requested a review from pjohari-ms as a code owner July 31, 2024 16:46
@AzureRestAPISpecReview AzureRestAPISpecReview added ARMReview new-api-version WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required labels Jul 31, 2024
@ms-bogdan-rotaru ms-bogdan-rotaru added the ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review label Aug 1, 2024
@openapi-pipeline-app openapi-pipeline-app bot removed the WaitForARMFeedback <valid label in PR review process> add this label when ARM review is required label Aug 1, 2024
@ms-bogdan-rotaru
Copy link
Contributor

Please make sure you merge the latest changes from main into this branch before requesting merge into main.

@microsoft-github-policy-service microsoft-github-policy-service bot added no-recent-activity There has been no recent activity on this issue. and removed no-recent-activity There has been no recent activity on this issue. labels Aug 26, 2024
@ghost ghost added the PublishToCustomers Acknowledgement the changes will be published to Azure customers. label Sep 9, 2024
@ghost ghost enabled auto-merge (squash) September 9, 2024 16:10
@ghost ghost disabled auto-merge September 9, 2024 16:10
@ghost ghost enabled auto-merge (squash) September 9, 2024 16:18
@ghost ghost merged commit 4d06586 into main Sep 9, 2024
@ghost ghost deleted the cosmosdb/2024-08-15-rp-api branch September 9, 2024 16:52
@AzureRestAPISpecReview AzureRestAPISpecReview added the ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test label Sep 9, 2024
cheukchuen pushed a commit that referenced this pull request Jan 24, 2025
* Copy files from stable/2024-05-15

Copied the files in a separate commit.
This allows reviewers to easily diff subsequent changes against the previous spec.

* Update version to stable/2024-08-15

Updated the API version from stable/2024-05-15 to stable/2024-08-15.

* Added tag for 2024-08-15 in readme file

* run npx prettier

* add suppression

* Removed preview from burst capacity description (#29941)

* Swagger changes for Restore with TTL Disabled (#29935)

* Swagger changes for Restore with TTL Disabled

* Format fix

* add the v7 to the swagger (#29976)

* fix online/offline example to adhere to swagger spec, fixing .net sdk build error

* nit run npx prettier

* Revert "add suppression"

This reverts commit 07e1072.

* update private endpoint connection to use standard ErrorResponse

* update private endpoint connections to use v5 types

* Revert "update private endpoint connections to use v5 types"
Causes powershell build to fail.
This reverts commit 49b4257.

---------

Co-authored-by: Richa Sharma <richasharma@microsoft.com>
Co-authored-by: minhokang242 <128573538+minhokang242@users.noreply.github.com>
Co-authored-by: Andrew Khoma <andrii.serg.khoma@gmail.com>
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ARMReview ARMSignedOff <valid label in PR review process>add this label when ARM approve updates after review BreakingChange-Approved-BugFix Changes are to correct the REST API definition to correctly describe service behavior BreakingChangeReviewRequired <valid label in PR review process>add this label when breaking change review is required Cosmos new-api-version PublishToCustomers Acknowledgement the changes will be published to Azure customers. ReadyForApiTest <valid label in PR review process>add this label when swagger and service APIs are ready for test resource-manager

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants