7373 # Service containers cannot be extracted to caller workflows yet
7474 services :
7575 mysql :
76- image : mysql: ${{ inputs.mysql-version || '8.0' }}
76+ image : ${{ inputs.db-platform == 'MySQLi' && format(' mysql:{0}', inputs.mysql -version || '8.0') || ' ' }}
7777 env :
7878 MYSQL_ALLOW_EMPTY_PASSWORD : yes
7979 MYSQL_DATABASE : test
8686 --health-retries=3
8787
8888 postgres :
89- image : postgres
89+ image : ${{ inputs.db-platform == 'Postgre' && ' postgres' || '' }}
9090 env :
9191 POSTGRES_USER : postgres
9292 POSTGRES_PASSWORD : postgres
@@ -100,7 +100,7 @@ jobs:
100100 --health-retries=3
101101
102102 mssql :
103- image : mcr.microsoft.com/mssql/server:2025-CU2 -ubuntu-24.04
103+ image : ${{ inputs.db-platform == 'SQLSRV' && ' mcr.microsoft.com/mssql/server:2025-CU3 -ubuntu-24.04' || '' }}
104104 env :
105105 MSSQL_SA_PASSWORD : 1Secure*Password1
106106 ACCEPT_EULA : Y
@@ -114,7 +114,7 @@ jobs:
114114 --health-retries=3
115115
116116 oracle :
117- image : gvenzl/oracle-free:latest
117+ image : ${{ inputs.db-platform == 'OCI8' && ' gvenzl/oracle-free:latest' || '' }}
118118 env :
119119 ORACLE_RANDOM_PASSWORD : true
120120 APP_USER : ORACLE
@@ -146,10 +146,9 @@ jobs:
146146 - name : Install mssql-tools on runner
147147 if : ${{ inputs.db-platform == 'SQLSRV' }}
148148 run : |
149- # Detect Ubuntu version used by the runner (fallback to 24.04)
150- DISTRO=$(lsb_release -rs 2>/dev/null || echo '24.04')
151- curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
152- curl -sSL https://packages.microsoft.com/config/ubuntu/${DISTRO}/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
149+ source /etc/os-release
150+ curl -sSL https://packages.microsoft.com/keys/microsoft.asc | sudo gpg --dearmor --batch --yes -o /usr/share/keyrings/microsoft-prod.gpg
151+ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/microsoft-prod.gpg] https://packages.microsoft.com/ubuntu/${VERSION_ID}/prod ${UBUNTU_CODENAME} main" | sudo tee /etc/apt/sources.list.d/mssql-release.list
153152 sudo apt-get update
154153 sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18 mssql-tools18 unixodbc-dev
155154
@@ -209,7 +208,7 @@ jobs:
209208 echo "ARTIFACT_NAME=${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}-db-${{ inputs.db-platform || 'none' }}${{ inputs.mysql-version || '' }}" >> $GITHUB_OUTPUT
210209
211210 - name : Cache dependencies
212- uses : actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
211+ uses : actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
213212 with :
214213 path : ${{ steps.setup-env.outputs.COMPOSER_CACHE_FILES_DIR }}
215214 key : ${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}-db-${{ inputs.db-platform || 'none' }}-${{ hashFiles('**/composer.*') }}
@@ -220,7 +219,7 @@ jobs:
220219
221220 - name : Cache PHPUnit's static analysis cache
222221 if : ${{ inputs.enable-artifact-upload }}
223- uses : actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7 # v5.0.4
222+ uses : actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
224223 with :
225224 path : build/.phpunit.cache/code-coverage
226225 key : phpunit-code-coverage-${{ hashFiles('**/phpunit.*') }}
@@ -250,7 +249,7 @@ jobs:
250249
251250 - name : Upload coverage results as artifact
252251 if : ${{ inputs.enable-artifact-upload }}
253- uses : actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7.0.0
252+ uses : actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
254253 with :
255254 name : ${{ steps.setup-env.outputs.ARTIFACT_NAME }}
256255 path : build/cov/coverage-${{ steps.setup-env.outputs.ARTIFACT_NAME }}.cov
0 commit comments