Skip to content
Snippets Groups Projects
Select Git revision
  • de859e6c7c697386ac66d4b46f7285d4d6fab5e3
  • master default protected
  • prod_dlrg
  • bugifx_configure_once
  • fix_path_chaos
  • feature_mumbleIntegration
6 results

setup.py

Blame
  • Armin Co's avatar
    Armin Co authored
    Replaced the bash scripts with python scripts.
    Python is more convinient and easier to read and write.
    Makes it more flexible to apply updates.
    Added Jitsi support into the cvh-olp scripts.
    The jitsi-auto-conifg repository is not longer needed.
    0fe814d5
    History
    setup.py 2.03 KiB
    import os
    import subprocess
    from config import *
    
    def configure_swag():
        print('Configuring swag')
        # Apply configuration
        f = open(SWAG_COMPOSE_FILE+'.example', 'rt')
        data = f.read()
        f.close()
        data = data.replace('your-domain', DOMAIN)
        data = data.replace('your-subdomains', subdomains)
        data = data.replace('your-email', MAIL_ADDRESS)
        
        f = open(SWAG_COMPOSE_FILE, 'w')
        f.write(data)
        f.close()
        # Initialise containers, files and directories
        cmd_str  = 'docker-compose ' + BASE_COMPOSE_FILE + ' -f ' + SWAG_COMPOSE_FILE + ' up -d &&'
        cmd_str += 'docker-compose ' + BASE_COMPOSE_FILE + ' -f ' + SWAG_COMPOSE_FILE + ' down'
        os.system(cmd_str)
    
    def setup_jitsi():
        try:
            os.system('rm -rf jitsi')
        except:
            pass
        os.system('git clone https://github.com/jitsi/docker-jitsi-meet.git')
        os.system('mv docker-jitsi-meet jitsi')
        os.system('cp jitsi/env.example jitsi/.env')
        rc = subprocess.call('./jitsi/gen-passwords.sh .', shell=True)
        os.system('rm -f .env')
        os.system('sudo rm -rf ~/.jitsi-meet-cfg')
        os.system('mkdir -p ~/.jitsi-meet-cfg/{web/letsencrypt,transcripts,prosody,jicofo,jvb,jigasi,jibri}')
        
        f = open('jitsi/.env', 'rt')
        data = f.read()
        f.close()
        data = data.replace('#PUBLIC_URL=https://meet.example.com:8443', 'PUBLIC_URL=https://' + jitsi_subdomain + '.' + DOMAIN)
        
        f = open('.env', 'w')
        f.write(data)
        f.close()
        os.system('patch jitsi/docker-compose.yml jitsi-auto-config/docker-compose.patch')
        
        f = open('jitsi-auto-config/jitsi.subdomain.conf.example', 'rt')
        data = f.read()
        f.close()
        data = data.replace('jitsi_subdomain', jitsi_subdomain)
        data = data.replace('your_domain', DOMAIN)
    
        f = open('jitsi-auto-config/jitsi.subdomain.conf', 'w')
        f.write(data)
        f.close()
        os.system('cp jitsi-auto-config/jitsi.subdomain.conf reverse_proxy/nginx/proxy-confs/'+ jitsi_subdomain + '.subdomain.conf')
    
    if __name__ == '__main__':
        configure_swag()
    
        if use_jitsi:
            setup_jitsi()