diff --git a/README.md b/README.md index d39fc121..9d8c64a7 100644 --- a/README.md +++ b/README.md @@ -107,6 +107,8 @@ with: extensions: xdebug-beta ``` +- Blackfire PHP extension is available for install. + - Extensions which cannot be installed gracefully leave an error message in the logs, the action is not interrupted. ## :wrench: Tools Support @@ -489,6 +491,7 @@ Examples for setting up this GitHub Action with different PHP Frameworks/Package |Yii2 Starter Kit with `MySQL`|`ubuntu`|[yii2-mysql.yml](./examples/yii2-mysql.yml "GitHub Action for Yii2 Starter Kit with MySQL")| |Yii2 Starter Kit with `PostgreSQL`|`ubuntu`|[yii2-postgres.yml](./examples/yii2-postgres.yml "GitHub Action for Yii2 Starter Kit with PostgreSQL")| |Zend Framework|`macOS`, `ubuntu` and `windows`|[zend-framework.yml](./examples/zend-framework.yml "GitHub Action for Zend Framework")| +|Blackfire|`macOS`, `ubuntu` and `windows`|[blackfire.yml](./examples/blackfire.yml "GitHub Action using blackfire")| ## :scroll: License diff --git a/examples/blackfire.yml b/examples/blackfire.yml new file mode 100644 index 00000000..af0ecac5 --- /dev/null +++ b/examples/blackfire.yml @@ -0,0 +1,32 @@ +# GitHub Action for blackfire +name: Profiling with blackfire +on: [push, pull_request] +jobs: + bedrock: + name: Blackfire (PHP ${{ matrix.php-versions }}) + runs-on: ${{ matrix.operating-system }} + services: + blackfire: + image: blackfire/blackfire + ports: + - 8707:8707 + env: + BLACKFIRE_SERVER_ID: "" + BLACKFIRE_SERVER_TOKEN: "" + strategy: + fail-fast: false + matrix: + operating-system: [ubuntu-latest, windows-latest, macos-latest] + php-versions: ['7.1', '7.2', '7.3', '7.4'] + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Setup PHP, with composer and extensions + uses: shivammathur/setup-php@v2 #https://github.com/shivammathur/setup-php + with: + php-version: ${{ matrix.php-versions }} + extensions: blackfire-1.30.0 + ini-values: blackfire.agent_socket=tcp://localhost:8707 + - name: Profile + # Note that blackfire agent is not installed. So an implementation with the sdk is required! + run: php your-blackfire-sdk-script.php