Franziska Kunsmann
f8bbe00d47
All checks were successful
bundlewrap/pipeline/head This commit looks good
83 lines
2.1 KiB
Python
83 lines
2.1 KiB
Python
repo.libs.tools.require_bundle(node, 'systemd')
|
|
|
|
streams = {
|
|
's1': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s1',
|
|
'port': 15001,
|
|
},
|
|
's2': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s2',
|
|
'port': 15002,
|
|
},
|
|
's3': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s3',
|
|
'port': 15003,
|
|
},
|
|
's4': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s4',
|
|
'port': 15004,
|
|
},
|
|
's5': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s5',
|
|
'port': 15005,
|
|
},
|
|
's6': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s6',
|
|
'port': 15006,
|
|
},
|
|
's23': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s23',
|
|
'port': 15023,
|
|
},
|
|
's89': {
|
|
'url': 'http://live.ber.c3voc.de:7999/s89',
|
|
'port': 15089,
|
|
},
|
|
}
|
|
|
|
files = {}
|
|
svc_systemd = {}
|
|
|
|
users = {
|
|
'voc': {
|
|
'home': '/opt/voc-loudness-monitor',
|
|
},
|
|
}
|
|
|
|
for stream_id, config in streams.items():
|
|
config['id'] = stream_id
|
|
|
|
files['/opt/voc-loudness-monitor/loudness_{}.sh'.format(stream_id)] = {
|
|
'source': 'loudness.sh',
|
|
'content_type': 'mako',
|
|
'context': config,
|
|
'mode': '0755',
|
|
'triggers': {
|
|
'svc_systemd:loudness_{}:restart'.format(stream_id),
|
|
},
|
|
'needs': {
|
|
'pkg_apt:ffmpeg',
|
|
},
|
|
}
|
|
files['/etc/systemd/system/loudness_{}.service'.format(stream_id)] = {
|
|
'source': 'loudness.service',
|
|
'content_type': 'mako',
|
|
'context': config,
|
|
'needs': {
|
|
'file:/opt/voc-loudness-monitor/loudness_{}.sh'.format(stream_id),
|
|
},
|
|
'triggers': {
|
|
'action:systemd-reload',
|
|
'svc_systemd:loudness_{}:restart'.format(stream_id),
|
|
},
|
|
}
|
|
|
|
svc_systemd['loudness_{}'.format(stream_id)] = {
|
|
'needs': {
|
|
'file:/etc/systemd/system/loudness_{}.service'.format(stream_id),
|
|
},
|
|
# These units are designed to fail if the assigned stream fails. No need
|
|
# to restart them on every bw run.
|
|
# Downside of this: services must be started once they are applied.
|
|
'running': None,
|
|
}
|