|
TiledViz
|
![]() |
Public Member Functions | |
| __init__ (self, containerFlask, userflask, nbTiles, debug, ConnectNum, POSTGRES_HOST=POSTGRES_HOST, POSTGRES_IP=POSTGRES_IP, POSTGRES_PORT=POSTGRES_PORT, POSTGRES_DB=POSTGRES_DB, POSTGRES_USER=POSTGRES_USER, POSTGRES_PASSWORD=POSTGRES_PASSWORD) | |
| run (self, containerFlask, userflask, nbTiles, debug, ConnectNum, POSTGRES_HOST=POSTGRES_HOST, POSTGRES_IP=POSTGRES_IP, POSTGRES_PORT=POSTGRES_PORT, POSTGRES_DB=POSTGRES_DB, POSTGRES_USER=POSTGRES_USER, POSTGRES_PASSWORD=POSTGRES_PASSWORD) | |
| get_nodesjson (self) | |
| callfunction (self, myfunc) | |
| updateScripts (self) | |
| killTunnel (self) | |
| startActionConnection (self) | |
| quitConnection (self) | |
| connect (self) | |
| action (self, callfunct) | |
| isalive (self) | |
| grepLog (self, nbLines, re_searchstr) | |
Public Attributes | |
| str | threadName = "TVConnect%s" % (ConnectNum) |
| ConnectNum = ConnectNum | |
| thread | |
| str | user = "myuser" |
| str | home = '/home/'+self.user |
| debug = debug | |
| userflask = userflask | |
| oldtime = time.time() | |
| nbTiles = nbTiles | |
| str | name = "connectiondock"+str(Connections[self.ConnectNum]["connectionid"]) |
| tilesetId = int(Connections[self.ConnectNum]["tilesetid"]) | |
| connectionId = int(Connections[self.ConnectNum]["connectionid"]) | |
| bool | hasQuit = False |
| containerFlask = containerFlask | |
| IPFlask = self.containerFlask.attrs["NetworkSettings"]["Networks"]["bridge"]["IPAddress"] | |
| int | websockifyPID = -1 |
| list | call_list = [] |
| str | dir = '/tmp/'+self.name |
| PORTssh = s.getsockname()[1] | |
| list | commandConnect = [str(self.connectionId),POSTGRES_HOST,POSTGRES_PORT,POSTGRES_DB,POSTGRES_USER,POSTGRES_PASSWORD,'-r',CONNECTION_RESOL,'-u',str(os.getuid()),'-g',str(os.getgid()),'-p',str(self.PORTssh),'-d'] |
| bool | cont_auto_remove = False |
| dict | postgresHost = {POSTGRES_HOST:POSTGRES_IP} |
| dict | listPortsTiles = {str(self.PORTssh)+'/tcp':('0.0.0.0',self.PORTssh)}; |
| list | listPorts = [self.PORTssh] |
| actionPort = ActionPort+self.ConnectNum | |
| dict | listConnectPorts = self.listPortsTiles|{f"{ActionPort}/tcp":('0.0.0.0',self.actionPort)} |
| containerConnect | |
| daterun = datetime.datetime.now() | |
| password = info_passwd.group("passwd") | |
| str | flaskusr = "connect"+str(self.connectionId) |
| LogAddUser = container_exec_out(self.containerFlask, commandAdduser) | |
| LogAuthKey = container_exec_out(self.containerConnect, commandAuthKey) | |
| LogAuthorized_key = re.sub(r'\n',r'',self.LogAuthKey) | |
| LogBuildSsh = container_exec_out(self.containerFlask, commandBuildSsh,user=self.flaskusr) | |
| LogTestFreePort = container_exec_out(self.containerFlask, commandTestFreePort,user=self.flaskusr) | |
| ConnectionDB = session.query(models.Connections).filter(models.Connections.id == int(self.connectionId)).one() | |
| TileSetDB = session.query(models.TileSets).filter_by(id=self.tilesetId).one() | |
| tunnel_script = os.path.join(self.home,".vnc","tunnel_flask") | |
| str | tunnel_command = "ssh -4 -T -N -nf -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -R 0.0.0.0:"+str(internPort)+":localhost:5902 "+self.flaskusr+"@"+self.IPFlask+" &" |
| LogScrTunnel = self.containerConnect.exec_run(cmd=scriptTunnel,user=self.user,detach=True) | |
| LogModTunnel = self.containerConnect.exec_run(cmd="chmod u+x "+self.tunnel_script,user=self.user,detach=True) | |
| kill_tunnel_script = os.path.join(self.home,".vnc","kill_tunnel_flask") | |
| LogBuildVNC = container_exec_out(self.containerFlask, commandBuildVNC,user=self.flaskusr) | |
| str | dir_out = "TVFiles/"+str(self.ConnectionDB.id_users)+"/"+str(self.ConnectionDB.id) |
| LogTestOldWebsockify = self.containerFlask.exec_run(cmd=commandTestOldWebsockify,user="root") | |
| LogKillOldWebsockify = self.containerFlask.exec_run(cmd=commandKillOldWebsockify,user="root") | |
| SSLpublic = os.getenv('SSLpublic') | |
| SSLprivate = os.getenv('SSLprivate') | |
| LogLaunchWebsockify = self.containerFlask.exec_run(cmd=commandLaunchWebsockify,user="root",detach=True) | |
| LogWebsockifyPID = container_exec_out(self.containerFlask, commandWebsockifyPID,user=self.flaskusr) | |
| dict | listPortsTilesIE = {} |
| LogPut = self.containerConnect.put_archive(path=self.home, data=filetar) | |
| bool | action_OK = False |
| bool | nodes_ok = False |
| LogTunnel = self.containerConnect.exec_run(cmd="sh -c "+self.kill_tunnel_script,user=self.user,detach=True) | |
| ActionConnect = sock.client(self.actionPort) | |
| LogKillWebsockify = container_exec_out(self.containerFlask,commandKillWebsockify,user="root") | |
| LogRmUser = container_exec_out(self.containerFlask, commandRmuser) | |
| Logs = str(self.containerConnect.logs(since=int(self.oldtime),tail=nbLines)) | |
Protected Attributes | |
| _stop_event = threading.Event() | |
Definition at line 574 of file TVSecure.py.
| TVSecure.ConnectionDocker.__init__ | ( | self, | |
| containerFlask, | |||
| userflask, | |||
| nbTiles, | |||
| debug, | |||
| ConnectNum, | |||
| POSTGRES_HOST = POSTGRES_HOST, | |||
| POSTGRES_IP = POSTGRES_IP, | |||
| POSTGRES_PORT = POSTGRES_PORT, | |||
| POSTGRES_DB = POSTGRES_DB, | |||
| POSTGRES_USER = POSTGRES_USER, | |||
| POSTGRES_PASSWORD = POSTGRES_PASSWORD ) |
Definition at line 576 of file TVSecure.py.
| TVSecure.ConnectionDocker.action | ( | self, | |
| callfunct ) |
Definition at line 1302 of file TVSecure.py.
| TVSecure.ConnectionDocker.callfunction | ( | self, | |
| myfunc ) |
Definition at line 1148 of file TVSecure.py.
| TVSecure.ConnectionDocker.connect | ( | self | ) |
Definition at line 1288 of file TVSecure.py.
| TVSecure.ConnectionDocker.get_nodesjson | ( | self | ) |
Definition at line 1055 of file TVSecure.py.
| TVSecure.ConnectionDocker.grepLog | ( | self, | |
| nbLines, | |||
| re_searchstr ) |
Definition at line 1357 of file TVSecure.py.
| TVSecure.ConnectionDocker.isalive | ( | self | ) |
Definition at line 1349 of file TVSecure.py.
| TVSecure.ConnectionDocker.killTunnel | ( | self | ) |
Definition at line 1199 of file TVSecure.py.
| TVSecure.ConnectionDocker.quitConnection | ( | self | ) |
Definition at line 1220 of file TVSecure.py.
| TVSecure.ConnectionDocker.run | ( | self, | |
| containerFlask, | |||
| userflask, | |||
| nbTiles, | |||
| debug, | |||
| ConnectNum, | |||
| POSTGRES_HOST = POSTGRES_HOST, | |||
| POSTGRES_IP = POSTGRES_IP, | |||
| POSTGRES_PORT = POSTGRES_PORT, | |||
| POSTGRES_DB = POSTGRES_DB, | |||
| POSTGRES_USER = POSTGRES_USER, | |||
| POSTGRES_PASSWORD = POSTGRES_PASSWORD ) |
Definition at line 594 of file TVSecure.py.
| TVSecure.ConnectionDocker.startActionConnection | ( | self | ) |
Definition at line 1206 of file TVSecure.py.
| TVSecure.ConnectionDocker.updateScripts | ( | self | ) |
Definition at line 1153 of file TVSecure.py.
|
protected |
Definition at line 589 of file TVSecure.py.
| TVSecure.ConnectionDocker.action_OK = False |
Definition at line 1014 of file TVSecure.py.
| TVSecure.ConnectionDocker.ActionConnect = sock.client(self.actionPort) |
Definition at line 1211 of file TVSecure.py.
| TVSecure.ConnectionDocker.actionPort = ActionPort+self.ConnectNum |
Definition at line 691 of file TVSecure.py.
| TVSecure.ConnectionDocker.call_list = [] |
Definition at line 619 of file TVSecure.py.
| TVSecure.ConnectionDocker.commandConnect = [str(self.connectionId),POSTGRES_HOST,POSTGRES_PORT,POSTGRES_DB,POSTGRES_USER,POSTGRES_PASSWORD,'-r',CONNECTION_RESOL,'-u',str(os.getuid()),'-g',str(os.getgid()),'-p',str(self.PORTssh),'-d'] |
Definition at line 642 of file TVSecure.py.
| TVSecure.ConnectionDocker.ConnectionDB = session.query(models.Connections).filter(models.Connections.id == int(self.connectionId)).one() |
Definition at line 823 of file TVSecure.py.
| TVSecure.ConnectionDocker.connectionId = int(Connections[self.ConnectNum]["connectionid"]) |
Definition at line 611 of file TVSecure.py.
| TVSecure.ConnectionDocker.ConnectNum = ConnectNum |
Definition at line 582 of file TVSecure.py.
| TVSecure.ConnectionDocker.cont_auto_remove = False |
Definition at line 643 of file TVSecure.py.
| TVSecure.ConnectionDocker.containerConnect |
Definition at line 710 of file TVSecure.py.
| TVSecure.ConnectionDocker.containerFlask = containerFlask |
Definition at line 614 of file TVSecure.py.
| TVSecure.ConnectionDocker.daterun = datetime.datetime.now() |
Definition at line 733 of file TVSecure.py.
| TVSecure.ConnectionDocker.debug = debug |
Definition at line 600 of file TVSecure.py.
| TVSecure.ConnectionDocker.dir = '/tmp/'+self.name |
Definition at line 622 of file TVSecure.py.
| TVSecure.ConnectionDocker.dir_out = "TVFiles/"+str(self.ConnectionDB.id_users)+"/"+str(self.ConnectionDB.id) |
Definition at line 874 of file TVSecure.py.
| str TVSecure.ConnectionDocker.flaskusr = "connect"+str(self.connectionId) |
Definition at line 761 of file TVSecure.py.
| bool TVSecure.ConnectionDocker.hasQuit = False |
Definition at line 612 of file TVSecure.py.
| str TVSecure.ConnectionDocker.home = '/home/'+self.user |
Definition at line 599 of file TVSecure.py.
| TVSecure.ConnectionDocker.IPFlask = self.containerFlask.attrs["NetworkSettings"]["Networks"]["bridge"]["IPAddress"] |
Definition at line 615 of file TVSecure.py.
| TVSecure.ConnectionDocker.kill_tunnel_script = os.path.join(self.home,".vnc","kill_tunnel_flask") |
Definition at line 842 of file TVSecure.py.
| dict TVSecure.ConnectionDocker.listConnectPorts = self.listPortsTiles|{f"{ActionPort}/tcp":('0.0.0.0',self.actionPort)} |
Definition at line 692 of file TVSecure.py.
| TVSecure.ConnectionDocker.listPorts = [self.PORTssh] |
Definition at line 664 of file TVSecure.py.
| TVSecure.ConnectionDocker.listPortsTiles = {str(self.PORTssh)+'/tcp':('0.0.0.0',self.PORTssh)}; |
Definition at line 663 of file TVSecure.py.
| TVSecure.ConnectionDocker.listPortsTilesIE = {} |
Definition at line 943 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogAddUser = container_exec_out(self.containerFlask, commandAdduser) |
Definition at line 770 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogAuthKey = container_exec_out(self.containerConnect, commandAuthKey) |
Definition at line 781 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogAuthorized_key = re.sub(r'\n',r'',self.LogAuthKey) |
Definition at line 782 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogBuildSsh = container_exec_out(self.containerFlask, commandBuildSsh,user=self.flaskusr) |
Definition at line 794 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogBuildVNC = container_exec_out(self.containerFlask, commandBuildVNC,user=self.flaskusr) |
Definition at line 863 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogKillOldWebsockify = self.containerFlask.exec_run(cmd=commandKillOldWebsockify,user="root") |
Definition at line 884 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogKillWebsockify = container_exec_out(self.containerFlask,commandKillWebsockify,user="root") |
Definition at line 1232 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogLaunchWebsockify = self.containerFlask.exec_run(cmd=commandLaunchWebsockify,user="root",detach=True) |
Definition at line 899 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogModTunnel = self.containerConnect.exec_run(cmd="chmod u+x "+self.tunnel_script,user=self.user,detach=True) |
Definition at line 839 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogPut = self.containerConnect.put_archive(path=self.home, data=filetar) |
Definition at line 1003 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogRmUser = container_exec_out(self.containerFlask, commandRmuser) |
Definition at line 1238 of file TVSecure.py.
| TVSecure.ConnectionDocker.Logs = str(self.containerConnect.logs(since=int(self.oldtime),tail=nbLines)) |
Definition at line 1358 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogScrTunnel = self.containerConnect.exec_run(cmd=scriptTunnel,user=self.user,detach=True) |
Definition at line 837 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogTestFreePort = container_exec_out(self.containerFlask, commandTestFreePort,user=self.flaskusr) |
Definition at line 815 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogTestOldWebsockify = self.containerFlask.exec_run(cmd=commandTestOldWebsockify,user="root") |
Definition at line 879 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogTunnel = self.containerConnect.exec_run(cmd="sh -c "+self.kill_tunnel_script,user=self.user,detach=True) |
Definition at line 1201 of file TVSecure.py.
| TVSecure.ConnectionDocker.LogWebsockifyPID = container_exec_out(self.containerFlask, commandWebsockifyPID,user=self.flaskusr) |
Definition at line 908 of file TVSecure.py.
| TVSecure.ConnectionDocker.name = "connectiondock"+str(Connections[self.ConnectNum]["connectionid"]) |
Definition at line 609 of file TVSecure.py.
| TVSecure.ConnectionDocker.nbTiles = nbTiles |
Definition at line 607 of file TVSecure.py.
| TVSecure.ConnectionDocker.nodes_ok = False |
Definition at line 1060 of file TVSecure.py.
| TVSecure.ConnectionDocker.oldtime = time.time() |
Definition at line 605 of file TVSecure.py.
| TVSecure.ConnectionDocker.password = info_passwd.group("passwd") |
Definition at line 749 of file TVSecure.py.
| TVSecure.ConnectionDocker.PORTssh = s.getsockname()[1] |
Definition at line 628 of file TVSecure.py.
| dict TVSecure.ConnectionDocker.postgresHost = {POSTGRES_HOST:POSTGRES_IP} |
Definition at line 650 of file TVSecure.py.
| TVSecure.ConnectionDocker.SSLprivate = os.getenv('SSLprivate') |
Definition at line 891 of file TVSecure.py.
| TVSecure.ConnectionDocker.SSLpublic = os.getenv('SSLpublic') |
Definition at line 890 of file TVSecure.py.
| TVSecure.ConnectionDocker.thread |
Definition at line 583 of file TVSecure.py.
| TVSecure.ConnectionDocker.threadName = "TVConnect%s" % (ConnectNum) |
Definition at line 581 of file TVSecure.py.
| TVSecure.ConnectionDocker.TileSetDB = session.query(models.TileSets).filter_by(id=self.tilesetId).one() |
Definition at line 824 of file TVSecure.py.
| TVSecure.ConnectionDocker.tilesetId = int(Connections[self.ConnectNum]["tilesetid"]) |
Definition at line 610 of file TVSecure.py.
| TVSecure.ConnectionDocker.tunnel_command = "ssh -4 -T -N -nf -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -R 0.0.0.0:"+str(internPort)+":localhost:5902 "+self.flaskusr+"@"+self.IPFlask+" &" |
Definition at line 832 of file TVSecure.py.
| TVSecure.ConnectionDocker.tunnel_script = os.path.join(self.home,".vnc","tunnel_flask") |
Definition at line 831 of file TVSecure.py.
| str TVSecure.ConnectionDocker.user = "myuser" |
Definition at line 598 of file TVSecure.py.
| TVSecure.ConnectionDocker.userflask = userflask |
Definition at line 603 of file TVSecure.py.
| TVSecure.ConnectionDocker.websockifyPID = -1 |
Definition at line 617 of file TVSecure.py.