@@ -28,44 +28,56 @@ concurrency:
2828
2929jobs :
3030 tests :
31- name : PHP ${{ matrix.php }}-mssql-${{ matrix.mssql }}
31+ name : PHP ${{ matrix.php }}-mssql-${{ matrix.mssql.server }}
3232
3333 env :
34- extensions : pdo, pdo_sqlsrv-5.10.1
34+ extensions : pdo, pdo_sqlsrv-5.12
3535
36- runs-on : ${{ matrix.os }}
36+ runs-on : ' ubuntu-latest '
3737
3838 strategy :
39+ max-parallel : 2
3940 matrix :
40- os :
41- - ubuntu-latest
42-
4341 php :
44- - 8.0
4542 - 8.1
4643 - 8.2
44+ - 8.3
45+ - 8.4
4746
4847 mssql :
49- - server:2019-latest
50- - server:2022-latest
48+ - server : 2022-latest
49+ odbc-version : 18
50+ flag : " -C"
51+
52+ include :
53+ - php : 8.4
54+ mssql :
55+ server : 2019-latest
56+ odbc-version : 18
57+ flag : " -C"
5158
5259 services :
5360 mssql :
54- image : mcr.microsoft.com/mssql/${{ matrix.mssql }}
61+ image : mcr.microsoft.com/mssql/server: ${{ matrix.mssql.server }}
5562 env :
56- SA_PASSWORD : YourStrong!Passw0rd
63+ MSSQL_SA_PASSWORD : YourStrong!Passw0rd
5764 ACCEPT_EULA : Y
5865 MSSQL_PID : Developer
5966 ports :
6067 - 1433:1433
61- options : --name=mssql --health-cmd="/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'SELECT 1'" --health-interval=10s --health-timeout=5s --health-retries=3
68+ options : --name=mssql --health-cmd="/opt/mssql-tools${{ matrix.mssql.odbc-version }} /bin/sqlcmd ${{ matrix.mssql.flag }} -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'SELECT 1'" --health-interval=10s --health-timeout=5s --health-retries=3
6269
6370 steps :
6471 - name : Checkout.
65- uses : actions/checkout@v3
72+ uses : actions/checkout@v5
73+
74+ - name : Install ODBC driver.
75+ run : |
76+ sudo curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
77+ sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18
6678
6779 - name : Create MS SQL Database.
68- run : docker exec -i mssql /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'CREATE DATABASE yiitest'
80+ run : docker exec -i mssql /opt/mssql-tools${{ matrix.mssql.odbc-version }} /bin/sqlcmd ${{ matrix.mssql.flag }} -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'CREATE DATABASE yiitest'
6981
7082 - name : Install PHP with extensions.
7183 uses : shivammathur/setup-php@v2
8698 run : vendor/bin/phpunit --testsuite=Mssql --coverage-clover=coverage.xml --colors=always
8799
88100 - name : Upload coverage to Codecov.
89- if : matrix.php == '8.1 '
101+ if : matrix.php == '8.4 '
90102 uses : codecov/codecov-action@v3
91103 with :
92104 token : ${{ secrets.CODECOV_TOKEN }}
0 commit comments