* download Microsoft.Build.Sql sdk and extract
* cleanup extracted folder and nuget
* add constants
* cleanup
* remove package-lock.json
* making outputChannel required and some cleanup
* only download if the files aren't already there
* Add todo
* add try catches
* addressing comments
* add 'open in designer' to context menu of tables in sql projects
* fix tests
* Address comments
* enable table designer for sql database proj
* update label and issues on init
* vbump sts
* use promisified fs
* pr comments
Co-authored-by: Alan Ren <alanren@microsoft.com>
* Add sqlproj property to trace the origin of the project.
As part of the database migration process (schema conversion, in particular) we want to be able to tell when converted schemas are being built/deployed to the actual database server. Given that we rely on the SQL Database Projects ADS extension for the compilation/deployment, we don't have too many options other than updating the said extension.
The suggested approach is to make the following changes:
1) Add new property to the sqlproj file (called `DatabaseSource`), which will maintain the origin(s) of the project. The property can contain multiple values (separated by semicolon), in case same project contains objects produced by multiple sources (extract schema, convert from another database, etc.).
2) During build and deploy actions, send the well-known values from the newly added property to the telemetry. We don't want to send any random value of the property, as it may raise some privacy concerns. Instead we define a list of the well-known values that we know do not carry any personal information and send those, if they are specified.
This change adds all necessary APIs to the SQl Database projects extension which will be consumed by our migration extensions to populate new `DatabaseSource` property.
* Use `undefined` instead of `null`
Co-authored-by: Kim Santiago <kisantia@microsoft.com>
* add more telemetry for sql database projects
* add publishToContainer events
* send target platform when publishing
* add duration for createProjectFromDb and updateProjectFromDb
* add sdk style project template
* update description and order
* add SDK style project option to create project from db dialog
* fix test
* switch to checkbox
* remove not used string
* fix test
* add sdk style project template
* update description and order
* update template
* update template and add link
* remove ToolsVersion and xmlns from project node
* update template name to SQL Database (SDK)
* don't show SSDT update warning for new style projects
* update strings
* add checks for the 2 other ways to specify msbuild sdk
* add link to docs on how to use project sdk
Co-authored-by: Kim Santiago <kisantia@Kims-MacBook-Pro.local>
* Adding prompt for project name
* Updating test
* PR feedback
* Fixing rename logic so that folder is also named according to project
* Updating autorest test to confirm rename
* Giving user option to install autorest globally or run via npx
* Adds message for when no files are generated (no models in spec)
* Adding test
* Reinstating the rest of the test suite
* PR feedback
* Fixing tests to stub new prompt when test runner doesn't have autorest installed
* PR feedback
* fix typo
* fix typo