name: Main workflow
on: [push]
jobs:
  run:
    name: Run
    runs-on: ${{ matrix.operating-system }}
    strategy:
      max-parallel: 6
      matrix:
        operating-system: [ubuntu-latest, windows-latest, macOS-latest]
        php-versions: ['5.6', '7.0', '7.1', '7.2', '7.3']
    steps:
    - name: Checkout
      uses: actions/checkout@master

    - name: Set Node.js 10.x
      uses: actions/setup-node@master
      with:
        version: 10.x

    - name: Installing NPM
      run: npm install  

    - name: Installing PHP with extensions and custom config
      run: node lib/install.js
      env:
        php-version: ${{ matrix.php-versions }}
        extension-csv: "mbstring, xdebug, pcov" #optional
        ini-values-csv: "post_max_size=256M, short_open_tag=On, date.timezone=Asia/Kolkata" #optional

    - name: Testing PHP version
      run: php -v
    - name: Testing Composer version
      run: composer -V
    - name: Testing Extensions
      run: php -m
    - name: Testing ini values
      run: |
        php -r "echo \"post_max_size: \" . ini_get('post_max_size') . \"\n\";"
        php -r "echo \"short_open_tag: \" . ini_get('short_open_tag') . \"\n\";"
        php -r "echo \"date.timezone: \" . ini_get('date.timezone') . \"\n\";"
