source: client/shared/etc/init/default.py @ 1b42de9

ogClonningEnginetest-python-scriptsticket-693ticket-700
Last change on this file since 1b42de9 was 5b1449d, checked in by Antonio Emmanuel Guerrero Silva <aguerrero@…>, 8 months ago

refs #700 shared files convert to Python3

  • Property mode set to 100755
File size: 1.6 KB
Line 
1import os
2import subprocess
3import socket
4
5#!/usr/bin/env python3
6
7
8def get_ip_address():
9    return socket.gethostbyname(socket.gethostname())
10
11# Fichero de registro de incidencias (en el servidor; si no, en local).
12OPENGNSYS = os.getenv('OPENGNSYS', '/opt/opengnsys')
13OGLOGFILE = os.getenv('OGLOGFILE', f'{OPENGNSYS}/log/{get_ip_address()}.log')
14
15try:
16    with open(OGLOGFILE, 'a'):
17        pass
18except IOError:
19    OGLOGFILE = '/var/log/opengnsys.log'
20
21LOGLEVEL = 5
22
23# Matando plymount para iniciar browser o shell
24subprocess.run(['pkill', '-9', 'plymouthd'])
25
26# Arranque de OpenGnsys Client daemon (socket).
27print(os.getenv('MSG_LAUNCHCLIENT', '.'))
28
29# Indicar fichero de teclado de Qt para el idioma especificado (tipo "es.qmap").
30lang = os.getenv('LANG', '')
31if os.path.isfile(f'/usr/local/etc/{lang.split("_")[0]}.qmap'):
32    os.environ['QWS_KEYBOARD'] = f'TTY:keymap=/usr/local/etc/{lang.split("_")[0]}.qmap'
33
34ogstatus = os.getenv('ogstatus', '')
35
36if os.path.isfile(f'{OPENGNSYS}/bin/ogAdmClient') and ogstatus != 'offline':
37    # Ejecutar servicio cliente.
38    subprocess.run([f'{OPENGNSYS}/bin/ogAdmClient', '-f', f'{OPENGNSYS}/etc/ogAdmClient.cfg', '-l', OGLOGFILE, '-d', str(LOGLEVEL)])
39else:
40    OGMENU = None
41    for FILE in ['index', os.getenv('OGGROUP', ''), get_ip_address()]:
42        if os.path.isfile(f'{OPENGNSYS}/menus/{FILE}.html'):
43            OGMENU = f'{OPENGNSYS}/menus/{FILE}.html'
44            break
45    if OGMENU:
46        subprocess.run([f'{OPENGNSYS}/bin/browser', '-qws', OGMENU])
47
48# Si fallo en cliente y modo "admin", cargar shell; si no, salir.
49if os.getenv('ogactiveadmin') == 'true':
50    subprocess.run(['bash'])
Note: See TracBrowser for help on using the repository browser.