Extend CI list with Github actions (#3905)

JerryScript-DCO-1.0-Signed-off-by: Robert Fancsik frobert@inf.u-szeged.hu
This commit is contained in:
Robert Fancsik 2020-06-17 17:19:05 +02:00 committed by GitHub
parent 5d6467930a
commit e0b2f8e0d8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 109 additions and 69 deletions

109
.github/workflows/gh-actions.yml vendored Normal file
View File

@ -0,0 +1,109 @@
name: JerryScript CI
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
env:
RUNNER: tools/run-tests.py
jobs:
Checks:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Initializtaion
run: sudo apt-get install doxygen vera++ cppcheck pylint pylint python-serial -q
- name: Signed-off
run: $RUNNER --check-signed-off=travis
- name: Doxygen
run: $RUNNER --check-doxygen
- name: Vera++
run: $RUNNER --check-vera
- name: License
run: $RUNNER --check-license
- name: Magic strings
run: $RUNNER --check-magic-strings
- name: Pylint
run: $RUNNER --check-pylint
- name: Cppcheck
run: $RUNNER --check-cppcheck
Linux_x86-64_Build_Correctness_Debugger_Tests:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Correctness - jerry-tests
run: $RUNNER --jerry-tests -q
- name: Debugger Tests
run: $RUNNER --jerry-debugger -q
Linux_x86_cpointer-32bit_Build_Correctness_Tests:
runs-on: ubuntu-18.04
env:
BUILD_OPTIONS: --buildoptions=--compile-flag=-m32,--cpointer-32bit=on -q
steps:
- uses: actions/checkout@v1
- name: Initializtaion
run: sudo apt-get install gcc-multilib
- name: Correctness - jerry-tests
run: $RUNNER --jerry-tests $BUILD_OPTIONS -q
OSX_x86-64_Build_Correctness_Unit_Tests:
runs-on: macos-10.15
steps:
- uses: actions/checkout@v1
- name: Correctness - jerry-tests
run: $RUNNER --jerry-tests -q
- name: Unit Tests
run: $RUNNER --unittests -q
Conformance_Tests_ES5_1:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Test262 - ES5.1
run: $RUNNER --test262
Conformance_Tests_ES2015:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Test262 - ES2015
run: $RUNNER --test262-es2015 update
Unit_Tests:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v1
- name: Unit Tests
run: $RUNNER --unittests -q
ASAN_Tests:
runs-on: ubuntu-18.04
env:
ASAN_OPTIONS: detect_stack_use_after_return=1:check_initialization_order=true:strict_init_order=true
SKIP_LIST: --skip-list=parser-oom.js,parser-oom2.js,stack-limit.js,regression-test-issue-2190.js,regression-test-issue-2258-2963.js,regression-test-issue-2448.js,regression-test-issue-2905.js,regression-test-issue-3785.js
BUILD_OPTIONS: --buildoptions=--stack-limit=0,--compile-flag=-fsanitize=address,--compile-flag=-m32,--compile-flag=-fno-omit-frame-pointer,--compile-flag=-fno-common,--compile-flag=-O2,--debug,--system-allocator=on,--linker-flag=-fuse-ld=gold
steps:
- uses: actions/checkout@v1
- name: Initializtaion
run: sudo apt-get install gcc-multilib
- name: ASAN - jerry-tests
run: $RUNNER --jerry-tests $SKIP_LIST $BUILD_OPTIONS -q
UBSAN_Tests:
runs-on: ubuntu-18.04
env:
UBSAN_OPTIONS: print_stacktrace=1
SKIP_LIST: --skip-list=parser-oom.js,parser-oom2.js
BUILD_OPTIONS: --buildoptions=--compile-flag=-fsanitize=undefined,--compile-flag=-m32,--compile-flag=-fno-omit-frame-pointer,--compile-flag=-fno-common,--debug,--system-allocator=on,--linker-flag=-fuse-ld=gold
steps:
- uses: actions/checkout@v1
- name: Initializtaion
run: sudo apt-get install gcc-multilib
- name: UBSAN - jerry-tests
run: $RUNNER --jerry-tests $SKIP_LIST $BUILD_OPTIONS -q

View File

@ -11,25 +11,6 @@ script: tools/run-tests.py $OPTS
# All the job definitions in the matrix.
matrix:
include:
- name: "Checks"
script:
- tools/run-tests.py --check-signed-off=travis --check-doxygen --check-vera --check-license --check-magic-strings --check-pylint
- travis_wait 40 tools/run-tests.py --check-cppcheck
addons:
apt:
packages: [doxygen, cppcheck, vera++, pylint]
- name: "Linux/x86-64 Build, Correctness & Debugger Tests"
env:
- OPTS="--quiet --jerry-tests --jerry-debugger"
- name: "Linux/x86 (cpointer-32bit) Build & Correctness Tests"
env:
- OPTS="--quiet --jerry-tests --buildoptions=--compile-flag=-m32,--cpointer-32bit=on"
addons:
apt:
packages: [gcc-multilib]
- name: "Linux/ARM Build & Correctness Tests"
env:
- OPTS="--quiet --jerry-tests --toolchain=cmake/toolchain_linux_armv7l.cmake --buildoptions=--linker-flag=-static"
@ -45,56 +26,6 @@ matrix:
- OPTS="--quiet --jerry-tests --buildoptions=--linker-flag=-static"
- TIMEOUT=300
- name: "OSX/x86-64 Build, Correctness & Unit Tests"
env:
- OPTS="--quiet --jerry-tests --unittests"
os: osx
osx_image: xcode11.4
addons:
homebrew:
packages: [cmake, cppcheck, vera++]
- name: "Build Tests"
env:
- OPTS="--buildoption-test"
addons:
apt:
packages: [gcc-multilib]
- name: "Conformance Tests - ES5.1"
env:
- OPTS="--test262"
- name: "Conformance Tests - ES2015"
env:
- OPTS="--test262-es2015 update"
- name: "Unit Tests"
env:
- OPTS="--unittests"
- name: "ASAN Tests"
env:
# Skipping maximum stack usage related tests due to 'detect_stack_use_after_return=1' ASAN option.
# For more detailed description: https://github.com/google/sanitizers/wiki/AddressSanitizerUseAfterReturn#compatibility
- OPTS="--quiet --jerry-tests --skip-list=parser-oom.js,parser-oom2.js,stack-limit.js,regression-test-issue-2190.js,regression-test-issue-2258-2963.js,regression-test-issue-2448.js,regression-test-issue-2905.js,regression-test-issue-3785.js --buildoptions=--stack-limit=0,--compile-flag=-fsanitize=address,--compile-flag=-m32,--compile-flag=-fno-omit-frame-pointer,--compile-flag=-fno-common,--compile-flag=-O2,--debug,--system-allocator=on,--linker-flag=-fuse-ld=gold"
- ASAN_OPTIONS=detect_stack_use_after_return=1:check_initialization_order=true:strict_init_order=true
- TIMEOUT=600
addons:
apt:
sources: ubuntu-toolchain-r-test
packages: [gcc-multilib]
- name: "UBSAN Tests"
env:
- OPTS="--quiet --jerry-tests --skip-list=parser-oom.js,parser-oom2.js --buildoptions=--compile-flag=-fsanitize=undefined,--compile-flag=-m32,--compile-flag=-fno-omit-frame-pointer,--compile-flag=-fno-common,--debug,--system-allocator=on,--linker-flag=-fuse-ld=gold"
- UBSAN_OPTIONS=print_stacktrace=1
- TIMEOUT=600
addons:
apt:
sources: ubuntu-toolchain-r-test
packages: [gcc-multilib]
- name: "Coverity Scan & SonarQube"
env:
# Declaration of the encrypted COVERITY_SCAN_TOKEN, created via the