|
7 | 7 | strategy:
|
8 | 8 | fail-fast: false
|
9 | 9 | matrix:
|
| 10 | + DB: [SQLite] |
| 11 | + OS: [ubuntu-latest, windows-latest, macos-13] |
10 | 12 | include:
|
11 | 13 | - DB: SqlServer2008
|
12 | 14 | CONNECTION_STRING: "Server=localhost;initial catalog=nhibernate;User Id=sa;Password=P@ssw0rd;packet size=4096;"
|
| 15 | + OS: ubuntu-latest |
13 | 16 | DB_INIT: |
|
14 | 17 | docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=P@ssw0rd" -e "MSSQL_PID=Express" -p 1433:1433 -d --name sqlexpress mcr.microsoft.com/mssql/server:2019-latest;
|
15 | 18 | - DB: SqlServer2008-MicrosoftDataSqlClientDriver
|
16 | 19 | CONNECTION_STRING: "Server=localhost;initial catalog=nhibernate;User Id=sa;Password=P@ssw0rd;packet size=4096;"
|
| 20 | + OS: ubuntu-latest |
17 | 21 | DB_INIT: |
|
18 | 22 | docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=P@ssw0rd" -e "MSSQL_PID=Express" -p 1433:1433 -d --name sqlexpress mcr.microsoft.com/mssql/server:2019-latest;
|
19 | 23 | - DB: PostgreSQL
|
20 | 24 | CONNECTION_STRING: "Host=localhost;Username=nhibernate;Password=nhibernate;Database=nhibernate;Enlist=true;"
|
| 25 | + OS: ubuntu-latest |
21 | 26 | DB_INIT: |
|
22 | 27 | docker run -d -e POSTGRES_USER=nhibernate -e POSTGRES_PASSWORD=nhibernate -e POSTGRES_DB=nhibernate -p 5432:5432 postgres:13
|
23 | 28 | - DB: Firebird
|
24 | 29 | CONNECTION_STRING: "DataSource=localhost;Database=nhibernate;User=SYSDBA;Password=nhibernate;charset=utf8;"
|
| 30 | + OS: ubuntu-latest |
25 | 31 | DB_INIT: |
|
26 | 32 | docker run --name firebird -e EnableWireCrypt=true -e FIREBIRD_USER=nhibernate -e FIREBIRD_PASSWORD=nhibernate -e ISC_PASSWORD=nhibernate -e FIREBIRD_DATABASE=nhibernate -p 3050:3050 -d jacobalberty/firebird:v3.0
|
27 | 33 | - DB: Firebird4
|
28 | 34 | CONNECTION_STRING: "DataSource=localhost;Database=nhibernate;User=SYSDBA;Password=nhibernate;charset=utf8;"
|
| 35 | + OS: ubuntu-latest |
29 | 36 | DB_INIT: |
|
30 | 37 | docker run --name firebird -e EnableWireCrypt=true -e FIREBIRD_USER=nhibernate -e FIREBIRD_PASSWORD=nhibernate -e ISC_PASSWORD=nhibernate -e FIREBIRD_DATABASE=nhibernate -p 3050:3050 -d jacobalberty/firebird:v4.0
|
31 | 38 | - DB: MySQL
|
32 | 39 | CONNECTION_STRING: "Server=localhost;Uid=root;Password=nhibernate;Database=nhibernate;Old Guids=True;SslMode=none;"
|
| 40 | + OS: ubuntu-latest |
33 | 41 | DB_INIT: |
|
34 | 42 | sudo service mysql stop
|
35 | 43 | docker run --name mysql -e MYSQL_ROOT_PASSWORD=nhibernate -e MYSQL_USER=nhibernate -e MYSQL_PASSWORD=nhibernate -e MYSQL_DATABASE=nhibernate -p 3306:3306 --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3 -d mysql:5.7 mysqld --lower_case_table_names=1 --character-set-server=utf8 --collation-server=utf8_general_ci
|
36 | 44 | - DB: Oracle
|
37 | 45 | CONNECTION_STRING: "User ID=nhibernate;Password=nhibernate;Metadata Pooling=false;Self Tuning=false;Data Source=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XEPDB1)))"
|
| 46 | + OS: ubuntu-latest |
38 | 47 | DB_INIT: |
|
39 | 48 | docker run -d -p 1521:1521 -e APP_USER=nhibernate -e APP_USER_PASSWORD=nhibernate -e ORACLE_PASSWORD=nhibernate gvenzl/oracle-xe:21-slim
|
40 |
| - - DB: SQLite |
41 |
| - runs-on: ubuntu-latest |
| 49 | + runs-on: ${{matrix.OS}} |
42 | 50 | continue-on-error: ${{matrix.ALLOW_FAILURE == true}}
|
43 | 51 | env:
|
44 | 52 | LANG: en-US.UTF-8 #default POSIX locale doesn't support ignore case comparisons
|
45 |
| - name: ${{matrix.DB}} |
| 53 | + name: ${{matrix.DB}} - ${{matrix.OS}} |
46 | 54 |
|
47 | 55 | steps:
|
48 | 56 | - name: Set up ${{matrix.DB}}
|
|
0 commit comments