VS Code extension for Cosmos DB Graph databases.
Перейти к файлу
Stephen Weatherford (MSFT) 6a3e9c5daa
More minor message improvements (#459)
2018-03-30 14:22:27 -07:00
.vscode Add extension recommendations (#400) 2018-03-12 14:10:27 -07:00
grammar Fix handling of CRLF and add some unit tests, fixes #386 (#456) 2018-03-30 14:09:35 -07:00
resources README fixes/improvements, fixes #453 (#454) 2018-03-29 18:10:45 -07:00
src More minor message improvements (#459) 2018-03-30 14:22:27 -07:00
test Fix handling of CRLF and add some unit tests, fixes #386 (#456) 2018-03-30 14:09:35 -07:00
.gitignore Don't re-use gremlin query for edges, fixes #184 (#206) 2017-11-15 16:23:58 -08:00
.travis.yml Add tslint (with some disabled rules) (#426) 2018-03-22 13:08:37 -07:00
.vscodeignore Add vscodeignore 2017-11-21 21:46:27 +00:00
CHANGELOG.md Prep for release: package.json version update, document fixed bug (#439) 2018-03-26 14:02:41 -07:00
LICENSE.md Prep for publish 2017-06-09 14:39:09 -07:00
README.md README fixes/improvements, fixes #453 (#454) 2018-03-29 18:10:45 -07:00
gulpfile.js Add upload-vsix to travis ci (#402) 2018-03-13 22:45:44 +00:00
package.json Fix handling of CRLF and add some unit tests, fixes #386 (#456) 2018-03-30 14:09:35 -07:00
thirdpartynotices.txt Leverage shared azure tree provider 2017-11-29 00:49:21 +00:00
tsconfig.json Enforce noImplicitThis and noImplicitReturns on src (#374) 2018-03-01 11:38:49 -08:00
tslint.json Delinting 4 (#448) 2018-03-28 11:42:59 -07:00

README.md

Cosmos DB Support for VS Code (Preview)

Build Status Release Status

Prerequisites

Features

Cosmos DB Explorer

  • Create a Cosmos DB account by clicking the + button in the title
  • View Azure Cosmos DB accounts and open directly in the portal
  • View/Create/Delete databases, collections, graphs, and documents
  • Click on a document to open in the editor
  • Click on a graph to visualize data
  • Query graph using Gremlin
  • Edit a document and persist changes to the cloud
  • Attach a Mongo server by clicking the plug icon in the title

*Support for Table accounts in CosmosDB is coming soon!

Browse CosmosDB and MongoDB databases

Mongo "Scrapbooks" (Run Mongo Commands with Rich Intellisense)

  • View your MongoDB database account by signing in to Azure or attaching with a connection string
  • Optionally configure the user setting mongo.shell.path to your mongo shell executable path (many of the common commands have built-in support and do not require the Mongo shell to be installed - see Prerequisites)
  • Right-click on a database and select "Connect"
  • Click on "New Mongo Scrapbook" in the tree title bar
  • Enter your commands and/or comments, eg: db.<collectionName>.find()
  • IntelliSense (auto-completions) will be provided
  • Place the cursor inside the command to execute and press CMD+" (Mac) or CTRL+" (Windows and Linux) to see the results
  • Save and re-use later

Mongo Intellisense

Use Gremlin to query graphs

Query Graphs

  • Configure the user setting cosmosDB.graph.viewSettings to customize which properties to display and which colors to use based on vertex label.
    "cosmosDB.graph.viewSettings": [
        {
            "vertexSettings": [
                {
                    // Default settings for all vertices
                    "displayProperty": [
                        // Display name property if exists, otherwise firstName if it exists, otherwise ID
                        "name",
                        "firstName"
                    ],
                    // Auto-choose color by label
                    "color": "auto",
                    // Show label after display property
                    "showLabel": true
                },
                {
                    // These setting apply to vertices with the label 'person'
                    "appliesToLabel": "person",
                    "color": "blue"
                }
            ]
        }
    ]

Create a Cosmos DB Account

Create Cosmos DB Account

Attach to the Cosmos DB Emulator

  • Install and run the Cosmos DB Emulator on your local machine
  • Right click 'Attached Database Accounts' and select 'Attach Emulator'

Attach Emulator

Managing Azure Subscriptions

If you are not signed in to Azure, you will see a "Sign in to Azure..." link. Alternatively, you can select "View->Command Palette" in the VS Code menu, and search for "Azure: Sign In".

Sign in to Azure

If you don't have an Azure Account, you can sign up for one today for free and receive $200 in credits by selecting "Create a Free Azure Account..." or selecting "View->Command Palette" and searching for "Azure: Create an Account".

You may sign out of Azure by selecting "View->Command Palette" and searching for "Azure: Sign Out".

To select which subscriptions show up in the extension's explorer, click on the "Select Subscriptions..." button on any subscription node (indicated by a "filter" icon when you hover over it), or select "View->Command Palette" and search for "Azure: Select Subscriptions". Note that this selection affects all VS Code extensions that support the Azure Account and Sign-In extension.

Select Azure Subscriptions

Known Issues

  • Azure no longer supports gremlin queries on pre-GA graph accounts. If you see the error "Could not find a valid gremlin endpoint for graph", then choose "Open Portal" on the graph node and check the "Gremlin Endpoint" in the Overview tab. If it does not take the form of '...[graph-name].gremlin.cosmosdb.azure.com...', then you will need to create a new graph account using the Azure portal or the current version of the extension.
  • Graphs are not currently supported with the emulator

Contributing

There are a couple of ways you can contribute to this repo:

  • Ideas, feature requests and bugs: We are open to all ideas and we want to get rid of bugs! Use the Issues section to either report a new issue, provide your ideas or contribute to existing threads.
  • Documentation: Found a typo or strangely worded sentences? Submit a PR!
  • Code: Contribute bug fixes, features or design changes:
    • Clone the repository locally and open in VS Code.
    • Open the terminal (press CTRL+`) and run npm install.
    • To build, press F1 and type in Tasks: Run Build Task.
    • Debug: press F5 to start debugging the extension.

Before we can accept your pull request you will need to sign a Contribution License Agreement. All you need to do is to submit a pull request, then the PR will get appropriately labelled (e.g. cla-required, cla-norequired, cla-signed, cla-already-signed). If you already signed the agreement we will continue with reviewing the PR, otherwise system will tell you how you can sign the CLA. Once you sign the CLA all future PR's will be labeled as cla-signed.

Code of Conduct

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.

Telemetry

VS Code collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more. If you dont wish to send usage data to Microsoft, you can set the telemetry.enableTelemetry setting to false. Learn more in our FAQ.

License

MIT