[Messenger] Move PostgreSQL LISTEN/NOTIFY blocking to worker idle eve… #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Windows | |
| on: | |
| push: | |
| pull_request: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
| cancel-in-progress: true | |
| permissions: | |
| contents: read | |
| jobs: | |
| windows-minimal-exts: | |
| name: x86 / minimal-exts / lowest-php | |
| defaults: | |
| run: | |
| shell: pwsh | |
| runs-on: windows-2022 | |
| env: | |
| COMPOSER_NO_INTERACTION: '1' | |
| ANSICON: '121x90 (121x90)' | |
| SYMFONY_PHPUNIT_DISABLE_RESULT_CACHE: '1' | |
| steps: | |
| - name: Setup Git | |
| run: | | |
| git config --global core.autocrlf false | |
| git config --global user.email "" | |
| git config --global user.name "Symfony" | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 2 | |
| - name: Setup PHP | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| mkdir c:\php && cd c:\php | |
| iwr -outf php.zip https://github.com/symfony/binary-utils/releases/download/v0.1/php-8.4.0-Win32-vs17-x86.zip | |
| 7z x php.zip -y >nul | |
| Copy php.ini-development php.ini | |
| "memory_limit=-1" >> php.ini | |
| "serialize_precision=-1" >> php.ini | |
| "max_execution_time=1200" >> php.ini | |
| "post_max_size=2047M" >> php.ini | |
| "upload_max_filesize=2047M" >> php.ini | |
| "date.timezone=`"America/Los_Angeles`"" >> php.ini | |
| "extension_dir=ext" >> php.ini | |
| "extension=php_xsl.dll" >> php.ini | |
| "extension=php_mbstring.dll" >> php.ini | |
| "extension=php_openssl.dll" >> php.ini | |
| "extension=php_curl.dll" >> php.ini | |
| cd ${{ github.workspace }} | |
| iwr -outf composer.phar https://getcomposer.org/download/latest-stable/composer.phar | |
| - name: Install dependencies | |
| id: setup | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| mkdir $env:APPDATA\Composer && Copy .github\composer-config.json $env:APPDATA\Composer\config.json | |
| $env:SYMFONY_VERSION=(Select-String -CaseSensitive -Pattern " VERSION =" -SimpleMatch -Path src/Symfony/Component/HttpKernel/Kernel.php | Select Line | Select-String -Pattern "([0-9][0-9]*\.[0-9])").Matches.Value | |
| $env:COMPOSER_ROOT_VERSION=$env:SYMFONY_VERSION + ".x-dev" | |
| php .github/build-packages.php HEAD^ $env:SYMFONY_VERSION src\Symfony\Bridge\PhpUnit | |
| php composer.phar update --no-progress --ansi | |
| - name: Install PHPUnit | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| php phpunit install | |
| # curl makes composer fast, but we want to disable it for this job | |
| (Get-Content -Raw c:\php\php.ini) -replace 'extension=php_curl\.dll', ';extension=php_curl.dll' | Set-Content c:\php\php.ini | |
| - name: Run tests | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| $x = 0 | |
| $workingDir = $PWD.Path | |
| Remove-Item -Path src\Symfony\Bridge\PhpUnit -Recurse | |
| mv src\Symfony\Component\HttpClient\phpunit.xml.dist src\Symfony\Component\HttpClient\phpunit.xml | |
| # HttpClient tests need to run separately, they timeout otherwise | |
| $hcJob = Start-Job -ScriptBlock { | |
| Set-Location $using:workingDir | |
| & php phpunit src\Symfony\Component\HttpClient 2>&1 | Out-File -FilePath "hc.log" -Encoding utf8 | |
| return $LASTEXITCODE | |
| } | |
| sleep 10 | |
| & php phpunit src\Symfony --exclude-group tty --exclude-group benchmark --exclude-group intl-data --exclude-group network --exclude-group transient-on-windows | |
| if ($LASTEXITCODE -ne 0) { $x = 1 } | |
| Wait-Job $hcJob | Out-Null | |
| $hcExit = Receive-Job $hcJob | |
| Get-Content "hc.log" | |
| if ($hcExit -ne 0) { | |
| $x = 1 | |
| Write-Host "`e[41mKO`e[0m src\Symfony/Component/HttpClient`n" | |
| } else { | |
| Write-Host "`e[32mOK`e[0m src\Symfony/Component/HttpClient`n" | |
| } | |
| exit $x | |
| windows-all-extensions: | |
| name: x86 / all extensions / lowest-php | |
| defaults: | |
| run: | |
| shell: pwsh | |
| runs-on: windows-2022 | |
| env: | |
| COMPOSER_NO_INTERACTION: '1' | |
| ANSICON: '121x90 (121x90)' | |
| SYMFONY_PHPUNIT_DISABLE_RESULT_CACHE: '1' | |
| steps: | |
| - name: Setup Git | |
| run: | | |
| git config --global core.autocrlf false | |
| git config --global user.email "" | |
| git config --global user.name "Symfony" | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 2 | |
| - name: Setup PHP | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| mkdir c:\php && cd c:\php | |
| iwr -outf php.zip https://github.com/symfony/binary-utils/releases/download/v0.1/php-8.4.0-Win32-vs17-x86.zip | |
| 7z x php.zip -y >nul | |
| cd ext | |
| iwr -outf php_apcu.zip https://github.com/symfony/binary-utils/releases/download/v0.1/php_apcu-5.1.24-8.4-ts-vs17-x86.zip | |
| 7z x php_apcu.zip -y >nul | |
| iwr -outf php_igbinary.zip https://github.com/symfony/binary-utils/releases/download/v0.1/php_igbinary-3.2.16-8.4-ts-vs17-x86.zip | |
| 7z x php_igbinary.zip -y >nul | |
| iwr -outf php_redis.zip https://github.com/symfony/binary-utils/releases/download/v0.1/php_redis-6.2.0-8.4-ts-vs17-x86.zip | |
| 7z x php_redis.zip -y >nul | |
| cd .. | |
| Copy php.ini-development php.ini | |
| "memory_limit=-1" >> php.ini | |
| "serialize_precision=-1" >> php.ini | |
| "max_execution_time=1200" >> php.ini | |
| "post_max_size=2047M" >> php.ini | |
| "upload_max_filesize=2047M" >> php.ini | |
| "date.timezone=`"America/Los_Angeles`"" >> php.ini | |
| "extension_dir=ext" >> php.ini | |
| "extension=php_xsl.dll" >> php.ini | |
| "extension=php_mbstring.dll" >> php.ini | |
| "zend_extension=php_opcache.dll" >> php.ini | |
| "opcache.enable_cli=1" >> php.ini | |
| "extension=php_openssl.dll" >> php.ini | |
| "extension=php_apcu.dll" >> php.ini | |
| "extension=php_igbinary.dll" >> php.ini | |
| "extension=php_redis.dll" >> php.ini | |
| "apc.enable_cli=1" >> php.ini | |
| "extension=php_intl.dll" >> php.ini | |
| "extension=php_fileinfo.dll" >> php.ini | |
| "extension=php_pdo_sqlite.dll" >> php.ini | |
| "extension=php_curl.dll" >> php.ini | |
| "extension=php_sodium.dll" >> php.ini | |
| cd ${{ github.workspace }} | |
| iwr -outf composer.phar https://getcomposer.org/download/latest-stable/composer.phar | |
| - name: Install dependencies | |
| id: setup | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| mkdir $env:APPDATA\Composer && Copy .github\composer-config.json $env:APPDATA\Composer\config.json | |
| $env:SYMFONY_VERSION=(Select-String -CaseSensitive -Pattern " VERSION =" -SimpleMatch -Path src/Symfony/Component/HttpKernel/Kernel.php | Select Line | Select-String -Pattern "([0-9][0-9]*\.[0-9])").Matches.Value | |
| $env:COMPOSER_ROOT_VERSION=$env:SYMFONY_VERSION + ".x-dev" | |
| php .github/build-packages.php HEAD^ $env:SYMFONY_VERSION src\Symfony\Bridge\PhpUnit | |
| php composer.phar update --no-progress --ansi | |
| - name: Install PHPUnit | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| php phpunit install | |
| - name: Install memurai-developer, ffmpeg | |
| run: | | |
| choco install --no-progress memurai-developer ffmpeg | |
| - name: Run tests | |
| run: | | |
| $env:Path = 'c:\php;' + $env:Path | |
| php phpunit src\Symfony --exclude-group tty --exclude-group benchmark --exclude-group intl-data --exclude-group transient-on-windows --requires-php-extension apcu --requires-php-extension curl --requires-php-extension fileinfo --requires-php-extension igbinary --requires-php-extension intl --requires-php-extension openssl --requires-php-extension pdo_sqlite --requires-php-extension redis --requires-php-extension sodium |