Skip to content

fix deadlock caused by writing multiple values to simulink provider #5

fix deadlock caused by writing multiple values to simulink provider

fix deadlock caused by writing multiple values to simulink provider #5

Workflow file for this run

name: C/C++ CI
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
runs-on: ubuntu-20.04
steps:
- name: checkout the repo
uses: actions/checkout@v3
- name: get tags
run: git fetch --tags
- name: configure bennu
run: |
sudo apt-get install --no-install-recommends -y build-essential cmake g++ gcc libasio-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev libfreetype6-dev libssl-dev libzmq5-dev
mkdir build
cd build/
cmake ../
- name: build bennu
run: |
cd build/
make -j$(nproc)
- name: test bennu
run: |
cd build/
sudo make install
sudo ldconfig
bennu-test-ep-server --d 1 >ep.out 2>&1 &
bennu-field-device --f ../data/configs/ep/dnp3-server.xml >fd-server.out 2>&1 &
bennu-field-device --f ../data/configs/ep/dnp3-client.xml >fd-client.out 2>&1 &
sleep 5
bennu-probe --c query >probe.out
grep "brkr" probe.out
sleep 10
bennu-probe --c read --t brkr >>probe.out
bennu-probe --c read --t load-power >>probe.out
sleep 3
cat probe.out
grep "brkr:true" probe.out
grep "load-power:400.5" probe.out
bennu-probe --c write --t load-breaker-toggle --s false >>probe.out
bennu-probe --c write --t load-mw-setpoint --v 999 >>probe.out
sleep 8
bennu-probe --c read --t brkr >>probe.out
bennu-probe --c read --t load-power >>probe.out
sleep 3
cat probe.out
grep "brkr:false" probe.out
grep "load-power:999" probe.out
echo -e "help\nexit" | bennu-brash >brash.out 2>&1
grep "SCEPTRE Field-Device" brash.out
- name: package bennu
run: |
cd build/
sudo make package
- name: package pybennu
run: |
sudo apt-get install --no-install-recommends -y python3-pip python3-wheel
sudo gem install fpm
cd src/pybennu
make deb > deb.log 2>&1
#make dist > dist.log 2>&1
- name: archive artifacts
uses: actions/upload-artifact@v3
with:
name: bennu artifacts
path: |
*.log
build/*.deb
src/pybennu/dist/*
- name: release bennu and pybennu - only on PR
if: github.event_name == 'pull-request'
run: |
cp build/*.deb build/bennu.deb
cp src/pybennu/dist/*.deb src/pybennu/dist/pybennu.deb
curl -F package=@build/bennu.deb https://[email protected]/sceptre/
curl -F package=@src/pybennu/dist/pybennu.deb https://[email protected]/sceptre/