Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpmyadmin/phpmyadmin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaurício Meneghini Fauth <mauricio@fauth.dev>2021-10-08 18:26:35 +0300
committerMaurício Meneghini Fauth <mauricio@fauth.dev>2021-10-08 18:26:35 +0300
commit24bed51eba10cc6ba75e277d778058c252159f6a (patch)
tree890dc5d77cdc44086debc7b32f47da196da0699c /.github
parentd49c24346953fd742a8ab456f3be9f4ebf8f3b12 (diff)
Fix indentation of the .github/workflows files
Signed-off-by: Maurício Meneghini Fauth <mauricio@fauth.dev>
Diffstat (limited to '.github')
-rw-r--r--.github/workflows/lint-and-analyse-php.yml186
-rw-r--r--.github/workflows/lint-docs.yml22
-rw-r--r--.github/workflows/other-tools.yml126
-rw-r--r--.github/workflows/test-selenium.yml250
-rw-r--r--.github/workflows/tests.yml362
5 files changed, 473 insertions, 473 deletions
diff --git a/.github/workflows/lint-and-analyse-php.yml b/.github/workflows/lint-and-analyse-php.yml
index 1b0aa68ae1..39f4fa8fdb 100644
--- a/.github/workflows/lint-and-analyse-php.yml
+++ b/.github/workflows/lint-and-analyse-php.yml
@@ -9,104 +9,104 @@ on:
- QA_**
jobs:
- lint-node:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
- with:
- node-version: 12
- - name: Get yarn cache directory path
- id: yarn-cache-dir-path
- run: echo "::set-output name=dir::$(yarn cache dir)"
- - name: yarn cache
- uses: actions/cache@v2
- with:
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- restore-keys: |
- ${{ runner.os }}-yarn-
- - name: Install modules
- run: yarn install --non-interactive
- - name: Lint JS files
- run: yarn run js-lint --quiet
- - name: Lint CSS files
- run: yarn run css-lint
+ lint-node:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v1
+ with:
+ node-version: 12
+ - name: Get yarn cache directory path
+ id: yarn-cache-dir-path
+ run: echo "::set-output name=dir::$(yarn cache dir)"
+ - name: yarn cache
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-yarn-
+ - name: Install modules
+ run: yarn install --non-interactive
+ - name: Lint JS files
+ run: yarn run js-lint --quiet
+ - name: Lint CSS files
+ run: yarn run css-lint
- lint-php-files:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- strategy:
- matrix:
- php-version: ["7.2"]
- steps:
- - uses: actions/checkout@v2
- - name: Use PHP ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- - name: Validate composer.json and composer.lock
- run: composer validate
+ lint-php-files:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ strategy:
+ matrix:
+ php-version: ["7.2"]
+ steps:
+ - uses: actions/checkout@v2
+ - name: Use PHP ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ - name: Validate composer.json and composer.lock
+ run: composer validate
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Cache coding-standard
- uses: actions/cache@v2
- with:
- path: .phpcs-cache
- key: phpcs-cache
- - name: Install dependencies
- # Ignore zip for php-webdriver/webdriver
- run: composer install --ignore-platform-req=ext-zip
- - name: Lint PHP files
- run: ./test/ci-phplint
- - name: Check coding-standard
- run: composer phpcs
- - name: Check twig templates
- run: composer run twig-lint
+ - name: Cache coding-standard
+ uses: actions/cache@v2
+ with:
+ path: .phpcs-cache
+ key: phpcs-cache
+ - name: Install dependencies
+ # Ignore zip for php-webdriver/webdriver
+ run: composer install --ignore-platform-req=ext-zip
+ - name: Lint PHP files
+ run: ./test/ci-phplint
+ - name: Check coding-standard
+ run: composer phpcs
+ - name: Check twig templates
+ run: composer run twig-lint
- analyse-php:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- strategy:
- matrix:
- php-version: ["7.2"]
- steps:
- - uses: actions/checkout@v2
- - name: Use PHP ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- extensions: mbstring, iconv, mysqli, zip, gd, bz2
+ analyse-php:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ strategy:
+ matrix:
+ php-version: ["7.2"]
+ steps:
+ - uses: actions/checkout@v2
+ - name: Use PHP ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ extensions: mbstring, iconv, mysqli, zip, gd, bz2
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Install dependencies
- run: composer install
- - name: Analyse files with phpstan
- run: composer phpstan -- --memory-limit 2G
- - name: Analyse files with psalm
- run: composer psalm -- --shepherd
+ - name: Install dependencies
+ run: composer install
+ - name: Analyse files with phpstan
+ run: composer phpstan -- --memory-limit 2G
+ - name: Analyse files with psalm
+ run: composer psalm -- --shepherd
diff --git a/.github/workflows/lint-docs.yml b/.github/workflows/lint-docs.yml
index 36c706f435..15320e2e09 100644
--- a/.github/workflows/lint-docs.yml
+++ b/.github/workflows/lint-docs.yml
@@ -9,14 +9,14 @@ on:
- QA_**
jobs:
- lint-docs:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- steps:
- - uses: actions/checkout@v2
- - name: Lint phpdoc blocks
- uses: sudo-bot/action-doctum@v5
- with:
- config-file: test/doctum-config.php
- method: "parse"
- cli-args: "--output-format=github --no-ansi --no-progress -v --ignore-parse-errors"
+ lint-docs:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ steps:
+ - uses: actions/checkout@v2
+ - name: Lint phpdoc blocks
+ uses: sudo-bot/action-doctum@v5
+ with:
+ config-file: test/doctum-config.php
+ method: "parse"
+ cli-args: "--output-format=github --no-ansi --no-progress -v --ignore-parse-errors"
diff --git a/.github/workflows/other-tools.yml b/.github/workflows/other-tools.yml
index b5c0b6243d..1256440978 100644
--- a/.github/workflows/other-tools.yml
+++ b/.github/workflows/other-tools.yml
@@ -9,70 +9,70 @@ on:
- QA_**
jobs:
- build-documentation:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: '3.6'
- - name: Install Sphinx for the documentation build
- run: pip install 'Sphinx'
- - name: Build the documentation
- run: make -C doc html SPHINXOPTS='-n -W -a'
+ build-documentation:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.6'
+ - name: Install Sphinx for the documentation build
+ run: pip install 'Sphinx'
+ - name: Build the documentation
+ run: make -C doc html SPHINXOPTS='-n -W -a'
- build-release:
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- strategy:
- matrix:
- php-version: ["7.2"]
- steps:
- - uses: actions/checkout@v2
- - name: Use PHP ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- extensions: mbstring, iconv, mysqli, zip, gd
- tools: composer:v2
+ build-release:
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ strategy:
+ matrix:
+ php-version: ["7.2"]
+ steps:
+ - uses: actions/checkout@v2
+ - name: Use PHP ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ extensions: mbstring, iconv, mysqli, zip, gd
+ tools: composer:v2
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Install dependencies
- run: composer install
- - uses: actions/setup-node@v1
- with:
- node-version: 12
- - name: Get yarn cache directory path
- id: yarn-cache-dir-path
- run: echo "::set-output name=dir::$(yarn cache dir)"
- - name: yarn cache
- uses: actions/cache@v2
- with:
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- restore-keys: |
- ${{ runner.os }}-yarn-
- - name: Install modules
- run: yarn install --non-interactive
- - uses: actions/setup-python@v2
- with:
- python-version: '3.6'
- - name: Install gettext
- run: sudo apt-get install -y gettext
- - name: Install Sphinx for the documentation build
- run: pip install 'Sphinx'
- - name: Build the release
- run: ./scripts/create-release.sh --ci
+ - name: Install dependencies
+ run: composer install
+ - uses: actions/setup-node@v1
+ with:
+ node-version: 12
+ - name: Get yarn cache directory path
+ id: yarn-cache-dir-path
+ run: echo "::set-output name=dir::$(yarn cache dir)"
+ - name: yarn cache
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-yarn-
+ - name: Install modules
+ run: yarn install --non-interactive
+ - uses: actions/setup-python@v2
+ with:
+ python-version: '3.6'
+ - name: Install gettext
+ run: sudo apt-get install -y gettext
+ - name: Install Sphinx for the documentation build
+ run: pip install 'Sphinx'
+ - name: Build the release
+ run: ./scripts/create-release.sh --ci
diff --git a/.github/workflows/test-selenium.yml b/.github/workflows/test-selenium.yml
index 4dfa8a4342..fb1400f2ef 100644
--- a/.github/workflows/test-selenium.yml
+++ b/.github/workflows/test-selenium.yml
@@ -9,131 +9,131 @@ on:
- QA_**
jobs:
- test-selenium:
- name: Selenium tests on php ${{ matrix.php-version }} and ${{ matrix.os }}
- if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[ci selenium skip]')"
- runs-on: ${{ matrix.os }}
- services:
- database-server:
- image: ${{ matrix.db-server }}
- env:
- MYSQL_ROOT_PASSWORD: testbench
- ports:
- - "3306:3306"
- options: >-
- --health-cmd="mysqladmin ping"
- --health-interval=10s
- --health-timeout=5s
- --health-retries=3
- selenium-server:
- image: selenium/standalone-chrome:3.141.59
- volumes:
- - /dev/shm:/dev/shm
- options: >-
- --health-cmd "/opt/bin/check-grid.sh"
- env:
- SCREEN_WIDTH: 1920
- SCREEN_HEIGHT: 1080
- ports:
- - "4444:4444"
- docker-host-bridge:
- # Allow accessing localhost ports from docker containers.
- # See https://github.com/qoomon/docker-host
- image: qoomon/docker-host
- options: >-
- --name docker-host-bridge
- --hostname docker-host-bridge
- --add-host docker-host-bridge:127.0.0.1
- --cap-add=NET_ADMIN
- --cap-add=NET_RAW
- --restart on-failure
- strategy:
- matrix:
- php-version: ["7.2"]
- os: [ubuntu-latest]
- db-server: ["mysql:5.7"]
- steps:
- - uses: actions/checkout@v2
- - name: Refresh apt cache
- run: sudo apt-get update
- - name: Install gettext
- run: sudo apt-get install -y gettext
- - name: Generate mo files
- run: ./scripts/generate-mo --quiet
- - name: Use php ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- extensions: mbstring, iconv, mysqli, zip, gd, bz2
+ test-selenium:
+ name: Selenium tests on php ${{ matrix.php-version }} and ${{ matrix.os }}
+ if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[ci selenium skip]')"
+ runs-on: ${{ matrix.os }}
+ services:
+ database-server:
+ image: ${{ matrix.db-server }}
+ env:
+ MYSQL_ROOT_PASSWORD: testbench
+ ports:
+ - "3306:3306"
+ options: >-
+ --health-cmd="mysqladmin ping"
+ --health-interval=10s
+ --health-timeout=5s
+ --health-retries=3
+ selenium-server:
+ image: selenium/standalone-chrome:3.141.59
+ volumes:
+ - /dev/shm:/dev/shm
+ options: >-
+ --health-cmd "/opt/bin/check-grid.sh"
+ env:
+ SCREEN_WIDTH: 1920
+ SCREEN_HEIGHT: 1080
+ ports:
+ - "4444:4444"
+ docker-host-bridge:
+ # Allow accessing localhost ports from docker containers.
+ # See https://github.com/qoomon/docker-host
+ image: qoomon/docker-host
+ options: >-
+ --name docker-host-bridge
+ --hostname docker-host-bridge
+ --add-host docker-host-bridge:127.0.0.1
+ --cap-add=NET_ADMIN
+ --cap-add=NET_RAW
+ --restart on-failure
+ strategy:
+ matrix:
+ php-version: ["7.2"]
+ os: [ubuntu-latest]
+ db-server: ["mysql:5.7"]
+ steps:
+ - uses: actions/checkout@v2
+ - name: Refresh apt cache
+ run: sudo apt-get update
+ - name: Install gettext
+ run: sudo apt-get install -y gettext
+ - name: Generate mo files
+ run: ./scripts/generate-mo --quiet
+ - name: Use php ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ extensions: mbstring, iconv, mysqli, zip, gd, bz2
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Install dependencies
- run: composer install --no-interaction
- - uses: actions/setup-node@v1
- with:
- node-version: 12
- - name: Get yarn cache directory path
- id: yarn-cache-dir-path
- run: echo "::set-output name=dir::$(yarn cache dir)"
- - name: yarn cache
- uses: actions/cache@v2
- with:
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- restore-keys: |
- ${{ runner.os }}-yarn-
- - name: Install modules
- run: yarn install --non-interactive --production
- - name: Install nginx and php-fpm
- run: sudo apt-get install -y nginx php7.2-fpm
- - name: Copy the config
- run: cp test/config.e2e.inc.php config.inc.php
- - name: Start server
- env:
- CI_MODE: selenium
- FPM_PATH: php-fpm7.2
- SKIP_STANDALONE: 1
- run: |
- ./test/start-local-server
- echo ::set-output name=SELENIUM_TEMPDIR::"$(cat /tmp/last_temp_dir_phpMyAdminTests)"
- id: start-local-server
- - name: Run selenium tests
- env:
- CI_MODE: selenium
- TESTSUITE_SELENIUM_BROWSER: chrome
- TESTSUITE_USER: root
- TESTSUITE_PASSWORD: testbench
- # Port defined in test/nginx.conf
- TESTSUITE_URL: http://docker-host-bridge:8000
- TESTSUITE_DATABASE_PREFIX: "selenium"
- TESTSUITE_SELENIUM_HOST: "127.0.0.1"
- TESTSUITE_SELENIUM_PORT: "4444"
- run: ./vendor/bin/phpunit --testsuite selenium --verbose --debug --no-coverage --stop-on-skipped
- - name: Output logs and stop server
- env:
- CI_MODE: selenium
- SELENIUM_TEMPDIR: ${{ steps.start-local-server.outputs.SELENIUM_TEMPDIR }}
- if: ${{ success() || failure() }}
- run: |
- if [ -f "${SELENIUM_TEMPDIR}/php.log" ] ; then cat "${SELENIUM_TEMPDIR}/php.log" ; fi
- if [ -f "${SELENIUM_TEMPDIR}/nginx-error.log" ] ; then cat "${SELENIUM_TEMPDIR}/nginx-error.log" ; fi
- ./test/stop-local-server
- - name: 'Upload screenshots'
- uses: actions/upload-artifact@v2
- if: ${{ success() || failure() }}
- with:
- name: selenium-screenshots
- path: ${{ github.workspace }}/build/selenium/**/*
- retention-days: 1
+ - name: Install dependencies
+ run: composer install --no-interaction
+ - uses: actions/setup-node@v1
+ with:
+ node-version: 12
+ - name: Get yarn cache directory path
+ id: yarn-cache-dir-path
+ run: echo "::set-output name=dir::$(yarn cache dir)"
+ - name: yarn cache
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-yarn-
+ - name: Install modules
+ run: yarn install --non-interactive --production
+ - name: Install nginx and php-fpm
+ run: sudo apt-get install -y nginx php7.2-fpm
+ - name: Copy the config
+ run: cp test/config.e2e.inc.php config.inc.php
+ - name: Start server
+ env:
+ CI_MODE: selenium
+ FPM_PATH: php-fpm7.2
+ SKIP_STANDALONE: 1
+ run: |
+ ./test/start-local-server
+ echo ::set-output name=SELENIUM_TEMPDIR::"$(cat /tmp/last_temp_dir_phpMyAdminTests)"
+ id: start-local-server
+ - name: Run selenium tests
+ env:
+ CI_MODE: selenium
+ TESTSUITE_SELENIUM_BROWSER: chrome
+ TESTSUITE_USER: root
+ TESTSUITE_PASSWORD: testbench
+ # Port defined in test/nginx.conf
+ TESTSUITE_URL: http://docker-host-bridge:8000
+ TESTSUITE_DATABASE_PREFIX: "selenium"
+ TESTSUITE_SELENIUM_HOST: "127.0.0.1"
+ TESTSUITE_SELENIUM_PORT: "4444"
+ run: ./vendor/bin/phpunit --testsuite selenium --verbose --debug --no-coverage --stop-on-skipped
+ - name: Output logs and stop server
+ env:
+ CI_MODE: selenium
+ SELENIUM_TEMPDIR: ${{ steps.start-local-server.outputs.SELENIUM_TEMPDIR }}
+ if: ${{ success() || failure() }}
+ run: |
+ if [ -f "${SELENIUM_TEMPDIR}/php.log" ] ; then cat "${SELENIUM_TEMPDIR}/php.log" ; fi
+ if [ -f "${SELENIUM_TEMPDIR}/nginx-error.log" ] ; then cat "${SELENIUM_TEMPDIR}/nginx-error.log" ; fi
+ ./test/stop-local-server
+ - name: 'Upload screenshots'
+ uses: actions/upload-artifact@v2
+ if: ${{ success() || failure() }}
+ with:
+ name: selenium-screenshots
+ path: ${{ github.workspace }}/build/selenium/**/*
+ retention-days: 1
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 16a1a6ddd2..5b3270d4cc 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -9,192 +9,192 @@ on:
- QA_**
jobs:
- multi-arch-tests-php:
- name: Test on php ${{ matrix.php-version }} (${{ matrix.arch }})
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- runs-on: ubuntu-latest
- continue-on-error: ${{ matrix.experimental }}
- strategy:
- fail-fast: false
- matrix:
- include:
- - { php-version: '7', experimental: false, arch: 'amd64', exclude-phpunit-groups: 'extension-iconv' }
- - { php-version: '7', experimental: false, arch: 'arm64v8', exclude-phpunit-groups: 'extension-iconv' }
- - { php-version: '7', experimental: false, arch: 'arm32v7', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- - { php-version: '7', experimental: false, arch: 'arm32v6', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- - { php-version: '7', experimental: false, arch: 'i386', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- - { php-version: '7', experimental: true, arch: 'ppc64le', exclude-phpunit-groups: 'extension-iconv' }
- - { php-version: '7', experimental: false, arch: 's390x', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
- steps:
- - uses: actions/checkout@v2
- - name: Write script
- # tcpdf allowed memory exhausted needs the memory_limit workaround
- # musl-locales and musl-locales-lang are needed to run some locale specific tests
- # gettext is needed to run generate-mo
- # git is needed to workaround a version detection issue with composer, see: https://github.com/Roave/SecurityAdvisories/issues/76
- run: |
- printf "set -exu && \
- export V='%s' && \
- apk add --update --no-cache \
- php\$V-cli php\$V-mysqli php\$V-session php\$V-mbstring php\$V-ctype \
- php\$V-iconv php\$V-xml php\$V-tokenizer php\$V-xmlwriter php\$V-simplexml \
- php\$V-dom php\$V-json php\$V-bz2 php\$V-curl php\$V-gd php\$V-zip \
- musl-locales musl-locales-lang \
- gettext composer git && \
- composer update && \
- ./scripts/generate-mo && \
- php -d memory_limit=512M ./vendor/bin/phpunit --no-coverage --testsuite unit --exclude-group=%s" \
- "${{ matrix.php-version }}" "${{ matrix.exclude-phpunit-groups }}" > ./do-tests.sh
- - name: Setup multi arch support
- run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
- - name: Print arch
- run: docker run --rm ${{ matrix.arch }}/alpine:3.14 uname -a
- - name: Run tests on php ${{ matrix.php-version }}
- run: docker run -v $PWD:/app --workdir /app --rm ${{ matrix.arch }}/alpine:3.14 sh /app/do-tests.sh
- test-php:
- name: Test on php ${{ matrix.php-version }} and ${{ matrix.os }}
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- runs-on: ${{ matrix.os }}
- continue-on-error: ${{ matrix.experimental }}
- strategy:
- matrix:
- php-version: ["7.2", "7.3", "7.4", "8.0"]
- experimental: [false]
- os: [ubuntu-latest]
- phpunit-options: ['--testsuite unit']
- include:
- - php-version: '8.1'
- experimental: true
- os: ubuntu-latest
- phpunit-options: '--configuration test/phpunit-php-nightly.xml'
- composer-options: '--ignore-platform-req=php'
- steps:
- - uses: actions/checkout@v2
- - name: Install gettext
- run: sudo apt-get install -y gettext
- - name: Generate mo files
- run: ./scripts/generate-mo --quiet
- - name: Use php ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- extensions: mbstring, iconv, mysqli, zip, gd, bz2
- coverage: xdebug
+ multi-arch-tests-php:
+ name: Test on php ${{ matrix.php-version }} (${{ matrix.arch }})
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ runs-on: ubuntu-latest
+ continue-on-error: ${{ matrix.experimental }}
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - { php-version: '7', experimental: false, arch: 'amd64', exclude-phpunit-groups: 'extension-iconv' }
+ - { php-version: '7', experimental: false, arch: 'arm64v8', exclude-phpunit-groups: 'extension-iconv' }
+ - { php-version: '7', experimental: false, arch: 'arm32v7', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
+ - { php-version: '7', experimental: false, arch: 'arm32v6', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
+ - { php-version: '7', experimental: false, arch: 'i386', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
+ - { php-version: '7', experimental: true, arch: 'ppc64le', exclude-phpunit-groups: 'extension-iconv' }
+ - { php-version: '7', experimental: false, arch: 's390x', exclude-phpunit-groups: 'extension-iconv,32bit-incompatible' }
+ steps:
+ - uses: actions/checkout@v2
+ - name: Write script
+ # tcpdf allowed memory exhausted needs the memory_limit workaround
+ # musl-locales and musl-locales-lang are needed to run some locale specific tests
+ # gettext is needed to run generate-mo
+ # git is needed to workaround a version detection issue with composer, see: https://github.com/Roave/SecurityAdvisories/issues/76
+ run: |
+ printf "set -exu && \
+ export V='%s' && \
+ apk add --update --no-cache \
+ php\$V-cli php\$V-mysqli php\$V-session php\$V-mbstring php\$V-ctype \
+ php\$V-iconv php\$V-xml php\$V-tokenizer php\$V-xmlwriter php\$V-simplexml \
+ php\$V-dom php\$V-json php\$V-bz2 php\$V-curl php\$V-gd php\$V-zip \
+ musl-locales musl-locales-lang \
+ gettext composer git && \
+ composer update && \
+ ./scripts/generate-mo && \
+ php -d memory_limit=512M ./vendor/bin/phpunit --no-coverage --testsuite unit --exclude-group=%s" \
+ "${{ matrix.php-version }}" "${{ matrix.exclude-phpunit-groups }}" > ./do-tests.sh
+ - name: Setup multi arch support
+ run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
+ - name: Print arch
+ run: docker run --rm ${{ matrix.arch }}/alpine:3.14 uname -a
+ - name: Run tests on php ${{ matrix.php-version }}
+ run: docker run -v $PWD:/app --workdir /app --rm ${{ matrix.arch }}/alpine:3.14 sh /app/do-tests.sh
+ test-php:
+ name: Test on php ${{ matrix.php-version }} and ${{ matrix.os }}
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ runs-on: ${{ matrix.os }}
+ continue-on-error: ${{ matrix.experimental }}
+ strategy:
+ matrix:
+ php-version: ["7.2", "7.3", "7.4", "8.0"]
+ experimental: [false]
+ os: [ubuntu-latest]
+ phpunit-options: ['--testsuite unit']
+ include:
+ - php-version: '8.1'
+ experimental: true
+ os: ubuntu-latest
+ phpunit-options: '--configuration test/phpunit-php-nightly.xml'
+ composer-options: '--ignore-platform-req=php'
+ steps:
+ - uses: actions/checkout@v2
+ - name: Install gettext
+ run: sudo apt-get install -y gettext
+ - name: Generate mo files
+ run: ./scripts/generate-mo --quiet
+ - name: Use php ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ extensions: mbstring, iconv, mysqli, zip, gd, bz2
+ coverage: xdebug
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Install dependencies
- run: composer install --no-interaction ${{ matrix.composer-options }}
- - name: Run php tests
- run: composer run phpunit -- ${{ matrix.phpunit-options }}
- - name: Send coverage
- uses: codecov/codecov-action@v1
- with:
- flags: unit-${{ matrix.php-version }}-${{ matrix.os }}
- name: phpunit-${{ matrix.php-version }}-${{ matrix.os }}
- - name: Send coverage to Scrutinizer
- uses: sudo-bot/action-scrutinizer@latest
- # Upload can fail on forks
- continue-on-error: true
- with:
- cli-args: "--format=php-clover build/logs/clover.xml"
- - name: Send coverage to Codacy
- # Upload can fail on forks or if the secret is missing
- continue-on-error: true
- uses: codacy/codacy-coverage-reporter-action@master
- with:
- project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
- coverage-reports: build/logs/clover.xml
+ - name: Install dependencies
+ run: composer install --no-interaction ${{ matrix.composer-options }}
+ - name: Run php tests
+ run: composer run phpunit -- ${{ matrix.phpunit-options }}
+ - name: Send coverage
+ uses: codecov/codecov-action@v1
+ with:
+ flags: unit-${{ matrix.php-version }}-${{ matrix.os }}
+ name: phpunit-${{ matrix.php-version }}-${{ matrix.os }}
+ - name: Send coverage to Scrutinizer
+ uses: sudo-bot/action-scrutinizer@latest
+ # Upload can fail on forks
+ continue-on-error: true
+ with:
+ cli-args: "--format=php-clover build/logs/clover.xml"
+ - name: Send coverage to Codacy
+ # Upload can fail on forks or if the secret is missing
+ continue-on-error: true
+ uses: codacy/codacy-coverage-reporter-action@master
+ with:
+ project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
+ coverage-reports: build/logs/clover.xml
- test-php-optional-extensions:
- name: Test on php (+ ext-${{ matrix.extension }}) ${{ matrix.php-version }} and ${{ matrix.os }}
- runs-on: ${{ matrix.os }}
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- strategy:
- matrix:
- php-version: ["7.2"]
- os: [ubuntu-latest]
- extension: ["dbase", "recode"]
- steps:
- - uses: actions/checkout@v2
- - name: Install gettext
- run: sudo apt-get install -y gettext
- - name: Generate mo files
- run: ./scripts/generate-mo --quiet
- - name: Use php ${{ matrix.php-version }}
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php-version }}
- extensions: ${{ matrix.extension }}, mbstring, iconv, mysqli, zip, gd
- coverage: xdebug
+ test-php-optional-extensions:
+ name: Test on php (+ ext-${{ matrix.extension }}) ${{ matrix.php-version }} and ${{ matrix.os }}
+ runs-on: ${{ matrix.os }}
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ strategy:
+ matrix:
+ php-version: ["7.2"]
+ os: [ubuntu-latest]
+ extension: ["dbase", "recode"]
+ steps:
+ - uses: actions/checkout@v2
+ - name: Install gettext
+ run: sudo apt-get install -y gettext
+ - name: Generate mo files
+ run: ./scripts/generate-mo --quiet
+ - name: Use php ${{ matrix.php-version }}
+ uses: shivammathur/setup-php@v2
+ with:
+ php-version: ${{ matrix.php-version }}
+ extensions: ${{ matrix.extension }}, mbstring, iconv, mysqli, zip, gd
+ coverage: xdebug
- - name: Get Composer cache directory
- id: composer-cache
- run: |
- echo "::set-output name=dir::$(composer config cache-files-dir)"
+ - name: Get Composer cache directory
+ id: composer-cache
+ run: |
+ echo "::set-output name=dir::$(composer config cache-files-dir)"
- - name: Cache dependencies
- uses: actions/cache@v2
- with:
- path: ${{ steps.composer-cache.outputs.dir }}
- key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
- restore-keys: |
- composer-${{ runner.os }}-${{ matrix.php-version }}-
+ - name: Cache dependencies
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.composer-cache.outputs.dir }}
+ key: composer-${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.*') }}
+ restore-keys: |
+ composer-${{ runner.os }}-${{ matrix.php-version }}-
- - name: Install dependencies
- run: composer install
- - name: Run php tests
- run: composer run phpunit -- --testsuite unit
- - name: Send coverage
- uses: codecov/codecov-action@v1
- with:
- flags: ${{ matrix.extension }}-extension
- name: php-7.2-${{ matrix.extension }}-enabled
- - name: Send coverage to Scrutinizer
- uses: sudo-bot/action-scrutinizer@latest
- # Upload can fail on forks
- continue-on-error: true
- with:
- cli-args: "--format=php-clover build/logs/clover.xml"
- - name: Send coverage to Codacy
- # Upload can fail on forks or if the secret is missing
- continue-on-error: true
- uses: codacy/codacy-coverage-reporter-action@master
- with:
- project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
- coverage-reports: build/logs/clover.xml
+ - name: Install dependencies
+ run: composer install
+ - name: Run php tests
+ run: composer run phpunit -- --testsuite unit
+ - name: Send coverage
+ uses: codecov/codecov-action@v1
+ with:
+ flags: ${{ matrix.extension }}-extension
+ name: php-7.2-${{ matrix.extension }}-enabled
+ - name: Send coverage to Scrutinizer
+ uses: sudo-bot/action-scrutinizer@latest
+ # Upload can fail on forks
+ continue-on-error: true
+ with:
+ cli-args: "--format=php-clover build/logs/clover.xml"
+ - name: Send coverage to Codacy
+ # Upload can fail on forks or if the secret is missing
+ continue-on-error: true
+ uses: codacy/codacy-coverage-reporter-action@master
+ with:
+ project-token: ${{ secrets.CODACY_PROJECT_TOKEN }}
+ coverage-reports: build/logs/clover.xml
- test-js:
- name: Test javascript files
- runs-on: ubuntu-latest
- if: "!contains(github.event.head_commit.message, '[ci skip]')"
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
- with:
- node-version: 12
- - name: Get yarn cache directory path
- id: yarn-cache-dir-path
- run: echo "::set-output name=dir::$(yarn cache dir)"
- - name: yarn cache
- uses: actions/cache@v2
- with:
- path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
- key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
- restore-keys: |
- ${{ runner.os }}-yarn-
- - name: Install modules
- run: yarn install --non-interactive
- - name: Run tests
- run: yarn test
+ test-js:
+ name: Test javascript files
+ runs-on: ubuntu-latest
+ if: "!contains(github.event.head_commit.message, '[ci skip]')"
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v1
+ with:
+ node-version: 12
+ - name: Get yarn cache directory path
+ id: yarn-cache-dir-path
+ run: echo "::set-output name=dir::$(yarn cache dir)"
+ - name: yarn cache
+ uses: actions/cache@v2
+ with:
+ path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
+ key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
+ restore-keys: |
+ ${{ runner.os }}-yarn-
+ - name: Install modules
+ run: yarn install --non-interactive
+ - name: Run tests
+ run: yarn test