Some checks failed
Upgrade Test (4.x) / upgrade_test (map[file:V4_0.sql version:4.0]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_1.sql version:4.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_10.sql version:4.10]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_10_1.sql version:4.10.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_1_1.sql version:4.1.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_1_2.sql version:4.1.2]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_1_2_1.sql version:4.1.2.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_2_0_1.sql version:4.2.0.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3.sql version:4.3]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3_1.sql version:4.3.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3_2.sql version:4.3.2]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3_3.sql version:4.3.3]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3_4.sql version:4.3.4]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_3_5.sql version:4.3.5]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_4.sql version:4.4]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_5.sql version:4.5]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_6.sql version:4.6]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_6_0_1.sql version:4.6.0.1]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_7.sql version:4.7]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_8.sql version:4.8]) (push) Has been cancelled
Upgrade Test (4.x) / upgrade_test (map[file:V4_9.sql version:4.9]) (push) Has been cancelled
Build / build (push) Has been cancelled
Cypress / cypress (push) Has been cancelled
Docker Build Test / build (push) Has been cancelled
Lint / lint (push) Has been cancelled
Scheduled Test / db_test (map[admin:mariadb-admin image:mariadb:11.0]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mariadb-admin image:mariadb:11.1]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mariadb-admin image:mariadb:11.2]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mariadb-admin image:mariadb:11.3]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mariadb-admin image:mariadb:11.4]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.0]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.10]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.11]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.1]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.2]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.3]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.4]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.5]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.6]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.7]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.8]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:10.9]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mariadb:5.5]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:5.5]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:5.6]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:5.7]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:8.0]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:8.1]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:8.2]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:8.3]) (push) Has been cancelled
Scheduled Test / db_test (map[admin:mysqladmin image:mysql:8.4]) (push) Has been cancelled
Scheduled Test / php_test (php7.4) (push) Has been cancelled
Scheduled Test / php_test (php8.0) (push) Has been cancelled
Scheduled Test / php_test (php8.1) (push) Has been cancelled
Scheduled Test / php_test (php8.2) (push) Has been cancelled
Scheduled Test / php_test (php8.3) (push) Has been cancelled
Test / test (map[image:mariadb:10.3 name:mariadb103]) (push) Has been cancelled
Test / test (map[image:mysql:5.7 name:mysql57]) (push) Has been cancelled
Test / composer_check (push) Has been cancelled
Test / installation (push) Has been cancelled
183 lines
6.0 KiB
YAML
Executable File
183 lines
6.0 KiB
YAML
Executable File
name: Test
|
|
|
|
on:
|
|
push:
|
|
pull_request:
|
|
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-20.04
|
|
|
|
strategy:
|
|
matrix:
|
|
database:
|
|
- { image: "mysql:5.7", name: "mysql57" }
|
|
- { image: "mariadb:10.3", name: "mariadb103"}
|
|
|
|
services:
|
|
mysql:
|
|
image: ${{ matrix.database.image }}
|
|
env:
|
|
MYSQL_ROOT_PASSWORD: root
|
|
ports:
|
|
- 3306:3306
|
|
options: >-
|
|
--health-cmd "mysqladmin ping"
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 3
|
|
--tmpfs /var/lib/mysql/
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Validate composer.json and composer.lock
|
|
run: |
|
|
cd src
|
|
composer validate --strict
|
|
|
|
- name: Parse Git short hash
|
|
run: echo "git_short_hash=$(git rev-parse --short $GITHUB_SHA)" >> $GITHUB_ENV
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
php7.4 -f /usr/bin/composer install -d src
|
|
php7.4 -f /usr/bin/composer install -d devTools/core
|
|
cd src/client
|
|
yarn install
|
|
|
|
- name: Install OrangeHRM
|
|
run: |
|
|
php7.4 installer/cli_install.php
|
|
mysqldump -V
|
|
php7.4 devTools/core/console.php i:create-test-db -p root --dump-options="--column-statistics=0"
|
|
|
|
- name: Configure LDAP server
|
|
if: "${{ github.event_name == 'push' }}"
|
|
run: |
|
|
cd src/plugins/orangehrmLDAPAuthenticationPlugin/test/config
|
|
docker run --detach --rm --name openldap \
|
|
--network ${{ job.container.network }} \
|
|
-p 389:1389 \
|
|
-e LDAP_ADMIN_USERNAME=admin \
|
|
-e LDAP_ADMIN_PASSWORD=admin \
|
|
-e LDAP_ROOT=dc=example,dc=org \
|
|
-e LDAP_CONFIG_ADMIN_ENABLED=yes \
|
|
-e LDAP_CONFIG_ADMIN_USERNAME=admin \
|
|
-e LDAP_CONFIG_ADMIN_PASSWORD=admin \
|
|
-e LDAP_SKIP_DEFAULT_TREE=yes \
|
|
-v $PWD/ldifs:/ldifs \
|
|
bitnami/openldap:2.6.4
|
|
cat server-config.tpl.yaml > server-config.yaml
|
|
|
|
- name: Run Jest
|
|
run: |
|
|
cd src/client
|
|
yarn test:unit --coverage
|
|
|
|
- name: Run test
|
|
run: |
|
|
XDEBUG_MODE=coverage ./src/vendor/bin/phpunit --coverage-html coverage -d memory_limit=1G
|
|
tar cf - coverage/ | xz -z - > coverage.tar.xz
|
|
|
|
- name: Upload jest coverage
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: jest-coverage-${{ matrix.database.name }}
|
|
path: src/client/coverage
|
|
|
|
- name: Upload phpunit coverage
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: coverage-${{ matrix.database.name }}
|
|
path: coverage.tar.xz
|
|
|
|
- name: Upload logs
|
|
uses: actions/upload-artifact@v4
|
|
if: ${{ always() }}
|
|
with:
|
|
name: logs-${{ matrix.database.name }}
|
|
path: src/log
|
|
|
|
- name: Stop LDAP container
|
|
if: "${{ github.event_name == 'push' && always() }}"
|
|
run: docker stop openldap
|
|
|
|
composer_check:
|
|
runs-on: ubuntu-20.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Validate composer.json and composer.lock
|
|
run: |
|
|
cd src
|
|
php8.0 -f /usr/bin/composer validate --strict
|
|
php8.1 -f /usr/bin/composer validate --strict
|
|
|
|
- name: Install depandancies on PHP 8.0
|
|
run: |
|
|
cd src
|
|
rm -rf vendor
|
|
php8.0 -f /usr/bin/composer install
|
|
php8.0 -f /usr/bin/composer dump-autoload -o
|
|
|
|
- name: Install depandancies on PHP 8.1
|
|
run: |
|
|
cd src
|
|
rm -rf vendor
|
|
php8.1 -f /usr/bin/composer install
|
|
php8.1 -f /usr/bin/composer dump-autoload -o
|
|
|
|
installation:
|
|
if: github.event_name == 'push'
|
|
runs-on: ubuntu-20.04
|
|
|
|
services:
|
|
mysql:
|
|
image: mariadb:10.7
|
|
env:
|
|
MYSQL_ROOT_PASSWORD: root
|
|
ports:
|
|
- 3306:3306
|
|
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
|
|
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
php7.4 -f /usr/bin/composer install -d src
|
|
php7.4 -f /usr/bin/composer install -d devTools/core
|
|
|
|
- name: Install OrangeHRM with empty database password
|
|
run: |
|
|
sed -i 's/useSameDbUserForOrangeHRM: y/useSameDbUserForOrangeHRM: n/g' installer/cli_install_config.yaml
|
|
sed -i 's/orangehrmDatabaseUser: ~/orangehrmDatabaseUser: orangehrm_1/g' installer/cli_install_config.yaml
|
|
php7.4 installer/cli_install.php
|
|
|
|
- name: Install OrangeHRM with database user
|
|
run: |
|
|
php devTools/core/console.php i:reset
|
|
git checkout installer/cli_install_config.yaml
|
|
sed -i 's/useSameDbUserForOrangeHRM: y/useSameDbUserForOrangeHRM: n/g' installer/cli_install_config.yaml
|
|
sed -i 's/orangehrmDatabaseUser: ~/orangehrmDatabaseUser: orangehrm_2/g' installer/cli_install_config.yaml
|
|
sed -i 's/orangehrmDatabasePassword: ~/orangehrmDatabasePassword: 0rang3h!m/g' installer/cli_install_config.yaml
|
|
sed -i 's/databaseName: orangehrm_mysql/databaseName: db/g' installer/cli_install_config.yaml
|
|
php7.4 installer/cli_install.php
|
|
|
|
- name: Install OrangeHRM with existing database
|
|
run: |
|
|
php devTools/core/console.php i:reset
|
|
git checkout installer/cli_install_config.yaml
|
|
sed -i 's/isExistingDatabase: n/isExistingDatabase: y/g' installer/cli_install_config.yaml
|
|
sed -i 's/privilegedDatabaseUser: root/privilegedDatabaseUser: orangehrm_2/g' installer/cli_install_config.yaml
|
|
sed -i 's/privilegedDatabasePassword: root/privilegedDatabasePassword: 0rang3h!m/g' installer/cli_install_config.yaml
|
|
sed -i 's/databaseName: orangehrm_mysql/databaseName: db/g' installer/cli_install_config.yaml
|
|
mysql -u root -proot -h 127.0.0.1 -e "CREATE DATABASE db;"
|
|
php7.4 installer/cli_install.php
|
|
|
|
- name: Check dev tool reinstall command
|
|
run: |
|
|
php devTools/core/console.php i:reinstall
|