diff --git a/modules/rhizo_base/files/etc/sv/meas-json/log/run b/modules/rhizo_base/files/etc/sv/meas-json/log/run new file mode 100755 index 0000000..423a6de --- /dev/null +++ b/modules/rhizo_base/files/etc/sv/meas-json/log/run @@ -0,0 +1,4 @@ +#!/bin/sh +LOG_FOLDER=/var/log/meas-json +mkdir -p $LOG_FOLDER +exec svlogd -tt $LOG_FOLDER diff --git a/modules/rhizo_base/files/etc/sv/meas-json/run b/modules/rhizo_base/files/etc/sv/meas-json/run new file mode 100755 index 0000000..14b2915 --- /dev/null +++ b/modules/rhizo_base/files/etc/sv/meas-json/run @@ -0,0 +1,4 @@ +#!/bin/bash +exec 2>&1 + +exec /usr/bin/stdbuf -oL /usr/bin/meas_json > /tmp/json_pipe diff --git a/modules/rhizo_base/files/etc/sv/meas-web/run b/modules/rhizo_base/files/etc/sv/meas-web/run index fc60881..be45aaa 100755 --- a/modules/rhizo_base/files/etc/sv/meas-web/run +++ b/modules/rhizo_base/files/etc/sv/meas-web/run @@ -1,3 +1,8 @@ -#!/bin/sh +#!/bin/bash exec 2>&1 -exec /usr/bin/websocketd --staticdir=/var/www/meas --port=8080 /usr/bin/stdbuf -oL /usr/bin/meas_json + +if [ ! -p /tmp/json_pipe ] ; then + mkfifo /tmp/json_pipe +fi + +exec /usr/bin/websocketd --staticdir=/var/www/meas --port=8080 cat /tmp/json_pipe diff --git a/modules/rhizo_base/manifests/runit.pp b/modules/rhizo_base/manifests/runit.pp index 41cd5a6..d3ecb6c 100644 --- a/modules/rhizo_base/manifests/runit.pp +++ b/modules/rhizo_base/manifests/runit.pp @@ -77,4 +77,10 @@ class rhizo_base::runit { require => [ File['/etc/sv'], Package['websocketd'] ], } + file { '/etc/service/meas-json': + ensure => link, + target => '/etc/sv/meas-json', + require => [ File['/etc/sv'] ], + } + }