You've already forked Php-Template
132 lines
3.6 KiB
YAML
132 lines
3.6 KiB
YAML
name: tests.yml
|
|
on:
|
|
push: {}
|
|
|
|
jobs:
|
|
|
|
LicenseCheck:
|
|
name: License Check
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Docker Hub Login
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: docker.io
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
|
|
- name: Install Composer Libraries
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer install --ignore-platform-reqs --no-interaction --prefer-dist --optimize-autoloader
|
|
|
|
- name: Run License Check
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer run tests:license
|
|
|
|
CodeLint:
|
|
name: Code Lint
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Docker Hub Login
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: docker.io
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
|
|
- name: Install Composer Libraries
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer install --ignore-platform-reqs --no-interaction --prefer-dist --optimize-autoloader
|
|
|
|
- name: Run Code Lint
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer run tests:lint
|
|
|
|
CodeSniffer:
|
|
name: Code Sniffer
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Docker Hub Login
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: docker.io
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
|
|
- name: Install Composer Libraries
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer install --ignore-platform-reqs --no-interaction --prefer-dist --optimize-autoloader
|
|
|
|
- name: Run Code Sniffer
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer run tests:sniff
|
|
|
|
UnitTests:
|
|
name: Unit Tests
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Docker Hub Login
|
|
uses: docker/login-action@v3
|
|
with:
|
|
registry: docker.io
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
|
|
- name: Install Composer Libraries
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer install --ignore-platform-reqs --no-interaction --prefer-dist --optimize-autoloader
|
|
|
|
- name: Run Unit Tests
|
|
run: |
|
|
docker run --rm \
|
|
-v ${{ github.workspace }}:/app \
|
|
-w /app \
|
|
siteworxpro/composer \
|
|
composer run tests:unit:coverage
|
|
|
|
- name: Upload Unit Test Coverage
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
path: tests/reports/junit.xml
|
|
name: unit-test-coverage
|