Storage/Redis & RedisNG: Remove usage of str_replace to get metrics a… #542
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: Tests | |
| on: [ push, pull_request ] | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: true | |
| matrix: | |
| php: [ 8.1, 8.2, 8.3, 8.4 ] | |
| redis-version: [ 5, 6, 7 ] | |
| name: P${{ matrix.php }} - Redis ${{ matrix.redis-version }} | |
| # Service container with PostgreSQL | |
| services: | |
| postgres: | |
| image: postgres | |
| env: | |
| POSTGRES_PASSWORD: root | |
| POSTGRES_USER: root | |
| POSTGRES_DB: test | |
| options: >- | |
| --health-cmd pg_isready | |
| --health-interval 10s | |
| --health-timeout 5s | |
| --health-retries 5 | |
| ports: | |
| - 5432:5432 | |
| env: | |
| # The hostname used to communicate with the Redis service container | |
| REDIS_HOST: redis | |
| # The default Redis port | |
| REDIS_PORT: 6379 | |
| # MySQL | |
| DB_DATABASE: test | |
| DB_USER: root | |
| DB_PASSWORD: root | |
| steps: | |
| - name: Checkout code | |
| uses: actions/checkout@v4 | |
| - name: Cache dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.composer/cache/files | |
| key: dependencies-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} | |
| - name: Login to Docker Hub | |
| uses: docker/login-action@v3 | |
| with: | |
| username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| - name: Setup PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: ${{ matrix.php }} | |
| extensions: redis, apcu | |
| ini-values: apc.enable_cli='On',apc.shm_size = 256M | |
| coverage: none | |
| - name: Install dependencies | |
| run: composer update --prefer-dist --no-interaction --no-suggest | |
| - name: Start Redis | |
| uses: supercharge/[email protected] | |
| with: | |
| redis-version: ${{ matrix.redis-version }} | |
| - name: Execute tests (PDO with Sqlite) | |
| run: vendor/bin/phpunit | |
| - name: Start MySQL | |
| run: | | |
| sudo /etc/init.d/mysql start | |
| mysql -e "CREATE DATABASE IF NOT EXISTS $DB_DATABASE;" -u$DB_USER -p$DB_PASSWORD | |
| - name: Execute PDO tests with MySQL | |
| env: | |
| TEST_PDO_DSN: 'mysql:host=localhost;dbname=test' | |
| TEST_PDO_USERNAME: 'root' | |
| TEST_PDO_PASSWORD: 'root' | |
| run: vendor/bin/phpunit tests/Test/Prometheus/PDO | |
| - name: Execute PDO tests with PostgreSQL | |
| env: | |
| TEST_PDO_DSN: 'pgsql:host=localhost;dbname=test' | |
| TEST_PDO_USERNAME: 'root' | |
| TEST_PDO_PASSWORD: 'root' | |
| run: vendor/bin/phpunit tests/Test/Prometheus/PDO |