name: CI on: push: branches-ignore: - 'main' env: BUILDER_VERSION: v0.8.18 BUILDER_SOURCE: releases BUILDER_HOST: https://d19elf31gohf1l.cloudfront.net PACKAGE_NAME: aws-crt-php LINUX_BASE_IMAGE: ubuntu-16-x64 RUN: ${{ github.run_id }}-${{ github.run_number }} jobs: # php-5_5-linux-x64: # name: php-linux-x64 (5.5) # runs-on: ubuntu-latest # steps: # - name: Setup PHP with Xdebug # uses: shivammathur/setup-php@v2 # with: # coverage: xdebug # php-version: 5.5 # ini-values: xdebug.overload_var_dump=0, memory_limit=4G, phar.readonly=false # - name: Checkout # uses: actions/checkout@v2 # with: # submodules: recursive # - name: Install ancient PHPUnit # run: composer require --dev --ignore-platform-reqs phpunit/phpunit "4.8.36" # - name: Install dependencies # run: composer update --no-interaction # - name: Build for PHP 5.5 # env: # CC: clang # CXX: clang++ # run: | # phpize # ./configure # make # php-linux-x64: # runs-on: ubuntu-latest # strategy: # fail-fast: false # matrix: # version: # - "5.6" # - "7.0" # - "7.1" # - "7.2" # - "7.3" # - "7.4" # - "8.0" # steps: # - name: Setup PHP with Xdebug # uses: shivammathur/setup-php@v2 # with: # coverage: xdebug # php-version: ${{matrix.version}} # ini-values: xdebug.overload_var_dump=0, memory_limit=4G, phar.readonly=false # - name: Checkout # uses: actions/checkout@v2 # with: # submodules: recursive # - name: Install dependencies # run: composer update --no-interaction # - name: Run tests # env: # CC: clang # CXX: clang++ # run: | # phpize # ./configure # make # make test # # linux-arm: # name: ARM (${{ matrix.arch }}) # runs-on: ubuntu-latest # strategy: # matrix: # arch: [armv6, armv7, arm64] # steps: # - name: Build ${{ env.PACKAGE_NAME }} # run: | # python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder')" # chmod a+x builder # ./builder build -p ${{ env.PACKAGE_NAME }} --target=linux-${{ matrix.arch }} --spec=downstream windows-vs16: runs-on: windows-2019 strategy: matrix: arch: [x64] steps: # - name: Checkout Sources # uses: actions/checkout@v2 # with: # submodules: recursive - name: Setup PHP 8.0 uses: shivammathur/setup-php@v2 with: php-version: '8.0' - name: Build ${{ env.PACKAGE_NAME }} + consumers run: | where composer.phar composer composer.phar # macos: # runs-on: macos-${{ matrix.version }} # strategy: # matrix: # version: [10.15] # steps: # # Force PHP to 8.0 # # Doing this because tests fail in PHP 8.1 (default on macos Github Runner as of Dec 2021) # # due to the old version of PHPUnit we're using. # # We're using an old PHPUnit because it's compatible our min supported PHP 5.5. # # Quick fix is to force PHP version back to 8.0, which can still run our tests without error. # # A real solution is to get our tests working on all PHP versions # # (maybe don't use PHPUnit, maybe raise our min supported PHP version so we can upgrade, # # or maybe use PHPUnit-Polyfills so we can use a modern PHPUnit with old PHP) # - name: Setup PHP 8.0 # uses: shivammathur/setup-php@v2 # with: # php-version: '8.0' # - name: Build PHP 8 extension and test # run: | # python3 -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder')" # chmod a+x builder # ./builder build -p ${{ env.PACKAGE_NAME }} --spec=downstream