Skip to content

Reuse code for MNA matrix stamp operations (#297) #20

Reuse code for MNA matrix stamp operations (#297)

Reuse code for MNA matrix stamp operations (#297) #20

name: Build & Test RockyLinux
on:
push:
## Build ##
jobs:
linux-rocky:
name: Build on Rocky Linux
runs-on: ubuntu-latest
container: sogno/dpsim:dev-rocky
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Create Build Environment
run: mkdir build
- name: Configure CMake
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake $GITHUB_WORKSPACE -DFETCH_SPDLOG=ON
- name: Build every target
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake --build .
env:
MAKEFLAGS: "-j2"
- name: Cache build directory
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/build
key: build-cache-rocky-${{ github.sha }}
linux-rocky-clang:
name: Build on Rocky Linux using Clang
runs-on: ubuntu-latest
container: sogno/dpsim:dev-rocky
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Create Build Environment
run: mkdir build
- name: Configure CMake
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake $GITHUB_WORKSPACE -DFETCH_SPDLOG=ON -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DWITH_PYBIND=OFF
- name: Build every target
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake --build .
env:
MAKEFLAGS: "-j2"
- name: Cache build directory
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/build
key: build-cache-rocky-${{ github.sha }}
profiling:
name: Build with Profiling options
runs-on: ubuntu-latest
container: sogno/dpsim:dev-rocky
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: recursive
- name: Create Build Environment
run: mkdir build
- name: Configure CMake
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake $GITHUB_WORKSPACE -DWITH_PROFILING=ON -DWITH_ASAN=ON -DWITH_CUDA=OFF -DFETCH_SPDLOG=ON
- name: Build every target
shell: bash
working-directory: ${{ github.workspace }}/build
run: cmake --build .
env:
MAKEFLAGS: "-j2"
- name: Cache build directory
uses: actions/cache@v3
with:
path: ${{ github.workspace }}/build
key: build-cache-rocky-profiling-${{ github.sha }}
## Tests ##
test-examples-1:
name: Test Examples 1/2
needs: [profiling]
uses: sogno-platform/dpsim/.github/workflows/run_and_profile_example.yaml@master
with:
path: ./build/dpsim/examples/cxx/WSCC_9bus_mult_decoupled
name: WSCC_9bus_mult_decoupled
test-examples-2:
name: Test Examples 2/2
needs: [profiling]
uses: sogno-platform/dpsim/.github/workflows/run_and_profile_example.yaml@master
with:
path: ./build/dpsim/examples/cxx/WSCC_9bus_mult_coupled
name: WSCC_9bus_mult_coupled