mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-02-16 10:58:30 -05:00
Fixing integration tests for sts (#1453)
* Fixing test pipeline * pwd * fixing script * fixing cwd * switch to bash * Cleaning up script and yml * Fixing script comment * Fixing the comments * Adding issue in the comment * Adding automatic password generator * Removing unncesary use statement * Fixing key * Printing var * Printing settings * Printing var * Fixed var * Fixed * Reverting some changes * Changing fetch variable to upper case * Fixing password logic * Debug * debug2 * debug * Making passwords secret * Fixing string null check * removed dirs * fixing var name * Fixing var * Printing vars to see if the enviornment is setup correctly * Printing versionkey * removing prints * Adding 2019 Instance key and updating template * fixing env variable * Fixing comment
This commit is contained in:
@@ -1,56 +1,72 @@
|
||||
pool:
|
||||
name: SqlToolsTestAgentPool
|
||||
demands: VisualStudio_16.0
|
||||
name: ads-build-1es-hosted-pool
|
||||
demands:
|
||||
- ImageOverride -equals ADS-Linux_Image
|
||||
|
||||
steps:
|
||||
- task: DownloadSecureFile@1
|
||||
displayName: 'Download secure file'
|
||||
|
||||
- task: DockerInstaller@0
|
||||
displayName: Installing Docker
|
||||
inputs:
|
||||
secureFile: 'testsettings.json'
|
||||
dockerVersion: 17.09.0-ce
|
||||
releaseType: stable
|
||||
|
||||
- task: VisualStudioTestPlatformInstaller@1
|
||||
displayName: 'Visual Studio Test Platform Installer'
|
||||
inputs:
|
||||
versionSelector: latestStable
|
||||
- script: docker pull mcr.microsoft.com/mssql/server:2019-latest
|
||||
displayName: Pull MSSQL Docker Image
|
||||
|
||||
- bash: echo "##vso[task.setvariable variable=defaultSql2019_password;issecret=true]Test-$(Build.BuildNumber)-$(Get-Date -format yyyyMMdd-Hmmss)"
|
||||
displayName: Generate password for test server
|
||||
|
||||
- script: 'docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=$(defaultSql2019_password)"
|
||||
-e "MSSQL_AGENT_ENABLED=True"
|
||||
-p 1433:1433 --name sql1 -h sql1
|
||||
-d mcr.microsoft.com/mssql/server:2019-latest'
|
||||
displayName: Starting Server in Docker Container
|
||||
|
||||
- task: UseDotNet@2
|
||||
displayName: 'Use .NET Core sdk '
|
||||
displayName: Use .NET Core SDK
|
||||
inputs:
|
||||
useGlobalJson: true
|
||||
|
||||
- task: Bash@3
|
||||
displayName: Creating Loc Directories Expected By Dotnet Build
|
||||
inputs:
|
||||
filePath: ./azure-pipelines/createBuildDirectories.sh
|
||||
|
||||
- task: NuGetAuthenticate@0
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: 'dotnet build'
|
||||
displayName: Building Test Environment
|
||||
inputs:
|
||||
projects: '**/Microsoft.SqlTools.ServiceLayer.TestEnvConfig.csproj'
|
||||
|
||||
- task: DownloadSecureFile@1
|
||||
displayName: Download Test Environment Configuration
|
||||
name: testEnvironmentPath
|
||||
inputs:
|
||||
secureFile: 'SQLConnectionInstances.xml'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Setting Up Test Environment
|
||||
inputs:
|
||||
command: run
|
||||
projects: '**/Microsoft.SqlTools.ServiceLayer.TestEnvConfig.csproj'
|
||||
arguments: $(testEnvironmentPath.secureFilePath)
|
||||
testRunTitle: 'Setting tests'
|
||||
env:
|
||||
defaultSql2019_password: '$(defaultSql2019_password)'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: Building Integration Tests
|
||||
inputs:
|
||||
projects: '**/Microsoft.SqlTools.ServiceLayer.IntegrationTests.csproj'
|
||||
arguments: '/p:CodeCoverageBuild=true'
|
||||
|
||||
- task: CopyFiles@2
|
||||
displayName: 'Copy testsettings file to bin'
|
||||
inputs:
|
||||
SourceFolder: '$(Agent.TempDirectory)'
|
||||
Contents: '**\testsettings.json'
|
||||
TargetFolder: '$(Build.SourcesDirectory)\test\Microsoft.SqlTools.ServiceLayer.IntegrationTests\bin\Debug\net6.0'
|
||||
|
||||
- task: DotNetCoreCLI@2
|
||||
displayName: 'Run integration tests'
|
||||
displayName: Running Integration Tests
|
||||
inputs:
|
||||
command: test
|
||||
projects: '**/Microsoft.SqlTools.ServiceLayer.IntegrationTests.csproj'
|
||||
arguments: '--no-build'
|
||||
testRunTitle: 'SqlToolsService Integration Tests'
|
||||
enabled: false
|
||||
|
||||
- task: VSTest@2
|
||||
displayName: 'Run integration tests with code coverage'
|
||||
inputs:
|
||||
testAssemblyVer2: '**/bin/Debug/**/Microsoft.SqlTools.ServiceLayer.IntegrationTests.dll'
|
||||
vsTestVersion: toolsInstaller
|
||||
runSettingsFile: 'azure-pipelines/testrun.runsettings'
|
||||
codeCoverageEnabled: true
|
||||
testRunTitle: 'SqlToolsService Integration Tests'
|
||||
rerunFailedTests: true
|
||||
rerunFailedThreshold: 15
|
||||
rerunMaxAttempts: 1
|
||||
continueOnError: true
|
||||
|
||||
Reference in New Issue
Block a user