Commit Graph

247 Commits

Author SHA1 Message Date
Karl Burtram
e86b0bc87f Fix some integration tests (#1516)
* Fix integration test cases

* More test fixes

* Dacfx test fix

* Make master default test db is none specified
2022-05-26 13:08:53 -07:00
Sai Avishkar Sreerama
62d3cdc99a Revert "Revert "Adding new Dac Deployment Options and getting descriptions fr…" (#1507)
* Adding missing Deploy options

* SQL DB Project database genScript/Publish working but tests

* Test cases fixed for the changes for DacFx and SC services

* Refactored the model name and tested the changes with ADS extensions.

* updated DeploymentOptionProperty model and corresponding updates.

* Adding DisplayNames to the deploymentOptionProperty to maintain names in STS for all extensions.

* MapTabe intialization in constructor

* Updated comment with more meaning

* Porperty strong type update with actual type

* Creating model with generic type getting using Activator.CreateInstance

* Rebase to main and resolved merge conflicts

* Xml comments added and code updated

* Deployment options update

* Deployoptions typo and comments updates a

* updated deployment options comments

* removed unnecessary using statement

* code refactor

* Revert "Revert "Adding new Dac Deployment Options and getting descriptions from DacFx API (#1357)" (#1493)"

This reverts commit 2b48331115.

* removing duplicated default empty string value
2022-05-23 16:19:15 -05:00
Charles Gagnon
7787a6af7b Fix Backup/Restore parameters defaulting to wrong DeviceType (#1490) 2022-05-12 13:34:49 -07:00
Udeesha Gautam
2b48331115 Revert "Adding new Dac Deployment Options and getting descriptions from DacFx API (#1357)" (#1493)
This reverts commit a3a66137b8.
2022-05-12 13:30:04 -07:00
Charles Gagnon
3af029315b Fix bindings tests (#1488) 2022-05-10 11:09:45 -07:00
Sai Avishkar Sreerama
a3a66137b8 Adding new Dac Deployment Options and getting descriptions from DacFx API (#1357)
* Adding missing Deploy options

* SQL DB Project database genScript/Publish working but tests

* Test cases fixed for the changes for DacFx and SC services

* Refactored the model name and tested the changes with ADS extensions.

* updated DeploymentOptionProperty model and corresponding updates.

* Adding DisplayNames to the deploymentOptionProperty to maintain names in STS for all extensions.

* MapTabe intialization in constructor

* Updated comment with more meaning

* Porperty strong type update with actual type

* Creating model with generic type getting using Activator.CreateInstance

* Rebase to main and resolved merge conflicts

* Xml comments added and code updated

* Deployment options update

* Deployoptions typo and comments updates a

* updated deployment options comments

* removed unnecessary using statement

* code refactor
2022-05-10 22:59:26 +05:30
Charles Gagnon
2540068998 Fix VerifyAllSqlObjects test (#1485)
* Fix VerifyAllSqlObjects test

* comment
2022-05-06 23:13:11 -07:00
Lewis Sanchez
224c5c742c Removes unnecessary using statement to fix build error (#1479)
* Removes unnecessary using statement to fix build error

* Stops continuing the release if build.cmd task fails

* Revert "Stops continuing the release if build.cmd task fails"

This reverts commit 64c055cdfa7a5275a9144192e0740d124a92ec9a.
2022-04-26 17:22:15 -07:00
Nemanja Milovančević
881c335cdf Backup/Restore Managed Instance (#1428)
* Enabled backup to and restore from URL

* Created RPC, but when process tries to load Microsoft.Azure.Storage.Blob.dll, it crashes

* Added create shared access token

* Code refactor

* Minor changes

* Changed RPC path

* Moved createSas RPC to the newly created BlobService, fixed PR comments

* Added sas expiration date parameter to the RPC

* Added copyright headers

* Removed ConnectionInstance property from BlobService

* Removed unhelpful comment

* Removed unused using statements

* Changed copy/paste comments

* Disposable objects fix

* Small formatting fix

* Changed backup to/restore from url supported device types

* Added backup to url integration test

* Created restore integration test. Test are now getting azure blob params from env variables instead of file.

* Culture invariant epiration date param, fixed comment, and typo

* Updated headers

* PR comments fix

* Changed supported device type logic

* string localization fix

* String formatting fix

* build failure fix

* Typo

* Updated supported restore device types
2022-04-20 14:01:13 -07:00
Aasim Khan
1ce3647565 Making star expansion test cross plat (#1455)
* Making star expansion cross plat

* Fixing test

* Fixing next  line
2022-04-08 15:20:07 -07:00
Alan Ren
3452c43a51 handle hierarchyid correctly (#1450) 2022-03-31 15:18:15 -07:00
Alan Ren
b495ea7475 handle UDT type (#1424) 2022-03-11 18:10:08 -08:00
Charles Gagnon
40c5d48c5e Fail build on unneeded usings (#1417) 2022-03-04 16:38:01 -08:00
Charles Gagnon
c248400a6c Add linting for copyright and unused usings (#1416)
* Add linting for copyright and unused usings

* Add one more + comment

* Enforce in build and fix errors

* Fix build
2022-03-04 15:17:29 -08:00
Vasu Bhog
8120858ad2 Modify Get Connection String Request to use connection details (#1394)
* connection string accepts connectionInfo

* get connection string from disconnected scenarios
2022-02-10 20:48:39 -08:00
Raymond Truong
1693843ab0 [Feature] SKU recommendations in SQL migration extension (#1399)
* Initial check in for SQL migration SKU recommendation feature (#1362)

Co-authored-by: Raymond Truong <ratruong@microsoft.com>

* Integration test for Get SKU Recommendation. (#1377)

* Integration test for Get SKU Recommendation.

* Addressing comments -
1) Moving sample files to data folder.
2) Changed Assert for Positive Justification. Ideally for MI we are expecting ~6 justifications but this might change so sticking with 'recommendation should have atleast one positive justification'.

* Implement start/stop perf data collection (#1369)

* Add SqlInstanceRequirements to SKU recommendation output (#1378)

* test for data collection start and stop (#1395)

* improve error handling, add RefreshPerfDataCollection  (#1393)

* WIP - refresh data collection

* Capture messages before logging

* Update Microsoft.SqlServer.Migration.Assessment NuGet version (#1402)

* Update NuGet version to 1.0.20220208.23, update assessment metadata

* Update SKU recommendation metadata

* Include preview SKUs

* Clear message/error queue after refreshing

* Clean up

* Add 'IsCollecting' to RefreshPerfDataCollection (#1405)

Co-authored-by: Neetu Singh <23.neetu@gmail.com>
2022-02-10 19:02:27 -08:00
Vasu Bhog
8e5a23f755 Optional application name parameter for connection string (#1380)
* optional application name parameter for connection string
2022-02-03 16:00:08 -08:00
Alan Ren
995e9baeab fix decimal datatype handling (#1352)
* Revert "Revert query execution changes (#1341)"

This reverts commit cb290cdbb5.

* fix decimal and money

* timestamp

* fix code and tests

* add sql variant test
2022-01-04 13:56:12 -08:00
Karl Burtram
cb290cdbb5 Revert query execution changes (#1341)
* Revert "handle sql variable type (#1333)"

This reverts commit 51c801eb33.

* Revert "handle large decimal (#1326)"

This reverts commit fd5b8af0c0.
2021-12-15 11:15:11 -08:00
Alan Ren
fd5b8af0c0 handle large decimal (#1326) 2021-12-02 09:45:45 -08:00
Benjin Dubishar
a74b55c6a8 Applying Changes to SQL Database Projects and Using Projects in Comparison (#1296)
* passing initial testing

* update local project from database

* update local project

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* Bump .net version

* PR feedback

* Adding temporary compat shim

* reverting some formatting changes; fixing strings

* PR feedback

Co-authored-by: Noureldine Yehia <t-nyehia@microsoft.com>
2021-11-12 12:51:35 -08:00
Lucy Zhang
aa902b78d8 Check if Azure Function method is async before adding output binding (#1297)
* check async before adding output binding

* nit
2021-11-11 15:48:44 -08:00
Lucy Zhang
8487703c21 Add generic reference if needed for Sql Input Binding (#1294)
* add generic reference if needed

* only check input binding for now
2021-11-11 10:54:42 -08:00
Benjin Dubishar
8234dcf215 Revert "Applying Changes to SQL Database Projects and Using Projects in Comparison (#1282)" (#1284)
This reverts commit 6acda6e1e6.

committedcda6e1e6ed5ff4fddb65b954951ff987fa01c06acda6e1e6ed5ff4fddb65b954951ff987fa01c0:
2021-11-05 17:25:09 -07:00
Benjin Dubishar
6acda6e1e6 Applying Changes to SQL Database Projects and Using Projects in Comparison (#1282)
* passing initial testing

* update local project from database

* update local project

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* update project from database

* Bump .net version

* PR feedback

Co-authored-by: Noureldine Yehia <t-nyehia@microsoft.com>
2021-11-04 18:36:59 -07:00
Aasim Khan
e246bc5325 Adding star expression expansion (#1270) 2021-10-27 16:59:05 -07:00
Kim Santiago
0f0df25119 Add error for sql bindings when .net 5 (#1259)
* add error for sql bindings when .net 5

* add test

* cleanup linq stuff and move out common code
2021-10-07 16:13:53 -07:00
Kim Santiago
c20af4f777 Get Azure functions operation (#1228)
* add GetAzureFunctions

* add tests

* cleanup

* check for quotes

* address other comments

* add logging and let error result get sent

* rename file
2021-08-18 17:05:27 -07:00
Kim Santiago
b1653b25e4 Insert sql bindings into Azure Functions (#1224)
* getting table name from a script

* add InsertSqlInputBindingOperation

* cleanup

* move azure functions stuff out of dacfx service

* cleanup

* add tests

* add another test

* cleanup

* add comments and connection string setting

* addressing comments

* change name to use add instead of insert
2021-08-04 13:02:52 -07:00
Sai Avishkar Sreerama
37b2b26edf Filtering Schema Compare error from warnings (#1212)
* Filtering Schema Compare error from warnings

* SchemaCompare added comparison result error message validations to existing tests

* Extra semi-colon noticed and removed from the code

* Added new test case to validate warning message exclusions from SC result

* SC test asserions comment added

* Edge case scenario fixed and tests are 100% passed
2021-05-21 11:25:25 +05:30
Kim Santiago
e123c24210 fix failing schema compare options tests" (#1204) 2021-05-05 13:31:45 -07:00
Leila Lali
01d0f03262 Added service for model management for machine learning extension (#1138)
* Added service for model management for ml extension
2021-01-19 11:33:55 -08:00
Udeesha Gautam
86a4e3f514 Add build fix changes (#1143)
adding a missing namespace that was causing a build failure in test code
2020-12-31 12:23:01 -08:00
Benjin Dubishar
25c542319e Splitting out default DacFx options for Publish and Schema Compare (#1126)
* Splitting out schema comp and publish defaults

* Added test

* Correcting comments, changing scope

* Moving DeploymentOptions to DacFx folder due to dependency hierarchy between DacFx and SchemaCompare
2020-11-25 14:44:34 -08:00
Aleksei Guzev
11960fd904 Fix handling some SQL Assessment warnings (#1114)
* Some new SQL Assessment warnings may have Check property set to null. Handle the warnings with no exception.
* Make names of SQL Assessment test methods more informative.
2020-11-04 22:13:46 +03:00
Benjin Dubishar
65c4fc01aa Adding External Streaming Job I/O validation to DacFxService (#1106)
* checkpoint

* Not having cake, nor eating it

* Working

* Swapping external dll for nupkg

* Extracting statement out of full TSQL

* Improving error message

* Fixing filename capitalization

* Reverting csproj changes

* Adding updated sr.cs file

* VS lost tracking on strings file?

* PR feedback

* resx additions

* More updated string files

* Swapped nuget for dll

* Revert "Swapped nuget for dll"

This reverts commit 6013f3fadf58ebc7e3590a46811d9fd9fc3eaa4a.

* Bumped netcore version to pull in support for extern aliasing nugets
2020-11-02 12:03:14 -08:00
Karl Burtram
b9e1618260 Revert "Rollback migration changes" (#1099)
* Revert "Revert "Initial migration service changes for assessment support (#1093)" (#1098)"

This reverts commit e96c0064ad.

* Move SQL Tools Service last in Main project list
2020-10-16 16:29:22 -07:00
Charles Gagnon
e96c0064ad Revert "Initial migration service changes for assessment support (#1093)" (#1098)
This reverts commit 1a0388c8cb.
2020-10-16 13:35:59 -07:00
Karl Burtram
1a0388c8cb Initial migration service changes for assessment support (#1093)
* Migration service WIP 1

* Assessment DLLs

* WIP

* WIP 2

* Add migration nuget package

* WIP2

* Fix up assessment handler

* WIP

* Fix build scripts

* WIP

* Update Assessment references

* Fix metadata copy to work with publish
2020-10-13 11:02:29 -07:00
Aleksei Guzev
07700560a6 Fix script generated for SQL Assessment results (#1058)
* INSERT VALUES has the limit of 1000 rows. Replace with derived table.
* Remove NOT NULL restriction from the generated table.
* Fix line endings in SQL Assessment source files.
2020-08-28 20:17:54 +03:00
Justin M
61ada47820 Fixed integration tests in Microsoft.SqlTools.ServiceLayer.IntegrationTests by removing reference to Microsoft.Kusto.ServiceLayer/Microsoft.Kusto.ServiceLayer.csproj within the IntregrationTest project. (#1051) 2020-08-18 11:36:13 -07:00
Monica Gupta
148b6e398d Added new Kusto ServiceLayer (#1009)
* Copy smoModel some rename

* Copy entire service layer

* Building copy

* Fixing some references

* Launch profile

* Resolve namespace issues

* Compiling tests. Correct manifest.

* Fixing localization resources

* ReliableKustoClient

* Some trimming of extra code and Kusto code

* Kusto client creation in bindingContent

* Removing Smo and new Kusto classes

* More trimming

* Kusto schema hookup

* Solidying DataSource abstraction

* Solidifying further

* Latest refatoring

* More refactoring

* Building and launching Kusto service layer

* Working model which enumerates databases

* Refactoring to pass IDataSource to all tree nodes

* Removing some dependencies on the context

* Working with tables and schema

* Comment checkin

* Refactoring to give out select script

* Query created and sent back to ADS

* Fix query generation

* Fix listing of databases

* Tunneling the query through.

* Successful query execution

* Return only results table

* Deleting Cms

* Delete DacFx

* Delete SchemaCompare and TaskServices

* Change build definition to not stop at launch

* Fix error after merge

* Save Kusto results in different formats (#935)

* save results as csv etc

* some fixes

Co-authored-by: Monica Gupta <mogupt@microsoft.com>

* 2407 Added OrderBy clause in KustoDataSource > GetDatabaseMetaData and GetColumnMetadata (#959)

* 2405 Defaulted Options when setting ServerInfo in ConnectionService > GetConnectionCompleteParams (#965)

* 2747 Fixed IsUnknownType error for Kusto (#989)

* 2747 Removed unused directives in Kusto > DbColumnWrapper. Refactored IsUnknownType to handle null DataTypeName

* 2747 Reverted IsUnknownType change in DbColumnWrapper. Changed DataTypeName to get calue from ColumnType. Refactored SafeGetValue to type check before hard casting to reduce case exceptions.

* Added EmbeddedResourceUseDependentUponConvention to Microsoft.Kusto.ServiceLayer.csproj. Also renamed DACfx to match Microsoft.SqlTools.ServiceLayer. Added to compile Exclude="**/obj/**/*.cs"

* Srahman cleanup sql code (#992)

* Removed Management and Security Service Code.

* Remove FileBrowser service

* Comment why we are using SqlServer library

* Remove SQL specific type definitions

* clean up formatter service (#996)

Co-authored-by: Monica Gupta <mogupt@microsoft.com>

* Code clean up and Kusto intellisense (#994)

* Code clean up and Kusto intellisense

* Addressed few comments

* Addressed few comments

* addressed comments

Co-authored-by: Monica Gupta <mogupt@microsoft.com>

* Return multiple tables for Kusto

* Changes required for Kusto manage dashboard (#1039)

* Changes required for manage dashboard

* Addressed comments

Co-authored-by: Monica Gupta <mogupt@microsoft.com>

* 2728 Kusto function support (#1038)

* loc update (#914)

* loc update

* loc updates

* 2728 moved ColumnInfo and KustoResultsReader to separate files. Added Folder and Function to TreeNode.cs

* 2728 Added FunctionInfo. Added Folder to ColumnInfo. Removed partial class from KustoResultsReader. Set Function.IsAlwaysLeaf=true in TreeNode.cs. In KustoDataSource changed tableMetadata type to TableMetaData. Added folder and function dictionaries. Refactored GetSchema function. Renamed GenerateColumnMetadataKey to GenerateMetadataKey

* 2728 Added FunctionInfo. Added Folder to ColumnInfo. Removed partial class from KustoResultsReader. Set Function.IsAlwaysLeaf=true in TreeNode.cs. In KustoDataSource changed tableMetadata type to TableMetaData. Added folder and function dictionaries. Refactored GetSchema function. Renamed GenerateColumnMetadataKey to GenerateMetadataKey

* 2728 Created new SqlConnection within using block. Refactored KustoDataSource > columnmetadata to sort on get instead of insert.

* 2728 Added GetFunctionInfo function to KustoDataSource.

* 2728 Reverted change to Microsoft.Kusto.ServiceLayer.csproj from merge

* 2728 Reverted change to SqlTools.ServiceLayer\Localization\transXliff

* 2728 Reverted change to sr.de.xlf and sr.zh-hans.xlf

* 2728 Refactored KustoDataSource Function folders to support subfolders

* 2728 Refactored KustoDataSource to use urn for folders, functions, and tables instead of name.

* Merge remote-tracking branch 'origin/main' into feature-ADE

# Conflicts:
#	Packages.props

* 2728 Moved metadata files into Metadata subdirectory. Added GenerateAlterFunction to IDataSource and DataSourceBase.

* 2728 Added summary information to SafeAdd in SystemExtensions. Renamed local variable in SetTableMetadata

* 2728 Moved SafeAdd from SystemExtensions to KustoQueryUtils. Added check when getting database schema to return existing records before querying again. Added AddRange function to KustoQueryUtils. Created SetFolderMetadataForFunctions method.

* 2728 Added DatabaseKeyPrefix to only return tables to a database for the dashboard. Added logic to store all database tables within the tableMetadata dictionary for the dashboard.

* 2728 Created TableInfo and moved info objects into Models directory. Refactored KustoDataSource to lazy load columns for tables. Refactored logic to load tables using cslschema instead of schema.

* 2728 Renamed LoadColumnSchema to GetTableSchema to be consistent.

Co-authored-by: khoiph1 <khoiph@microsoft.com>

* Addressed comments

Co-authored-by: Shafiq Rahman <srahman@microsoft.com>
Co-authored-by: Monica Gupta <mogupt@microsoft.com>
Co-authored-by: Justin M <63619224+JustinMDotNet@users.noreply.github.com>
Co-authored-by: rkselfhost <rkselfhost@outlook.com>
Co-authored-by: khoiph1 <khoiph@microsoft.com>
2020-08-12 15:34:38 -07:00
Udeesha Gautam
616a79c83d GetConnectionString API fix to not change the cache only return the value (#1040)
* Get connection string call was changing the connection info (ref object) received from cache. Changing it to just get and make changes to only the returned string..

* Change to ensure PR validation works
2020-08-09 19:17:16 -07:00
David Shiflet
839acf67cd Convert most tools service tests to nunit (#1037)
* Remove xunit dependency from testdriver

* swap expected/actual as needed

* Convert Test.Common to nunit

* port hosting unit tests to nunit

* port batchparser integration tests to nunit

* port testdriver.tests to nunit

* fix target to copy dependency

* port servicelayer unittests to nunit

* more unit test fixes

* port integration tests to nunit

* fix test method type

* try using latest windows build for PRs

* reduce test memory use
2020-08-05 13:43:14 -04:00
Kim Santiago
788dc31081 Update DacFx deploy and generate script with options (#998)
* update deploy and generate script to accept deployment options

* add tests

* add test with option set to true
2020-07-29 13:43:38 -07:00
Kim Santiago
1a93404e54 Add support for getting DacFx deploy options from a publish profile (#995)
* add support for getting options from a publish profile

* update comments

* set values for default options if they aren't specified in the publish profile

* addressing comments
2020-07-27 17:52:15 -07:00
Udeesha Gautam
3049dacb84 Update DacFx and MDS to same version (#986)
* Updating DacFx and MDS nuget to match versions

* Fixing a test. It's unreleated to change.
2020-06-22 15:16:13 -07:00
Soheil Alizadeh
887a499d2b Update Infrastructure (#961)
* Update form .NET Core 2.2 to .NET Core 3.1

- Global variable for projects
- Change TFMs from netcoreapp2.2 to netcoreapp3.1
- Update global.json
- Update build.json
- Remove direct framework cake TestCore task
- Update travis dotnet version
- Update azure pipline file
- Update vscode launch.json

* Add Central Package Management

* Fix xUnit Breaking Change for MemberData type

* Fix xUnit breaking change for duplicate test method name

* Fix Rang/Index type conflict with System.Rang/Index

* Update vscode tasks.json

* Change serviceHostExecutable path in ServiceTestDriver.cs

* Downgrade SDK version (https://github.com/appveyor/ci/issues/3440)

- Appveyor hasn't installed latest SDK therefore I downgrade it until they install it.

* Dump Microsoft.SqlServer.DACFx
2020-06-12 11:44:18 -07:00
Benjin Dubishar
c51a59dadf Adding SqlCmdVars support for DacFx Deploy (#971)
* Adding SqlCmdVars support for DacFx Deploy

* Adding SqlCmdVars support for GenerateDeployScript

* Consolidating test logic
2020-06-10 16:00:59 -07:00
Aleksei Guzev
ca5cbf76e6 Fix TargetName for assessment items (#968) (#969)
* Remove the second appearance of server name in TargetName property
* Replace slash with colon as database name separator in TargetName to avoid ambiguity
Fixes #968
2020-06-08 13:26:25 -07:00