beremiz

a3ec35ee94e7
Fix crash in runtime if PSK secret is missing

./Beremiz_service.py -s $PWD/psk2.txt -n beremiz /tmp/beremiz
Beremiz_service: 1.2-1378c18402c3+

Traceback (most recent call last):
File "./Beremiz_service.py", line 511, in
ensurePSK(servicename, PSKpath)
File "/home/developer/WorkData/PLC/beremiz/beremiz/runtime/Stunnel.py", line 32, in ensurePSK
PSKgen(ID, PSKpath)
File "/home/developer/WorkData/PLC/beremiz/beremiz/runtime/Stunnel.py", line 23, in PSKgen
call(restart_stunnel_cmdline)
File "/home/developer/WorkData/PLC/beremiz/beremiz/runtime/spawn_subprocess.py", line 116, in call
pid = posix_spawn.posix_spawnp(cmd[0], cmd)
File "/home/developer/.local/lib/python2.7/site-packages/posix_spawn/_impl.py", line 120, in posix_spawnp
return _posix_spawn(lib.posix_spawnp, *args, **kwargs)
File "/home/developer/.local/lib/python2.7/site-packages/posix_spawn/_impl.py", line 111, in _posix_spawn
_check_error(res, path)
File "/home/developer/.local/lib/python2.7/site-packages/posix_spawn/_impl.py", line 10, in _check_error
raise OSError(errno, os.strerror(errno), path)
OSError: [Errno 2] No such file or directory: '/etc/init.d/S50stunnel'
/* This project contains wamp client config to be loaded at runtime startup. */
./project_files/wampconf.json
wampconf.json is in "Project Files", so it is copied to runtime's working directory, and then loaded after program transfer + runtime restart.
Otherwise, wamp config file path can be forced :
./Beremiz_service.py -c /path/to/my/wampconf.json /working/dir
/* Crossbar install */
#sudo apt-get update
#sudo apt-get -y dist-upgrade
sudo apt-get -y install build-essential libssl-dev libffi-dev libreadline-dev libbz2-dev libsqlite3-dev libncurses5dev
sudo apt-get -y install python3-pip
sudo python3 -m pip install -U pip
sudo pip3 install crossbar
crossbar version
/* Start Crossbar command: */
crossbar start
/* Crossbar test router configuration is available in .crossbar directory. */
Tested on version:
:::::::::::::::::
::::: _____ __
::::: : ::::: / ___/____ ___ ___ ___ / / ___ _ ____
::::::: ::::::: / /__ / __// _ \ (_-< (_-< / _ \/ _ `// __/
::::: : ::::: \___//_/ \___//___//___//_.__/\_,_//_/
:::::
::::::::::::::::: Crossbar v18.7.2
Copyright (c) 2013-2018 Crossbar.io Technologies GmbH, licensed under AGPL 3.0.
Crossbar.io : 18.7.2
Autobahn : 18.7.1
Twisted : 18.7.0-EPollReactor
LMDB : 0.94/lmdb-0.9.22
Python : 3.6.6/CPython
Frozen executable : no
Operating system : Linux-4.16.0-2-rt-amd64-x86_64-with-debian-buster-sid
Host machine : x86_64
Release key : RWS9T4NltFjmKSMbEtETnOMxRjLhOEZ6e80T5MYzTTh/+NP9Jk20sJmA