Newer
Older
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import utils

Florent Thiery
committed
import os
CONTENT = [
"https://www.ubicast.eu/media/downloads/TradeshowDemoKit/medical_education.zip",
"https://www.ubicast.eu/media/downloads/TradeshowDemoKit/rich-media-sneak-peek.zip"
]
def setup(interactive=True):

Florent Thiery
committed
if os.path.exists('/etc/nginx/sites-enabled/mediaserver-msuser.conf'):

Florent Thiery
committed
cmds = list()
# deploy nginx SSL certificates
domains = []
conf_name_items = ["MS_SERVER_NAME", "MONITOR_SERVER_NAME", "CM_SERVER_NAME", "CACHE_SERVER_NAME"]
for name in conf_name_items:
domain = utils.get_conf(name)
if utils.get_conf(name):
domains.append(domain)
utils.mkcert(domains, ecc=False)
with open("/etc/nginx/conf.d/ssl_certificate.conf", "w") as ssl_conf_fh:
ssl_conf_fh.writelines([
"ssl_certificate /etc/ssl/envsetup/cert.pem;",
"ssl_certificate_key /etc/ssl/envsetup/key.pem;"

Florent Thiery
committed
cmds.append("systemctl restart nginx")

Florent Thiery
committed
options = {
"ms_url": utils.get_conf('MS_SERVER_NAME'),
"ms_apikey": utils.get_conf('MS_API_KEY')
}
cmd_template = "./publish_zip_by_url.py -w https://{ms_url} -u %s -a {ms_apikey}".format(**options)
#https://192.168.43.72/api/v2/search/?search=medical
for c in CONTENT:
cmd = cmd_template % c
cmds.append(cmd)

Florent Thiery
committed
utils.run_commands(cmds)

Florent Thiery
committed
if os.path.exists('/etc/miris/netcapture.json'):

Florent Thiery
committed
cmds = list()

Florent Thiery
committed
with open('/etc/miris/netcapture.json', 'r') as f:
c = json.load(f)
c['campusmanager_check_ssl'] = False
with open('/etc/miris/netcapture.json', 'w') as f:
json.dump(c, f)

Florent Thiery
committed
'rsync -r mirisconf/ /etc/miris/conf',
'chgrp -R video /etc/miris/conf',
'chmod -R 774 /etc/miris/conf',

Florent Thiery
committed
if subprocess.getstatusoutput("netcapturectl ls")[0] != 0:
# start netcapture without hw accel

Florent Thiery
committed
cmds.append('netcapturectl add')
utils.run_commands(cmds)
# try to enable hw accel if available
subprocess.getstatusoutput("apt install -y vainfo")
if subprocess.getstatusoutput("vainfo")[0] == 0:

Florent Thiery
committed
cmds = list()

Florent Thiery
committed
# hw acceleration requires boot-time module options so a reboot will be needed
c['enable_hw_acceleration'] = True
if subprocess.getstatusoutput('dmesg | grep "GuC: Loaded"')[0] != 0:
cmds.append('echo "options i915 enable_guc_loading=1 enable_guc_submission=1" > /etc/modprobe.d/netcapture.conf')
cmds.append('update-initramfs -u')
print('A reboot is required')
with open('/etc/miris/netcapture.json', 'w') as f:
json.dump(c, f)

Florent Thiery
committed
utils.run_commands(cmds)