146 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			146 lines
		
	
	
		
			4.0 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| name: CI
 | |
| 
 | |
| on:
 | |
|   push:
 | |
|     branches:
 | |
|       - '*'
 | |
|       - '!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 depedencies
 | |
|       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 depedencies
 | |
|       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-vc16:
 | |
|   #   runs-on: windows-latest
 | |
|   #   strategy:
 | |
|   #     matrix:
 | |
|   #       arch: [x64]
 | |
|   #   steps:
 | |
|   #   - uses: ilammy/msvc-dev-cmd@v1
 | |
|   #     with:
 | |
|   #       arch: ${{ matrix.arch }}
 | |
|   #       uwp: false
 | |
|   #       spectre: true
 | |
|   #   - name: Build ${{ env.PACKAGE_NAME }} + consumers
 | |
|   #     run: |
 | |
|   #       python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
 | |
|   #       python builder.pyz build -p ${{ env.PACKAGE_NAME }} --spec=downstream
 | |
| 
 | |
|   # windows-vc14:
 | |
|   #   runs-on: windows-latest
 | |
|   #   strategy:
 | |
|   #     matrix:
 | |
|   #       arch: [x86, x64]
 | |
|   #   steps:
 | |
|   #   - uses: ilammy/msvc-dev-cmd@v1
 | |
|   #     with:
 | |
|   #       toolset: 14.0
 | |
|   #       arch: ${{ matrix.arch }}
 | |
|   #       uwp: false
 | |
|   #       spectre: true
 | |
|   #   - name: Build ${{ env.PACKAGE_NAME }} + consumers
 | |
|   #     run: |
 | |
|   #       python -c "from urllib.request import urlretrieve; urlretrieve('${{ env.BUILDER_HOST }}/${{ env.BUILDER_SOURCE }}/${{ env.BUILDER_VERSION }}/builder.pyz?run=${{ env.RUN }}', 'builder.pyz')"
 | |
|   #       python builder.pyz build -p ${{ env.PACKAGE_NAME }} downstream
 | |
| 
 | |
|   macos:
 | |
|     runs-on: macos-${{ matrix.version }}
 | |
|     strategy:
 | |
|       matrix:
 | |
|         version: [10.15]
 | |
|     steps:
 | |
|       - 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
 | 
