end my suffering

This commit is contained in:
Kreyren 2020-02-11 19:39:10 +00:00
parent 5a48425858
commit a30ca16a90
6 changed files with 219 additions and 84 deletions

@ -1,5 +1,5 @@
# Workflow for CPP
name: CPP
# Workflow for cpp
name: cpp
# Relevant to events - https://help.github.com/en/actions/automating-your-workflow-with-github-actions/events-that-trigger-workflows
on:
@ -15,30 +15,38 @@ jobs:
steps:
- uses: actions/checkout@v2
- name: Installing dependencies..
run: if ! apt list --installed | grep -qP ".*cppcheck.*"; then apt install -y cppcheck; fi
run: if ! apt list --installed | grep -qP ".*cppcheck.*"; then sudo apt install -y cppcheck; fi
- name: Linting..
# FIXME: False triggers on files which names continues after set extension
run: cd "$GITHUB_WORKSPACE" && for file in $(git ls-tree --name-only -r ${{ github.sha }} | grep '.*\.cpp'); do cppcheck "$file"; done
# Kernel specific builds
build-gcc-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest]
build-macos-gcc-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-cpp
build-clang-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest]
build-windows-gcc-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-cpp
build-macos-clang-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
build-windows-clang-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
# Docker builds
## Debian - testing
build-gcc-cpp-debian:
runs-on: ubuntu-latest
steps:
@ -53,7 +61,7 @@ jobs:
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
## Fedora - latest
build-gcc-cpp-fedora:
runs-on: ubuntu-latest
steps:
@ -68,43 +76,102 @@ jobs:
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
## Archlinux - latest
build-gcc-cpp-archlinux:
runs-on: ubuntu-latest
steps:
- uses: docker://archlinux/latest:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-cpp
build-clang-cpp-archlinux:
runs-on: ubuntu-latest
steps:
- uses: docker://archlinux/latest:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
## Gentoo stage3-amd64
build-gcc-cpp-gentoo:
runs-on: ubuntu-latest
steps:
- uses: docker://gentoo/stage3-amd64:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-cpp
build-clang-cpp-gentoo:
runs-on: ubuntu-latest
steps:
- uses: docker://agentoo/stage3-amd64:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
## Exherbo
build-gcc-cpp-exherbo:
runs-on: ubuntu-latest
steps:
- uses: docker://exherbo/exherbo_ci:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-cpp
build-clang-cpp-exherbo:
runs-on: ubuntu-latest
steps:
- uses: docker://exherbo/exherbo_ci:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-cpp
# Run tests
check-gcc-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
## Exherbo (Linux representative)
check-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: running tests..
run: make check-gcc-cpp
check-clang-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
- uses: docker://exherbo/exherbo_ci:latest
- run: make check-gcc-cpp
check-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: running tests..
run: make check-clang-cpp
- uses: docker://exherbo/exherbo_ci:latest
- run: make check-gcc-cpp
## Windows
check-windows-gcc-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- run: make check-gcc-cpp
check-windows-clang-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- run: make check-clang-cpp
## Darwin
check-darwin-gcc-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- run: make check-gcc-cpp
check-darwin-clang-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- run: make check-clang-cpp
# Benchmarks
bench-gcc-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
## Exherbo
bench-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: docker://exherbo/exherbo_ci:latest
- name: running benchmarks..
run: make bench-gcc-cpp
bench-clang-cpp:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
bench-exherbo-clang-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: docker://exherbo/exherbo_ci:latest
- name: running benchmarks..
run: make bench-clang-cpp

@ -16,4 +16,5 @@ jobs:
- name: Installing dependencies..
run: if ! apt list --installed 2>/dev/null | grep -q ".*shellcheck.*"; then apt install -y shellcheck; fi
- name: Linting..
# FIXME: False triggers on files which names continues after `.bash` i.e `something.bash.something`
run: cd "$GITHUB_WORKSPACE" && for file in $(git ls-tree --name-only -r ${{ github.sha }} | grep '.*\.bash'); do shellcheck --external-sources --shell=bash "$file";done

