00001
00002
00003 """
00004 usage: %(progname)s [args]
00005 """
00006
00007 import nstart
00008 import config
00009
00010 import os, sys, string, time, getopt, re
00011 import subprocess
00012 from pyclearsilver.log import *
00013
00014 import neo_cgi, neo_util, neo_cs
00015
00016 from pyclearsilver import CSPage
00017 from pyclearsilver import odb
00018
00019 import MBPage
00020 import db_webui
00021
00022 import webutil
00023
00024
00025 class MyPage(MBPage.MBPage):
00026 def setup(self, hdf):
00027 pass
00028
00029 def display(self, hdf):
00030 webutil.grabTopics(hdf, [])
00031
00032 def Action_DoReset(self, hdf):
00033
00034 warn("calling robot reset")
00035 proc = subprocess.Popen(["sudo", "robot", "reset", "--force", "-u", self.username], stdout=subprocess.PIPE)
00036 out, err = proc.communicate()
00037 if out:
00038 warn("out: " + out)
00039 if err:
00040 warn("err: " + err)
00041
00042 time.sleep(5)
00043 warn("starting webui")
00044
00045 self.redirectUri(config.gBaseURL + "webui/reset.py")
00046
00047 def Action_AjaxReset(self, hdf):
00048
00049 warn("calling ajax robot reset")
00050 proc = subprocess.Popen(["sudo", "robot", "reset", "--force", "-u", self.username], stdout=subprocess.PIPE)
00051 out, err = proc.communicate()
00052 if out:
00053 warn("out: " + out)
00054 if err:
00055 warn("err: " + err)
00056
00057 time.sleep(10)
00058 warn("starting webui")
00059
00060 hdf.setValue("CGI.result", "OK")
00061
00062 hdf.setValue("Content", "ajax_result.cs")
00063
00064
00065 def run(context):
00066 return MyPage(context, pagename="reset", nologin=False)
00067
00068 def main():
00069 context = CSPage.Context()
00070 run(context).start()
00071
00072 if __name__ == "__main__":
00073 main()
00074