@@ -2,93 +2,93 @@ version: 0.9.{build}
22
33pull_requests :
44 do_not_increment_build_number : false
5-
65max_jobs : 1
76
8- clone_folder : C:\sqlexpress\
9-
107environment :
11- access_token :
12- secure : XQvkhXxMw7yJPQF4xQe/OV5+u0Dhx0bsaXIHE2PNvPJr15qw+oA9SNlKYnGo6UNQ
8+ access_token :
9+ secure : ' E5I+i+CQyj9EHusDrPSQKHRXmzmpTujYAoFxlvJjvSRSEQHHzqTBIFR1VuPbwLMi '
1310
14- MSSQL_LOGIN : sa
15- MSSQL_PASS : Password12!
16- TSQLTSETCLR : tests\tSQLt\SetClrEnabled.sql
17- TSQLTCREATEDB : tests\tSQLt\CreateDatabase.sql
18- TSQLTINSTALL : tests\tSQLt\tSQLt.class.sql
19- TSQLTBUILDPATH : tests\build
20- TSQLTTESTPATH : tests\run
21- COMBINED_FILE : install_expsql.sql
22- TARGET_DB : tSQLt
11+ APPVEYOR_RDP_PASSWORD : Np^VNSzJI5#OmRdUNqro2T9UVkCdZ
12+ MSSQL_LOGIN : sa
13+ MSSQL_PASS : Password12!
14+ TSQLTSETCLR : tests\tSQLt\SetClrEnabled.sql
15+ TSQLTCREATEDB : tests\tSQLt\CreateDatabase.sql
16+ TSQLTINSTALL : tests\tSQLt\tSQLt.class.sql
17+ TSQLTBUILDPATH : tests\build
18+ TSQLTTESTPATH : tests\run
19+ TARGET_DB : tSQLt
20+ COV_REPORT : appveyor\sqlcover\Coverage.opencoverxml
21+
22+ matrix :
23+ - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2019
24+ MSSQL : SQL2019
25+ DB_INSTANCE : (local)\SQL2019
26+ LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_150
27+ LATEST : True
28+
29+ - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2017
30+ MSSQL : SQL2017
31+ DB_INSTANCE : (local)\SQL2017
32+ LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_140
33+
34+ - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2017
35+ MSSQL : SQL2016
36+ DB_INSTANCE : (local)\SQL2016
37+ LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_130
2338
24- matrix :
25- - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2019
26- MSSQL : SQL2019
27- DB_INSTANCE : (local)\SQL2019
28- LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_150
29-
30- - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2017
31- MSSQL : SQL2017
32- DB_INSTANCE : (local)\SQL2017
33- LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_140
34-
35- - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2017
36- MSSQL : SQL2016
37- DB_INSTANCE : (local)\SQL2016
38- LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_130
39-
40- - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2015
41- MSSQL : SQL2014
42- DB_INSTANCE : (local)\SQL2014
43- LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_120
44-
45- - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2015
46- MSSQL : SQL2012SP1
47- DB_INSTANCE : (local)\SQL2012SP1
48- LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_110
39+ - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2015
40+ MSSQL : SQL2014
41+ DB_INSTANCE : (local)\SQL2014
42+ LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_120
43+
44+ - APPVEYOR_BUILD_WORKER_IMAGE : Visual Studio 2015
45+ MSSQL : SQL2012SP1
46+ DB_INSTANCE : (local)\SQL2012SP1
47+ LINT_CONFIG : appveyor\tsqllint\.tsqllintrc_110
48+
49+ clone_script :
50+ - git config --global credential.helper store
51+ -
ps :
Add-Content "$HOME\.git-credentials" "https://$($env:access_token):[email protected] `n" -NoNewLine 52+ -
git config --global user.email "[email protected] " 53+ - git config --global user.name "Appveyor"
54+ - git config --global core.safecrlf false
55+ - git clone -q --single-branch --branch=%APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCH% https://github.com/LowlyDBA/ExpressSQL.git %APPVEYOR_BUILD_FOLDER%
56+ - cd %APPVEYOR_BUILD_FOLDER%
4957
5058install :
5159- ps : Install-Module SqlServer -Force -AllowClobber
5260- npm install
53-
54- - echo Starting SQL Server
55- - ps : >-
56- $SQLInstance = $env:MSSQL;
57- Start-Service "MSSQL`$$SQLInstance";
58-
59- - echo Setting up tSQLt
60- - cmd : >-
61- SET SCRIPT=%CLONE_FOLDER%%TSQLTSETCLR%
62-
63- sqlcmd -S %DB_INSTANCE% -U %MSSQL_LOGIN% -P %MSSQL_PASS% -i %SCRIPT% -d master -b > NUL
64-
65- SET SCRIPT=%CLONE_FOLDER%%TSQLTCREATEDB%
66-
67- sqlcmd -S %DB_INSTANCE% -U %MSSQL_LOGIN% -P %MSSQL_PASS% -i %SCRIPT% -d master -b > NUL
68-
69- SET SCRIPT=%CLONE_FOLDER%%TSQLTINSTALL%
70-
71- sqlcmd -S %DB_INSTANCE% -U %MSSQL_LOGIN% -P %MSSQL_PASS% -i %SCRIPT% -d %TARGET_DB% -b
61+ - ps : .\appveyor\start_sqlserver.ps1
62+ - ps : .\appveyor\install_tsqlt.ps1
7263
7364build_script :
74- - echo Installing ExpressSQL Scripts
75- - ps : >-
76- ForEach ($filename in Get-Childitem -Path $env:CLONE_FOLDER -Filter "*.sql") {
77- Invoke-SqlCmd –ServerInstance $env:DB_INSTANCE -Database $env:TARGET_DB -InputFile $filename.fullname -Username $env:MSSQL_LOGIN -Password $env:MSSQL_PASS
78- }
79-
80- - echo Building tSQLt Tests
81- - ps : >-
82- ForEach ($filename in Get-Childitem -Path $env:TSQLTBUILDPATH -Filter "*.sql") {
83- Invoke-SqlCmd –ServerInstance $env:DB_INSTANCE -Database $env:TARGET_DB -InputFile $filename.fullname -Username $env:MSSQL_LOGIN -Password $env:MSSQL_PASS
84- }
65+ - ps : .\appveyor\make_combined_script.ps1
66+ - ps : .\appveyor\install_expsql.ps1
67+ - ps : .\appveyor\build_tsqlt_tests.ps1
68+ - echo Running TSQLLint tests
69+ - npx tsqllint -c %LINT_CONFIG% *.sql
8570
71+ # Non-covered test run
8672test_script :
87- - echo Running unit tests
88- - ps : >-
89- ForEach ($filename in Get-Childitem -Path $env:TSQLTTESTPATH -Filter "*.sql") {
90- Invoke-SqlCmd –ServerInstance $env:DB_INSTANCE -Database $env:TARGET_DB -InputFile $filename.fullname -Username $env:MSSQL_LOGIN -Password $env:MSSQL_PASS -Verbose | Out-Null
91- }
73+ - ps : .\appveyor\run_tsqlt_tests.ps1
9274
93- - echo Running TSQLLint tests
94- - npx tsqllint -c %LINT_CONFIG% *.sql
75+ # Only run code cov & push changes on latest build env
76+ for :
77+ -
78+ matrix :
79+ only :
80+ - LATEST : True
81+
82+ # Setup codecov, SQL Cover
83+ before_test :
84+ - ps : Install-Package GOEddie.SQLCover -Force | Out-Null
85+ - ps : choco install codecov --no-progress --limit-output | Out-Null
86+
87+ # Run tests with SQL Cover analysis
88+ test_script :
89+ - ps : .\appveyor\sqlcover\Run_SQLCover.ps1
90+
91+ # Upload code coverage report, push generated files
92+ on_success :
93+ - codecov -f %COV_REPORT%
94+ - ps : .\appveyor\push_git_changes.ps1
0 commit comments