The Azure Cosmos DB extension for Azure Data Studio is an open-source project that currently supports Azure Cosmos DB Mongo API accounts and Mongo databases.
Download and install Azure Data Studio. Click on the Extensions icon and install the Azure Cosmos DB (Mongo API) and Mongo extension.
This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
cd <path_to_clone>
yarn
yarn run publish
This creates an azure-cosmosdb-ads-extension-x.y.z.vsix
file which can be manually installed in ADS.
The out/
folder contains the output of the build process. The ESBuild bundler may only transpile extension.js
(it transpiles the typescript source files as it bundles and therefore does not need tsc
to transpiled the source before bundling) while tsc
will transpile all the typescript files.
The dist/
folder contains the output of the bundling process from ESBuild.
There are two ways to debug the extension using Visual Studio Code:
This is the simplest way to debug.
yarn
to install the dependenciesyarn run esbuild:watch
to automatically re-bundle for every source change.This setup is useful if your extension depend on some changes that you are bringing to Azure Data Studio. In this situation, you need to run the modified version of ADS and not a regular installation. In that case, you want to run your modified version of ADS and also load your modified extension.
extensions/
folder which contains all the ADS built-in extensions. Clone this extension repository inside this folder. Your extension path should now be: <path_to_ADS_clone>/extensions/azure-cosmosdb-ads-extension
.launch.json
:
Look for the "Attach to Extension Host" target and add the dist/
directory in the "outFiles"
section:
"outFiles": [
"${workspaceFolder}/out/**/*.js",
"${workspaceFolder}/extensions/*/out/**/*.js",
"${workspaceFolder}/extensions/*/dist/**/*.js" <------------- Add this line
],
<path_to_ADS_clone>
yarn
yarn run watch
<path_to_ADS_clone>/extensions/azure-cosmosdb-ads-extension
yarn
yarn run esbuild:watch
This extension collects telemetry data, which is used to help understand how to improve the product. For example, this usage data helps to debug issues, such as slow start-up times, and to prioritize new features. While we appreciate the insights this data provides, we also know that not everyone wants to send usage data and you can disable telemetry as described in the Azure Data Studio disable telemetry reporting documentation.
To learn more about our Privacy Statement visit this link.
The software may collect information about you and your use of the software and send it to Microsoft. Microsoft may use this information to provide services and improve our products and services. You may turn off the telemetry as described in the repository. There are also some features in the software that may enable you and Microsoft to collect data from users of your applications. If you use these features, you must comply with applicable law, including providing appropriate notices to users of your applications together with a copy of Microsoft’s privacy statement. Our privacy statement is located at https://go.microsoft.com/fwlink/?LinkID=824704. You can learn more about data collection and use in the help documentation and our privacy statement. Your use of the software operates as your consent to these practices.
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.
This extension is licensed under the MIT License.