Skip to content

Commit

Permalink
Merge pull request #115 from eseiler/infra/update_ci
Browse files Browse the repository at this point in the history
[INFRA] Update CI
  • Loading branch information
eseiler authored Jul 21, 2023
2 parents 94face7 + 2699895 commit 80040c2
Show file tree
Hide file tree
Showing 17 changed files with 285 additions and 312 deletions.
9 changes: 9 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:

- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
79 changes: 79 additions & 0 deletions .github/workflows/ci_asan.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: ASAN

on:
push:
branches:
# Push events to branches matching refs/heads/master
- 'master'
pull_request:
# Enables a manual trigger, may run on any branch
workflow_dispatch:

concurrency:
group: asan-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
TZ: Europe/Berlin

defaults:
run:
shell: bash -Eexuo pipefail {0}

jobs:
build:
name: ${{ matrix.name }}
runs-on: ubuntu-22.04
timeout-minutes: 120
if: github.repository_owner == 'xxsds' || github.event_name == 'workflow_dispatch'
strategy:
fail-fast: false
matrix:
include:
- name: "gcc13"
compiler: "gcc-13"
cxx_flags: "-std=c++23"

- name: "clang16"
compiler: "clang-16"
cxx_flags: "-std=c++2b"

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
submodules: true

- name: Setup toolchain
uses: seqan/actions/setup-toolchain@main
with:
compiler: ${{ matrix.compiler }}
ccache_size: 125M

- name: Install CMake
uses: seqan/actions/setup-cmake@main
with:
cmake: 3.12.4

- name: Configure tests
run: |
mkdir ci-build
cd ci-build
cmake .. -DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_FLAGS="-pedantic -Wall -Wextra -Werror -fsanitize=address ${{ matrix.cxx_flags }}"
make -j2 gtest_build
- name: Build tests
run: |
ccache -p
cd ci-build
make sdsl_test_targets sdsl_examples sdsl_tutorials -k -j2
ccache -s
- name: Run tests
run: |
cd ci-build
ctest . -j2 -E 'faust|moby' -R '-im'
93 changes: 93 additions & 0 deletions .github/workflows/ci_header.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
name: Header

on:
push:
branches:
# Push events to branches matching refs/heads/master
- 'master'
pull_request:
# Enables a manual trigger, may run on any branch
workflow_dispatch:

concurrency:
group: header-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
TZ: Europe/Berlin

defaults:
run:
shell: bash -Eexuo pipefail {0}

jobs:
build:
name: ${{ matrix.name }}
runs-on: ubuntu-22.04
timeout-minutes: 120
if: github.repository_owner == 'xxsds' || github.event_name == 'workflow_dispatch'
strategy:
fail-fast: false
matrix:
include:
- name: "gcc13"
compiler: "gcc-13"
build_type: Release
cxx_flags: "-std=c++23"

- name: "gcc11"
compiler: "gcc-13"
build_type: Debug
cxx_flags: "-std=c++23"

- name: "clang16"
compiler: "clang-16"
build_type: Release
cxx_flags: "-std=c++2b"

- name: "clang14"
compiler: "clang-14"
build_type: Debug
cxx_flags: "-std=c++20"

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 1
submodules: true

- name: Setup toolchain
uses: seqan/actions/setup-toolchain@main
with:
compiler: ${{ matrix.compiler }}
ccache_size: 75M

- name: Install CMake
uses: seqan/actions/setup-cmake@main
with:
cmake: 3.12.4

- name: Configure tests
run: |
mkdir ci-build
cd ci-build
cmake .. -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
-DCMAKE_CXX_FLAGS="-pedantic -Wall -Wextra -Werror ${{ matrix.cxx_flags }}" \
-DSDSL_CEREAL=1 \
-DSDSL_HEADER_TEST=ON
make -j2 gtest_build
- name: Build tests
run: |
ccache -p
cd ci-build
make sdsl_header_test -k -j2
ccache -s
- name: Run tests
run: |
cd ci-build
ctest . -j2
Loading

0 comments on commit 80040c2

Please sign in to comment.