diff --git a/.github/workflows/php.yml b/.github/workflows/php.yml new file mode 100644 index 0000000..7b4c666 --- /dev/null +++ b/.github/workflows/php.yml @@ -0,0 +1,49 @@ +name: PHP + +on: ["push", "pull_request"] + +jobs: + build_and_test: + name: Build and test web3.php with ${{ matrix.php-version }} + strategy: + matrix: + php-version: ["7.3", "7.4"] + + runs-on: ubuntu-latest + + steps: + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php-version }} + + - name: PHP version + run: | + php --version + + - name: Install nodejs and ganache-cli + run: | + sudo apt-get update -y + sudo apt-get install -y nodejs + sudo npm install -g ganache-cli + + - uses: actions/checkout@v2 + + - name: Validate composer.json and composer.lock + run: composer validate + + - name: Cache Composer packages + id: composer-cache + uses: actions/cache@v2 + with: + path: vendor + key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }} + restore-keys: | + ${{ runner.os }}-php- + + - name: Install dependencies + if: steps.composer-cache.outputs.cache-hit != 'true' + run: composer install --prefer-dist --no-progress --no-suggest + + - name: Run test suite + run: sudo scripts/test.sh diff --git a/README.md b/README.md index 5aad994..b3b1ebd 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # web3.php +[![PHP](https://github.com/web3p/web3.php/actions/workflows/php.yml/badge.svg)](https://github.com/web3p/web3.php/actions/workflows/php.yml) [![Build Status](https://travis-ci.org/web3p/web3.php.svg?branch=master)](https://travis-ci.org/web3p/web3.php) [![codecov](https://codecov.io/gh/web3p/web3.php/branch/master/graph/badge.svg)](https://codecov.io/gh/web3p/web3.php) [![Join the chat at https://gitter.im/web3-php/web3.php](https://img.shields.io/badge/gitter-join%20chat-brightgreen.svg)](https://gitter.im/web3-php/web3.php)