Files
pixel-streaming-session-ser…/install.py
T

43 lines
1.5 KiB
Python

import config
import powershell
import os
# config
deploy_path = config.deploy_path
git_url_session_server = config.git_url_session_server
git_url_webrtc = config.git_url_webrtc
pm2_name = config.pm2_name
if os.path.isdir(deploy_path):
print('Package already installed in: ', deploy_path)
exit(1)
# clone required repositories
powershell.run_command_no_dir('mkdir ' + deploy_path)
powershell.run_command('git clone ' + git_url_session_server, deploy_path)
powershell.run_command('git clone ' + git_url_webrtc, deploy_path)
# clone submodules
session_server_library = deploy_path + '/pixel-streaming-session-server/lib'
powershell.run_command('git submodule init', session_server_library)
powershell.run_command('git submodule update', session_server_library)
# install node_modules
session_server_root_dir = deploy_path + '/pixel-streaming-session-server'
powershell.run_command('npm install', session_server_root_dir)
powershell.run_command('npm install', deploy_path + '/pixel-streaming-webrtc/WebServers/SignallingWebServer')
# configure session server
import configure
# install pm2 for application management
powershell.run_command_no_dir('npm i -g pm2')
# start session server
powershell.run_command('pm2 start app.js --no-treekill --name ' + pm2_name, session_server_root_dir)
# add to startup
#################################################################################################################
print('\nPackage successfully deployed to: ', deploy_path, '\n')