@ -17,6 +17,7 @@ jobs:
- name: Installing dependencies..
run: if ! apt-list --installed cppcheck | grep -q ".*cppcheck.*"; then sudo apt install -y cppcheck; fi
- name: Linting..
# FIXME: False triggers on files which names continues after set extension
run: cd "$GITHUB_WORKSPACE" && for file in $(git ls-tree --name-only -r ${{ github.sha }} | grep '.*\.c'); do cppcheck "$file"; done
## Valgrind test on gcc
valgrind-gcc:
@ -40,93 +41,159 @@ jobs:
run: |
make build-clang-c
valgrind --leak-check=yes -v build/build-clang-c/zernit-clang-c -h -unexpected
# Kernel specific builds
macos-gcc-build:
# Kernel specific builds
build-macos-gcc-c:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Building..
- name: building..
run: make build-gcc-c
windows-gcc-build:
build-windows-gcc-c:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-c
build-macos-clang-c:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Building..
run: make build-gcc-c
ubuntu-gcc-build:
runs-on: ubuntu-latest
- name: building..
run: make build-clang-c
build-windows-clang-c:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- name: Building..
run: make build-gcc-c
- name: building..
run: make build-clang-c
# Docker builds
## Debian - testing
build-gcc-c-debian:
runs-on: ubuntu-latest
steps:
- uses: docker://debian/testing:latest
- uses: actions/checkout@v2
- name: Building..
- name: building..
run: make build-gcc-c
build-clang-c-debian:
runs-on: ubuntu-latest
steps:
- uses: docker://debian/testing:latest
- uses: actions/checkout@v2
- name: Building..
- name: building..
run: make build-clang-c
## Fedora - latest
build-gcc-c-fedora:
runs-on: ubuntu-latest
steps:
- uses: docker://fedora/latest:latest
- uses: actions/checkout@v2
- name: Building..
- name: building..
run: make build-gcc-c
build-clang-c-fedora:
runs-on: ubuntu-latest
steps:
- uses: docker://fedora/latest:latest
- uses: actions/checkout@v2
- name: Building..
- name: building..
run: make build-clang-c
## Archlinux - latest
build-gcc-c-archlinux:
runs-on: ubuntu-latest
steps:
- uses: docker://archlinux/latest:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-c
build-clang-c-archlinux:
runs-on: ubuntu-latest
steps:
- uses: docker://archlinux/latest:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-c
## Gentoo stage3-amd64
build-gcc-c-gentoo:
runs-on: ubuntu-latest
steps:
- uses: docker://gentoo/stage3-amd64:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-c
build-clang-c-gentoo:
runs-on: ubuntu-latest
steps:
- uses: docker://agentoo/stage3-amd64:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-c
## Exherbo
build-gcc-c-exherbo:
runs-on: ubuntu-latest
steps:
- uses: docker://exherbo/exherbo_ci:latest
- uses: actions/checkout@v2
- name: building..
run: make build-gcc-c
build-clang-c-exherbo:
runs-on: ubuntu-latest
steps:
- uses: docker://exherbo/exherbo_ci:latest
- uses: actions/checkout@v2
- name: building..
run: make build-clang-c
# Run tests
check-gcc-c:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
## Exherbo (Linux representative)
check-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Running tests..
run: make check-gcc-c
check-clang-c:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
- uses: docker://exherbo/exherbo_ci:latest
- run: make check-gcc-c
check-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Running tests..
run: make check-clang-c
- uses: docker://exherbo/exherbo_ci:latest
- run: make check-gcc-c
## Windows
check-windows-gcc-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- run: make check-gcc-c
check-windows-clang-cpp:
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- run: make check-clang-c
## Darwin
check-darwin-gcc-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- run: make check-gcc-c
check-darwin-clang-cpp:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- run: make check-clang-c
# Benchmarks
bench-gcc-c:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
steps:
- uses: actions/checkout@v2
- name: Running benchmarks..
run: make bench-gcc-c
bench-clang-c:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [macos-latest, windows-latest, ubuntu-latest]
## Exherbo
bench-exherbo-gcc-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: docker://exherbo/exherbo_ci:latest
- name: running benchmarks..
run: make bench-clang-c
run: make bench-gcc-cpp
bench-exherbo-clang-cpp:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: docker://exherbo/exherbo_ci:latest
- name: running benchmarks..
run: make bench-clang-cpp

@ -36,4 +36,5 @@ jobs:
- name: Test with pytest
run: |
pip install pytest
# FIXME: False triggers on files which names continues after set extension
cd "$GITHUB_WORKSPACE" && for file in $(git ls-tree --name-only -r ${{ github.sha }} | grep '.*\.py'); do pytest "$file"; done

@ -16,4 +16,5 @@ jobs:
- name: Installing dependencies..
run: if ! apt list --installed | grep -qP ".*shellcheck.*"; then apt install -y shellcheck; fi
- name: Linting..
# FIXME: False triggers on files which names continues after `.sh` i.e `something.sh.something`
run: cd "$GITHUB_WORKSPACE" && for file in $(git ls-tree --name-only -r ${{ github.sha }} | grep '.*\.sh'); do shellcheck --external-sources --shell=sh "$file";done

@ -6,9 +6,7 @@ on:
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v1
with: