Skip to content

Commit

Permalink
Migrated to github actions
Browse files Browse the repository at this point in the history
  • Loading branch information
buddh4 committed Feb 4, 2021
1 parent 2672d99 commit a77163c
Show file tree
Hide file tree
Showing 4 changed files with 143 additions and 93 deletions.
143 changes: 143 additions & 0 deletions .github/workflows/php-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
name: PHP Codeception Tests

on:
push:
branches:
- master
- develop
pull_request:
branches:
- master
- develop

jobs:
tests:
name: PHP ${{ matrix.php-version }}-mysql-${{ matrix.mysql-version }}-humhub-${{ matrix.humhub-ref }}
env:
module-id: wiki
extensions: curl, intl, pdo, pdo_mysql, zip, exif, fileinfo, mbstring, gd
key: cache-v1

runs-on: ${{ matrix.os }}

strategy:
matrix:
os:
- ubuntu-latest

php-version:
- "7.2"
- "7.3"
- "7.4"

humhub-ref:
- "develop"
- "master"

mysql-version:
- "5.7"

services:
mysql:
image: mysql:${{ matrix.mysql-version }}
env:
MYSQL_DATABASE: humhub_test
MYSQL_ROOT_PASSWORD: root
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

steps:
- uses: actions/setup-node@v1

- name: Checkout HumHub Core
uses: actions/checkout@v2
with:
repository: humhub/humhub
ref: ${{ matrix.humhub-ref }}

- name: Checkout Module
uses: actions/checkout@v2
with:
path: protected/modules/${{ env.module-id }}

- name: Setup cache environment
id: cache-env
uses: shivammathur/cache-extensions@v1
with:
php-version: ${{ matrix.php-version }}
extensions: ${{ env.extensions }}
key: ${{ env.key }}

- name: Cache extensions
uses: actions/cache@v1
with:
path: ${{ steps.cache-env.outputs.dir }}
key: ${{ steps.cache-env.outputs.key }}
restore-keys: ${{ steps.cache-env.outputs.key }}

- name: Install PHP with extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
extensions: ${{ env.extensions }}
ini-values: date.timezone='UTC'

- name: Determine composer cache directory
if: matrix.os == 'ubuntu-latest'
run: echo "COMPOSER_CACHE_DIR=$(composer config cache-dir)" >> $GITHUB_ENV

- name: Validate composer.json and composer.lock
run: composer validate

- name: Cache dependencies installed with composer
uses: actions/cache@v1
with:
path: ${{ env.COMPOSER_CACHE_DIR }}
key: php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-${{ hashFiles('**/composer.json') }}
restore-keys: |
php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-
- name: Install dependencies with composer
run: composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi

- name: Verify MySQL connection from host
run: |
sudo apt-get install -y mysql-client
mysql --host 127.0.0.1 --port ${{ job.services.mysql.ports['3306'] }} -uroot -proot -e "SHOW DATABASES"
- name: Install npm dependencies
run: npm install

- name: Build production assets
run: grunt build-assets

- name: Run migrations
run: php protected/humhub/tests/codeception/bin/yii migrate/up --includeModuleMigrations=1 --interactive=0

- name: Run installer
run: php protected/humhub/tests/codeception/bin/yii installer/auto

- name: Rebuild search index
run: php protected/humhub/tests/codeception/bin/yii search/rebuild

- name: Build codeception core files
run: |
cd $GITHUB_WORKSPACE/protected/humhub/tests
php ../../vendor/bin/codecept build
- name: Run test server
run: php --server 127.0.0.1:8080 &>/tmp/phpserver.log &

- name: Setup chromedriver
run: chromedriver --url-base=/wd/hub &

- name: Valdiate test server
run: sleep 5 && curl --fail --head http://127.0.0.1:8080/index-test.php

- name: Run test suite
run: |
export HUMHUB_PATH=$GITHUB_WORKSPACE
cd $GITHUB_WORKSPACE/protected/modules/${{ env.module-id }}/tests
php $GITHUB_WORKSPACE/protected/vendor/bin/codecept build
php $GITHUB_WORKSPACE/protected/vendor/bin/codecept run --env github
52 changes: 0 additions & 52 deletions .travis.yml

This file was deleted.

12 changes: 0 additions & 12 deletions .travis/install-dependencies.sh

This file was deleted.

29 changes: 0 additions & 29 deletions .travis/setup-humhub.sh

This file was deleted.

0 comments on commit a77163c

Please sign in to comment.