Some checks are pending
Module sub-split / Sub-split (push) Waiting to run
- Base: wintercms/winter branch 1.2 (full framework) - Theme vivespos: Canvas 7 + Bootstrap 5 CDN, custom CSS - Layout: deferred GTM/GA4 tracking, JSON-LD SoftwareApplication - Partials: hero (offline-first), features, modes (offline/nube toggle), screenshots, pricing (3 planes), comparison, FAQ, CTA - Plugin VivesPOS.Site with ContactForm - Dockerfile: PHP 8.2 Apache, port 80, healthcheck - Added winter/wn-pages, blog, sitemap, seo plugins - Active theme set to vivespos
176 lines
5.7 KiB
YAML
176 lines
5.7 KiB
YAML
name: Tests
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- '1.2'
|
|
- develop
|
|
pull_request:
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
frontendTests:
|
|
strategy:
|
|
max-parallel: 2
|
|
matrix:
|
|
operatingSystem: [ubuntu-latest, windows-latest]
|
|
fail-fast: false
|
|
runs-on: ${{ matrix.operatingSystem }}
|
|
name: ${{ matrix.operatingSystem }} / JavaScript
|
|
env:
|
|
nodeVersion: 16
|
|
phpVersion: '8.2'
|
|
extensions: curl, fileinfo, gd, mbstring, openssl, pdo, pdo_sqlite, sqlite3, xml, zip
|
|
key: winter-cms-cache-develop
|
|
steps:
|
|
- name: Checkout changes
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup extension cache
|
|
id: extcache
|
|
uses: shivammathur/cache-extensions@v1
|
|
with:
|
|
php-version: ${{ env.phpVersion }}
|
|
extensions: ${{ env.extensions }}
|
|
key: ${{ env.key }}
|
|
|
|
- name: Cache extensions
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ${{ steps.extcache.outputs.dir }}
|
|
key: ${{ steps.extcache.outputs.key }}
|
|
restore-keys: ${{ steps.extcache.outputs.key }}
|
|
|
|
- name: Install PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ env.phpVersion }}
|
|
extensions: ${{ env.extensions }}
|
|
|
|
- name: Install Node
|
|
uses: actions/setup-node@v3
|
|
with:
|
|
node-version: ${{ env.nodeVersion }}
|
|
|
|
- name: Switch library dependency (develop)
|
|
if: github.ref == 'refs/heads/develop' || github.base_ref == 'develop'
|
|
run: php ./.github/workflows/utilities/library-switcher "dev-develop as 1.2"
|
|
|
|
- name: Switch library dependency (1.2)
|
|
if: github.head_ref == '1.2' || github.ref == 'refs/heads/1.2' || github.base_ref == '1.2'
|
|
run: php ./.github/workflows/utilities/library-switcher "1.2.x-dev as 1.2"
|
|
|
|
- name: Setup dependency cache
|
|
id: composercache
|
|
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
|
|
|
|
- name: Cache dependencies
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ${{ steps.composercache.outputs.dir }}
|
|
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
|
|
restore-keys: ${{ runner.os }}-composer-
|
|
|
|
- name: Install Composer dependencies
|
|
run: composer install --no-interaction --no-progress --no-scripts
|
|
|
|
- name: Reset modules
|
|
run: |
|
|
git reset --hard
|
|
git clean -fd
|
|
|
|
- name: Run post-update Composer scripts
|
|
run: php artisan package:discover
|
|
|
|
- name: Run tests
|
|
run: |
|
|
php artisan mix:install
|
|
php artisan mix:run module-system test
|
|
|
|
phpUnitTests:
|
|
strategy:
|
|
max-parallel: 8
|
|
matrix:
|
|
operatingSystem: [ubuntu-latest, windows-latest]
|
|
phpVersion: ['8.1', '8.2', '8.3', '8.4', '8.5']
|
|
fail-fast: false
|
|
runs-on: ${{ matrix.operatingSystem }}
|
|
name: ${{ matrix.operatingSystem }} / PHP ${{ matrix.phpVersion }}
|
|
env:
|
|
extensions: curl, fileinfo, gd, mbstring, openssl, pdo, pdo_sqlite, sqlite3, xml, zip
|
|
key: winter-cms-cache-develop
|
|
steps:
|
|
- name: Checkout changes
|
|
uses: actions/checkout@v3
|
|
|
|
- name: Setup extension cache
|
|
id: extcache
|
|
uses: shivammathur/cache-extensions@v1
|
|
with:
|
|
php-version: ${{ matrix.phpVersion }}
|
|
extensions: ${{ env.extensions }}
|
|
key: ${{ env.key }}
|
|
|
|
- name: Cache extensions
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ${{ steps.extcache.outputs.dir }}
|
|
key: ${{ steps.extcache.outputs.key }}
|
|
restore-keys: ${{ steps.extcache.outputs.key }}
|
|
|
|
- name: Install PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ matrix.phpVersion }}
|
|
extensions: ${{ env.extensions }}
|
|
|
|
- name: Switch library dependency (develop)
|
|
if: github.ref == 'refs/heads/develop' || github.base_ref == 'develop'
|
|
run: php ./.github/workflows/utilities/library-switcher "dev-develop as 1.2"
|
|
|
|
- name: Switch library dependency (1.0)
|
|
if: github.head_ref == '1.0' || github.ref == 'refs/heads/1.0' || github.base_ref == '1.0'
|
|
run: php ./.github/workflows/utilities/library-switcher "1.0.x-dev as 1.0"
|
|
|
|
- name: Switch library dependency (1.1)
|
|
if: github.head_ref == '1.1' || github.ref == 'refs/heads/1.1' || github.base_ref == '1.1'
|
|
run: php ./.github/workflows/utilities/library-switcher "1.1.x-dev as 1.1"
|
|
|
|
- name: Switch library dependency (1.2)
|
|
if: github.head_ref == '1.2' || github.ref == 'refs/heads/1.2' || github.base_ref == '1.2'
|
|
run: php ./.github/workflows/utilities/library-switcher "1.2.x-dev as 1.2"
|
|
|
|
- name: Setup dependency cache
|
|
id: composercache
|
|
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
|
|
|
|
- name: Cache dependencies
|
|
uses: actions/cache@v3
|
|
with:
|
|
path: ${{ steps.composercache.outputs.dir }}
|
|
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
|
|
restore-keys: ${{ runner.os }}-composer-
|
|
|
|
- name: Install Composer dependencies
|
|
run: composer install --no-interaction --no-progress --no-scripts
|
|
|
|
- name: Reset modules
|
|
run: |
|
|
git reset --hard
|
|
git clean -fd
|
|
|
|
- name: Run post-update Composer scripts
|
|
run: php artisan package:discover
|
|
|
|
- name: Setup problem matchers for PHPUnit
|
|
if: matrix.phpVersion == '8.1'
|
|
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
|
|
|
|
- name: Run Linting and Tests
|
|
run: |
|
|
composer lint
|
|
php artisan winter:test -m system -m backend -m cms
|