-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
60 lines (53 loc) · 3.97 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
sudo: required
env:
global:
secure: "C5Zn1W5g8ktkMpiLeENrmN0hy0Wma+lX2LJdqrQPT3xC8Dscrb/Cu7/wZ1/5b74F25OPsSt3oD4e61NfVOQOoiCphc9cKkZDIKma1EoCunl3595lYZ+xPO+Ttc9zDTrTxF3A7JXX0MN6J3bNGa5E9elhqoiQIy5eps5RVJ32ZDdwtmdeV1rVRk28XFdWKYXeVRGy+x5UwYl+5rI3uww0rJH+7w0664ufMEa87+i3q5hXUL7WjvY3knufhDJTB2ohnYPRBux5nFMESr/vCBhOZ9B0gq7Rmtw2lMFrLQNV1LrJashLL/K0J7dHCTd/bqa/I/zeJvZOvsPqHM6STDL67dgSPD+vi0o9rAyd3ZNOHoApAuljhWXThciVyqfklthJ7dqyxmh5Vh47T7Ss2ZaMY8t1GtbHjg7I1UvxDWYiK785qBYWuE+nA9lmE0Da/85lVMIfCN/fKGSDN13vc3hwXXMJHP3AqTNtO2K8+3VTPu+vCa/kGw4SCCljN4yWMuN1hQxMGYtmBfoaFY9fUKj0mWY2bHnFLl1gKlBXKfiYzxDxFqusWaVutOkqWtA9CbbNyWO1hztxjimJRNCSaegzkATMIj2SpSdOGTSUH14eD5PrH19jRScI6hrAFQLZX1SXD8ahvPgddFrRVJMXgR6ttLZukJ0XsXowEXWFtKADIsU="
services:
- docker
branches:
only:
- master
- /^\d+\.\d+\.\d+(-.+)?$/
before_install:
- sudo service mysql stop
- docker run --name mysql -e MYSQL_ROOT_PASSWORD=Password12! -p 3306:3306 -d mysql:5.7
- sudo apt-get update && sudo apt-get install libunwind8
- cp test/EFCore.MySql.FunctionalTests/config.json.example test/EFCore.MySql.FunctionalTests/config.json
- cp test/EFCore.MySql.IntegrationTests/appsettings.ci.json test/EFCore.MySql.IntegrationTests/appsettings.json
- cp test/EFCore.MySql.IntegrationTests/config.json.example test/EFCore.MySql.IntegrationTests/config.json
- ./run.sh install-tools
- ./dotnet-run.sh ./test/EFCore.MySql.IntegrationTests/scripts/rebuild.sh
script:
# Travis CI hangs and stops when running full test suite, see #581
# Run with SkipTests=true until a solution is found for a more powerful server
- |
export BUILD_NUMBER=$(TZ=":US/Eastern" date '+%Y%m%d%H%M%S')
export IS_FINAL_BUILD=false
if [ ! -z "$TRAVIS_TAG" ]; then
export IS_FINAL_BUILD=true
fi
./build.sh "/p:SkipTests=true" "/p:BuildNumber=${BUILD_NUMBER}" "/p:IsFinalBuild=${IS_FINAL_BUILD}"
- echo "Tests" && ./dotnet-run.sh dotnet test test/EFCore.MySql.Tests
- echo "Functional Migration Tests" && ./dotnet-run.sh dotnet test -c Release test/EFCore.MySql.FunctionalTests --filter "FullyQualifiedName~Pomelo.EntityFrameworkCore.MySql.FunctionalTests.MigrationSqlGeneratorMySqlTest|FullyQualifiedName~Pomelo.EntityFrameworkCore.MySql.FunctionalTests.MigrationSqlGeneratorMySql55Test"
- echo "Integration Tests applying migrations" && ./dotnet-run.sh dotnet run --project test/EFCore.MySql.IntegrationTests -c Release testMigrate
- echo "Integration Tests scaffolding" && ./dotnet-run.sh ./test/EFCore.MySql.IntegrationTests/scripts/scaffold.sh
- echo "Remove scaffolding files" && rm -rf ./test/EFCore.MySql.IntegrationTests/Scaffold
- echo "Integration Tests with EF_BATCH_SIZE=1" && ./dotnet-run.sh dotnet test -c Release test/EFCore.MySql.IntegrationTests
- echo "Integration Tests with EF_BATCH_SIZE=10" && export EF_BATCH_SIZE="10" && ./dotnet-run.sh dotnet test -c Release test/EFCore.MySql.IntegrationTests
- echo "Integration Tests with EF_RETRY_ON_FAILURE=3" && export EF_RETRY_ON_FAILURE="3" && ./dotnet-run.sh dotnet test -c Release test/EFCore.MySql.IntegrationTests
- echo "Integration Tests legacy migrations" && ./dotnet-run.sh ./test/EFCore.MySql.IntegrationTests/scripts/legacy.sh
- echo "Integration Tests Building migrations with EF_DATABASE=pomelo_test2" && export EF_SCHEMA="pomelo_test2" && ./dotnet-run.sh ./test/EFCore.MySql.IntegrationTests/scripts/rebuild.sh
- echo "Integration Tests with EF_SCHEMA=pomelo_test2" && export EF_SCHEMA="pomelo_test2" && ./dotnet-run.sh dotnet test -c Release test/EFCore.MySql.IntegrationTests
deploy:
- provider: script
skip_cleanup: true
script: ./dotnet-run.sh dotnet nuget push "./artifacts/build/*.nupkg" --api-key "$MYGET_KEY" --source "https://www.myget.org/F/pomelo/api/v3/index.json"
on:
branch: master
- provider: script
skip_cleanup: true
script: ./dotnet-run.sh dotnet nuget push "./artifacts/build/*.nupkg" --api-key "$MYGET_KEY" --source "https://www.myget.org/F/pomelo/api/v3/index.json"
on:
tags: true
notifications:
email: false