Skip to content

ci: skip Sonar Qube workflow if PR is opened from a non org member #493

ci: skip Sonar Qube workflow if PR is opened from a non org member

ci: skip Sonar Qube workflow if PR is opened from a non org member #493

Workflow file for this run

name: Test Plugin
on:
workflow_call:
pull_request:
paths-ignore:
- '**/*.md'
jobs:
test_plugin:
runs-on: ubuntu-22.04
strategy:
matrix:
php: [ '8.2', '7.4' ]
wordpress: [ '6.5', '6.4', '6.3', '6.2', '6.1' ]
exclude:
- php: 8.2
wordpress: 6.1
- php: 7.4
wordpress: 6.2
- php: 7.4
wordpress: 6.3
- php: 7.4
wordpress: 6.4
- php: 7.4
wordpress: 6.5
fail-fast: false
name: WordPress ${{ matrix.wordpress }}, PHP ${{ matrix.php }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Create Docker Containers
env:
PHP_VERSION: ${{ matrix.php }}
WP_VERSION: ${{ matrix.wordpress }}
working-directory: ./
run: |
docker compose build \
--build-arg WP_VERSION=${{ matrix.wordpress }} \
--build-arg PHP_VERSION=${{ matrix.php }}
docker compose up -d
- name: Wait for db
run: |
while ! mysqladmin ping --host=127.0.0.1 --port=33066 --password=$MYSQL_ROOT_PASSWORD --silent; do
sleep 1
done
- name: Setup testing framework
working-directory: ./
run: docker exec -e COVERAGE=1 $(docker compose ps -q wordpress) init-testing-environment.sh
- name: Install and activate WP GraphQL
working-directory: ./
run: docker exec --workdir=/var/www/html/wp-content/plugins/wp-graphql-content-blocks $(docker compose ps -q wordpress) wp plugin install wp-graphql --activate --allow-root
- name: Install Dependencies
working-directory: ./
run: docker exec -e COVERAGE=1 -w /var/www/html/wp-content/plugins/wp-graphql-content-blocks $(docker compose ps -q wordpress) composer install
- name: Run unit tests
working-directory: ./
run: docker exec -e COVERAGE=1 -w /var/www/html/wp-content/plugins/wp-graphql-content-blocks $(docker compose ps -q wordpress) composer test