Skip to content

Document observer requirements for state saving #722

Document observer requirements for state saving

Document observer requirements for state saving #722

Workflow file for this run

name: CI without Conan
# This workflow is triggered on pushes to the repository.
on: [push]
jobs:
linux:
name: Linux
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
build_type: [Debug, Release]
shared_libs: [SHARED_LIBS=ON, SHARED_LIBS=OFF]
timeout-minutes: 35
steps:
- uses: actions/checkout@v4
- name: Generate Dockerfile
run: |
mkdir /tmp/osp-builder-docker
cat <<EOF >/tmp/osp-builder-docker/Dockerfile
FROM debian:bookworm
RUN apt-get update && apt-get install -y --no-install-recommends \
cmake \
build-essential \
doxygen \
wget \
libboost-all-dev \
libmsgsl-dev \
libyaml-cpp-dev \
libxerces-c-dev \
libzip-dev zipcmp zipmerge ziptool
RUN wget \
--no-check-certificate \
"https://github.com/viproma/debian-fmilib/releases/download/debian%2F2.0.3-1/libfmilib2_2.0.3-1_amd64.deb" \
"https://github.com/viproma/debian-fmilib/releases/download/debian%2F2.0.3-1/libfmilib2-dev_2.0.3-1_amd64.deb"
RUN dpkg -i libfmilib2_2.0.3-1_amd64.deb libfmilib2-dev_2.0.3-1_amd64.deb
COPY entrypoint.sh /
ENTRYPOINT /entrypoint.sh
EOF
- name: Generate entrypoint.sh
run: |
cat <<'EOF' >/tmp/osp-builder-docker/entrypoint.sh
#!/bin/bash
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DBUILD_${{ matrix.shared_libs }} /mnt/source
cmake --build .
ctest --output-on-failure
EOF
chmod 0755 /tmp/osp-builder-docker/entrypoint.sh
- name: Build Docker image
run: docker build -t osp-builder /tmp/osp-builder-docker/
- name: Build cosim
run: docker run --rm -v $(pwd):/mnt/source:ro osp-builder