Commit Graph

140 Commits

Author SHA1 Message Date
Charles Gagnon
f2b623b3b2 Move promptAddItem to extension API (#19423)
* Move addItem to extension API

* add noneDeployScripts
2022-05-19 11:25:10 -07:00
Kim Santiago
7b4181dd13 add docker image with telemetry for publish to container (#19360)
* add docker info image to telemetry for publish to container

* change name
2022-05-12 14:03:17 -07:00
Barbara Valdez
742232ddd5 Add option to create sdk style project (#19290)
* update sql proj api

* remove extra spaces

* simplify check
2022-05-04 15:21:13 -07:00
Leila Lali
d95aff1d3c New UI for deploying SQL project to a new Azure server (#18833) 2022-04-29 15:39:21 -07:00
Kim Santiago
d34b65ebb7 send telemetry for generate project from OpenApi spec (#19188) 2022-04-25 10:20:26 -07:00
Alexander Ivanov
0f598dd30b Add sqlproj property to trace the origin of the project. (#18670)
* 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>
2022-04-18 11:38:10 -07:00
Kim Santiago
379b24d78c Add confirmation before converting to SDK-style project (#18893)
* Add confirmation before updating to SDK-style project

* update string

* update string

* update other learn more url
2022-04-07 15:48:05 -07:00
Kim Santiago
d6dab3dd18 Remove build and folder includes when converting to SDK-style project (#18889)
* remove Build and Folder Includes

* add tests

* cleanup

* rollback if there was an error during the conversion
2022-04-01 21:04:18 -04:00
Kim Santiago
8537a30996 fix project not getting updated after schema cmopare (#18850) 2022-03-29 11:55:12 -07:00
Leila Lali
459fab256e Sql Proj: Adding a new sqlproj template for SQL dbs (#18636) 2022-03-29 09:06:56 -07:00
Kim Santiago
2f825f8a97 add initial SDK-style project migration (#18827)
* add initial SDK-style project migration

* addressing comments
2022-03-28 16:29:14 -07:00
Leila Lali
aad20bc338 Chaning the name of server in deploy option if target is Azure (#18828) 2022-03-28 15:07:09 -07:00
Nemanja Milovančević
5e68ff1dfe Make mssql extension a module (#18804)
* Rebase from main branch

* import from module

* Add mssql module ref

Co-authored-by: Charles Gagnon <chgagnon@microsoft.com>
2022-03-24 11:09:55 -07:00
Kim Santiago
3071a7b710 Add more telemetry for sql database projects (#18751)
* add more telemetry for sql database projects

* add publishToContainer events

* send target platform when publishing

* add duration for createProjectFromDb and updateProjectFromDb
2022-03-17 16:44:10 -07:00
Kim Santiago
7181d4c79e Make SDK-style project a checkbox option instead of separate template (#18698)
* switch to using a checkbox instead of separate template for new SDK style project

* let project provider provide sdk learn more url

* Reorder
2022-03-11 16:54:53 -08:00
Benjin Dubishar
c64655ae71 Benjin/project update bug (#18532)
* correct result.success

* shifting success message to actually check success

* keying on errorMessage rather than success
2022-02-25 16:59:28 -08:00
Kim Santiago
7b92c9eb65 only show confirmation message for apply all changes, not for view changes in schema compare (#18520) 2022-02-22 13:33:24 -08:00
Z Chen
9e574ae602 Database Projects - Add existing file (#18066)
* Add existing file to sqlproj

* Address PR comments

* Fix failing test

* Add convertSlashesForSqlProj to test failure
2022-02-14 15:04:57 -08:00
Kim Santiago
fa4161d9a1 Add SDK style project option to create project from db dialog (#18243)
* 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
2022-02-10 10:49:46 -08:00
Charles Gagnon
1c9ba64ee0 check-param-names (#18189) 2022-01-31 12:39:22 -08:00
Charles Gagnon
aff161b344 Have sql db proj publish command return publishing promise (#18139) 2022-01-25 14:11:30 -08:00
Kim Santiago
967cd2b102 Add SDK sql project template (#18058)
* 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)
2022-01-19 10:08:47 -08:00
Benjin Dubishar
292e60a767 Apply changes from remote database to sqlproj - sql-database-projects changes (#17738)
* update project from database

* update project from database

* Leftover merge update

* Slight refactor to add vscode entrypoints

* Re-adding leftover schemacompare bits that reference database project changes

* Removing unnecessary function

* Addiung GetDSP command to package.json

* tests and a race condition fix

* remove custom UUID generation code

* swapping awaits for voids on promises

* PR feedback

* PR feedback

* Hide update project command from vscode

* Swapping cross-extension commands for bound extension contract

* Re-adding schema compare radio buttons for sqlproj

* Adding refresh after project update

* Populating list of project scripts just before comparison to avoid missing script errors of project was separately edited

* Adding missing await for okay button enable check

* Correcting schema compare source when populated from a project

* Rename UpdateDataModel to be more clear

* Fix incorrectly changed type

* Added new runComparison schema compare command, hooked up to sqlproj extension

* Added progress indicator for "apply now" option

* moved string literal to constant

* Added missing await

* Setting missing "saveScmpButton" state to fix test

* Revert "Setting missing "saveScmpButton" state to fix test"

This reverts commit 55612c9def24ac9e3398f5bbd153d21d9d3ca37f.

* Removing preemptive resetWindow() call

* general cleanup

* PR feedback

* property renames

* Reverting rename; requires Tools Service change first

* Adding header to updateProject

* Adding missing header

* PR feedback

* adding missing await

* Handing race condition for UI enable

* Fixing broken okay enable case

* Fixing enum comparison wonk

Co-authored-by: Noureldine Yehia <t-nyehia@microsoft.com>
2022-01-11 16:52:09 -08:00
Charles Gagnon
7940814e8d Add GenerateProjectFromOpenApiSpecOptions (#18045)
* wip

* Undo string change

* more changes
2022-01-11 11:57:21 -08:00
Kim Santiago
e11b1ed2a3 update sql projects test (#17987) 2022-01-05 10:03:24 -08:00
Kim Santiago
2b1acbc2c7 Handle exclude folder for sdk style sql projects (#17826)
* handle exclude Folder for sdk style projects

* update comment

* fix tests

* cleanup

* handle nested folders

* cleanup

* addressing comments
2021-12-14 11:29:42 -08:00
Leila Lali
9bdd6aca42 Adding UI for deploying a db proj to docker (#17495) 2021-11-18 14:44:33 -08:00
Kim Santiago
6f03cbac97 support building msbuild sdk style projects (#17675)
* support building msbuild sdk style projects

* fixes after merge
2021-11-17 07:59:43 -10:00
Kim Santiago
66c438db4d Fix sql projects net6 warnings (#17673)
* fix .net 6 error showing on startup

* fix double warning

* addressing comments

* update key string
2021-11-16 10:02:15 -10:00
Kim Santiago
b6047ad87d Move project entry classes to separate file (#17629)
* moving ProjectEntry stuff to another file

* cleanup
2021-11-09 16:03:39 -08:00
Charles Gagnon
00e5380331 sql-database-projects dialog completion cleanup (#17525) 2021-10-28 13:51:48 -07:00
Kim Santiago
fee9c6e071 Don't show update project warning for new style sqlproj (#17490)
* 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>
2021-10-27 12:53:38 -07:00
Benjin Dubishar
86320155ed Correcting log messages during autorest execution selection (#17434)
* Correcting log messages during autorest execution choice

* Combining redundant strings

* Correcting icon + loc

* Fixing typo
2021-10-22 06:01:11 -07:00
Benjin Dubishar
7f92d8bc19 Add prompt for autorest SQL project name (#17365)
* 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
2021-10-17 07:53:22 -07:00
Benjin Dubishar
ecb7f9311a Adding progress indicator for autorest generation (#17371) 2021-10-15 23:42:57 -07:00
Benjin Dubishar
901b90317c Prompts user for desired action when autorest is not installed (#17305)
* 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
2021-10-15 13:26:58 -07:00
Benjin Dubishar
69128c0689 Verbose output for autorest, displaying output pane on error (#17308) 2021-10-14 15:22:53 -07:00
Benjin Dubishar
547ceba501 Added icon (#17306) 2021-10-13 10:04:26 -07:00
Benjin Dubishar
33d9bfd87f Adding JSON and YML as valid extensions for OpenAPI/Swagger spec files (#17297)
* adding more openAPI spec types

* Correcting extension stripping

* PR feedback
2021-10-07 23:22:21 -07:00
Leila Lali
f875699cd2 sqlproj publish to container - october release improvements (#17289) 2021-10-07 12:55:43 -07:00
Kim Santiago
d5b43df6d6 fix restart ADS warning showing twice for create project from db (#17214) 2021-10-01 14:53:36 -07:00
Leila Lali
3ed611db66 sql proj - publish to docker improvements (#17124) 2021-09-21 16:47:06 -07:00
Benjin Dubishar
5feb660234 PR follow-up comments (#17113) 2021-09-20 15:46:34 -07:00
Benjin Dubishar
08e15bce99 Adds autorest-based SQL Project generation to SQL Database Projects extension (#17078)
* Initial changes

* checkpoint

* Constructing project with post deployment script

* Correcting to intentionally read from cached list of projects

* Adding activation event, fixing fresh workspace bug

* Convert netcoreTool and autorestHelper to share a helper class for streamed command

* Include npm package version to force update

* test checkpoint

* Unit tests

* Added contextual quickpicks for autorest dialogs

* Adding projectController test

* Added projectController test, some refactoring for testability

* Merge branch 'main' into benjin/autorest

* Fixing 'which' import

* PR feedback

* Fixing tests

* Adding additional information for when project provider tests fail

* Hopefully fixing failing tests (unable to repro locally)

* Adding Generate Project item to workspace menu

* PR feedback
2021-09-16 20:38:40 -07:00
Leila Lali
4912faa966 SQL Project - deploy to docker publish option (#17050)
SQL Project - deploy to docker publish option
2021-09-13 14:12:53 -07:00
Charles Gagnon
c8cc6c08e9 Add no-floating-promises rule to sql-database-projects extension (#16943)
* Add no-floating-promises rule to sql-database-projects extension

* fix test
2021-08-31 14:13:52 -07:00
Leila Lali
32a71a2de6 SQL Database Project - Deploy db to docker (#16406)
Added a new command to deploy the project to docker
2021-08-12 13:24:16 -07:00
Sakshi Sharma
4250556023 Fix incorrect .NET error (#16694)
* Fix .NET Install state for error conditions

* Address comment- remove redundant constructor
2021-08-11 11:29:48 -07:00
Sakshi Sharma
e0143e0752 Update pop-up to be an error message instead of informational message (#16660)
* Update pop-up to be an error message

* Update message text

* Address comment

* Address comment
2021-08-10 15:24:09 -07:00
Charles Gagnon
b2ff8162e6 Add DB Reference quickpick dialog (#16601)
* Add DB Reference quickpick dialog

* pr comments & cleanup
2021-08-09 12:46:53 -07:00