Terminal emulator with all the bells and whistles
https://www.enlightenment.org
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
289 lines
8.9 KiB
289 lines
8.9 KiB
version: 2.1 |
|
|
|
jobs: |
|
checkout_code: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- run: | |
|
cd /terminology |
|
git pull --ff-only |
|
if [ -n "$CIRCLE_PR_NUMBER" ]; then |
|
git fetch origin pull/$CIRCLE_PR_NUMBER/head |
|
else |
|
if [ -n "$CIRCLE_SHA1" ]; then |
|
git reset --hard $CIRCLE_SHA1 |
|
else |
|
git reset --hard origin/master |
|
fi |
|
fi |
|
- save_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
paths: |
|
- /terminology |
|
build_and_test_debug_gcc_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with GCC |
|
environment: |
|
CFLAGS: -O0 -g |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true -Dfuzzing=true -Db_coverage=true -Dbuildtype=debug . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
- run: |
|
name: codecov |
|
command: | |
|
cd /terminology/build/ |
|
cd src/bin |
|
rm -fr *@@terminology@exe *@@tyalpha@exe *@@tybg@exe *@@tycat@exe |
|
rm -fr *@@tyfuzz@exe *@@tyls@exe *@@typop@exe *@@tyq@exe |
|
rm -fr *@@tysend@exe |
|
cd /terminology/build/ |
|
curl -s https://codecov.io/bash > .codecov |
|
chmod +x .codecov |
|
sed -i.bak 's/execdir/exec/' .codecov |
|
./.codecov -Z |
|
build_and_test_release_gcc_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with GCC |
|
environment: |
|
CFLAGS: -O0 -g |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true -Dbuildtype=release . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
build_full_clang_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true -Dfuzzing=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
build_and_test_clang_asan_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=address -fno-sanitize-recover=address |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
build_and_test_clang_msan_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=memory -fno-sanitize-recover=memory |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
build_and_test_clang_lsan_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=leak -fno-sanitize-recover=leak |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
build_and_test_clang_isan_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=integer -fno-sanitize-recover=integer |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
build_and_test_clang_ubsan_efl_latest: |
|
docker: |
|
- image: borisfaure/terminology-ci:latest |
|
environment: |
|
- CC: clang |
|
- CFLAGS: -O0 -pipe -g -fno-omit-frame-pointer -fsanitize=undefined -fno-sanitize-recover=undefined |
|
- COLUMNS: 150 |
|
- TERM: xterm-256color |
|
steps: |
|
- restore_cache: |
|
key: checkout-{{ .Environment.CIRCLE_SHA1 }} |
|
- run: |
|
name: Install EFL |
|
command: apk add /pkg/efl-latest.apk /pkg/efl-dev-latest.apk |
|
- run: |
|
name: Compile with Clang |
|
command: | |
|
cd /terminology |
|
meson -Dnls=false -Dtests=true . build |
|
meson configure build |
|
cd build |
|
ninja -j4 |
|
- run: |
|
name: Launch tests |
|
command: | |
|
cd /terminology |
|
tests/run_tests.sh -v -t build/src/bin/tytest -r tests/tests.results -d tests/ |
|
build/src/bin/tytest dummy |
|
build/src/bin/tytest all |
|
path: /terminology |
|
workflows: |
|
version: 2 |
|
build-and-deploy: |
|
jobs: |
|
- checkout_code |
|
- build_and_test_debug_gcc_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_and_test_release_gcc_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_full_clang_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_and_test_clang_asan_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_and_test_clang_msan_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_and_test_clang_lsan_efl_latest: |
|
requires: |
|
- checkout_code |
|
- build_and_test_clang_ubsan_efl_latest: |
|
requires: |
|
- checkout_code
|
|
|