name: Main workflow on: push: paths: - '*' - '!*.md' jobs: run: name: Run runs-on: ${{ matrix.operating-system }} strategy: max-parallel: 8 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: Run tests and send coverage run: | npm test curl -s https://codecov.io/bash | bash -s -- -t ${{secrets.CODECOV_TOKEN}} -f coverage/clover.xml -n github-actions-codecov-${{ matrix.operating-system }}-php${{ matrix.php-versions }} - 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\";"