1name: Push 2on: 3 push: 4 paths-ignore: 5 - docs/* 6 - NEWS 7 - UPGRADING 8 - UPGRADING.INTERNALS 9 - README.md 10 - CONTRIBUTING.md 11 - CODING_STANDARDS.md 12 branches: 13 - PHP-7.4 14 - PHP-8.0 15 - PHP-8.1 16 - master 17 pull_request: 18 branches: 19 - '**' 20jobs: 21 LINUX_X64: 22 strategy: 23 fail-fast: false 24 matrix: 25 include: 26 - debug: true 27 zts: false 28 - debug: false 29 zts: true 30 name: "LINUX_X64_${{ matrix.debug && 'DEBUG' || 'RELEASE' }}_${{ matrix.zts && 'ZTS' || 'NTS' }}" 31 runs-on: ubuntu-20.04 32 steps: 33 - name: git checkout 34 uses: actions/checkout@v3 35 - name: Create MSSQL container 36 uses: ./.github/actions/setup-mssql 37 - name: Create Oracle container 38 uses: ./.github/actions/setup-oracle 39 - name: apt 40 uses: ./.github/actions/apt-x64 41 - name: ./configure 42 uses: ./.github/actions/configure-x64 43 with: 44 configurationParameters: >- 45 --${{ matrix.debug && 'enable' || 'disable' }}-debug 46 --${{ matrix.zts && 'enable' || 'disable' }}-zts 47 - name: make 48 run: make -j$(/usr/bin/nproc) >/dev/null 49 - name: make install 50 uses: ./.github/actions/install-linux 51 - name: Setup 52 uses: ./.github/actions/setup-x64 53 - name: Test 54 uses: ./.github/actions/test-linux 55 - name: Test Tracing JIT 56 uses: ./.github/actions/test-linux 57 with: 58 runTestsParameters: >- 59 -d zend_extension=opcache.so 60 -d opcache.enable_cli=1 61 -d opcache.jit_buffer_size=16M 62 - name: Verify generated files are up to date 63 uses: ./.github/actions/verify-generated-files 64 LINUX_X32: 65 name: LINUX_X32_DEBUG_ZTS 66 runs-on: ubuntu-latest 67 container: 68 image: ubuntu:20.04 69 env: 70 MYSQL_TEST_HOST: mysql 71 PDO_MYSQL_TEST_DSN: mysql:host=mysql;dbname=test 72 PDO_MYSQL_TEST_HOST: mysql 73 services: 74 mysql: 75 image: mysql:8 76 ports: 77 - 3306:3306 78 env: 79 MYSQL_DATABASE: test 80 MYSQL_ROOT_PASSWORD: root 81 steps: 82 - name: git checkout 83 uses: actions/checkout@v3 84 - name: apt 85 uses: ./.github/actions/apt-x32 86 - name: ./configure 87 uses: ./.github/actions/configure-x32 88 with: 89 configurationParameters: >- 90 --enable-debug 91 --enable-zts 92 - name: make 93 run: make -j$(/usr/bin/nproc) >/dev/null 94 - name: make install 95 uses: ./.github/actions/install-linux-x32 96 - name: Test 97 uses: ./.github/actions/test-linux 98 - name: Test Tracing JIT 99 uses: ./.github/actions/test-linux 100 with: 101 runTestsParameters: >- 102 -d zend_extension=opcache.so 103 -d opcache.enable_cli=1 104 -d opcache.jit_buffer_size=16M 105 MACOS_DEBUG_NTS: 106 runs-on: macos-11 107 steps: 108 - name: git checkout 109 uses: actions/checkout@v3 110 - name: brew 111 uses: ./.github/actions/brew 112 - name: ./configure 113 uses: ./.github/actions/configure-macos 114 with: 115 configurationParameters: --enable-debug --disable-zts 116 - name: make 117 run: |- 118 export PATH="/usr/local/opt/bison/bin:$PATH" 119 make -j$(sysctl -n hw.logicalcpu) >/dev/null 120 - name: make install 121 run: sudo make install 122 - name: Test 123 uses: ./.github/actions/test-macos 124 - name: Test Tracing JIT 125 uses: ./.github/actions/test-macos 126 with: 127 runTestsParameters: >- 128 -d zend_extension=opcache.so 129 -d opcache.enable_cli=1 130 -d opcache.protect_memory=1 131 -d opcache.jit_buffer_size=16M 132 - name: Verify generated files are up to date 133 uses: ./.github/actions/verify-generated-files 134