diff options
author | Britney Fransen <brfransen@gmail.com> | 2014-02-05 19:16:04 (GMT) |
---|---|---|
committer | Britney Fransen <brfransen@gmail.com> | 2014-02-05 19:16:04 (GMT) |
commit | dcaa0d05f36fb2f67fe245804ca7a6c3c7e12a5c (patch) | |
tree | c2427eab1fd00350e1cf4bdfe581513beff48b47 /abs/core/LinHES-system/myth_mtc.py | |
parent | 0fc8cbbd572a62abddb430a1ddc47c8039b514ec (diff) | |
download | linhes_pkgbuild-dcaa0d05f36fb2f67fe245804ca7a6c3c7e12a5c.zip linhes_pkgbuild-dcaa0d05f36fb2f67fe245804ca7a6c3c7e12a5c.tar.gz linhes_pkgbuild-dcaa0d05f36fb2f67fe245804ca7a6c3c7e12a5c.tar.bz2 |
LinHES-system: add idle.py to replace idle.sh. refs #958
update myth_mtc.py to use idle.py. update mythwelcome-config.py to update the db to use idle.py and run mythwelcome-config.py on install
Diffstat (limited to 'abs/core/LinHES-system/myth_mtc.py')
-rwxr-xr-x | abs/core/LinHES-system/myth_mtc.py | 107 |
1 files changed, 3 insertions, 104 deletions
diff --git a/abs/core/LinHES-system/myth_mtc.py b/abs/core/LinHES-system/myth_mtc.py index 7847313..c33a888 100755 --- a/abs/core/LinHES-system/myth_mtc.py +++ b/abs/core/LinHES-system/myth_mtc.py @@ -6,6 +6,7 @@ import socket import os import datetime,time import shlex +import idle try: from MythTV import MythBE @@ -21,9 +22,7 @@ def get_timestamp(): date = (now.strftime('%Y-%m-%d %H:%M')) return date - def optimize(): - try: cursor = mythtv.db.cursor() cursor.execute("SHOW tables") @@ -39,96 +38,6 @@ def optimize(): cmd= "%s table %s" %(op,ctable) cursor.execute(cmd) - -def upcoming_check(): - print " Checking for upcoming shows" - try: - upcoming = mythtv.getUpcomingRecordings() - except: - return True - try: - show=str(upcoming[0]) - show=show.strip() - showtime=show.partition("(")[2].strip(")") - now=time.time() - rec_time=time.strptime( showtime ,"%Y-%m-%d %H:%M:%S" ) - r=time.mktime(rec_time) - time_diff= ( r - now ) / 60 - except: - time_diff=100 - show="No show" - if ( time_diff > 30) : - return True - else: - print " %s is upcoming in %s" %(show,time_diff) - return False - - -def schemalock_check(): - print " Checking if schema is locked" - try: - c = mythtv.db.cursor() - c.execute("select count(*) from schemalock") - results=c.fetchone() - schemalock=results[0] - except: - return True - - if schemalock == 0: - return True - else: - print " schema is locked" - return False - -def job_check(): - print " Checking jobqueue" - try: - c = mythtv.db.cursor() - c.execute("select count(*) from jobqueue where status = 4") - results=c.fetchone() - except: - return True - jobs= results[0] - if jobs == 0 : - return True - else: - print " jobs are running" - return False - - -def in_use(): - print " Checking if programs are in use" - try: - c = mythtv.db.cursor() - c.execute("select count(*) from inuseprograms") - results=c.fetchone() - except: - return True - prginuse=results[0] - if prginuse == 0 : - return True - else: - print " Programs in use" - return False - -def mfd_check(): - print " Checking is mythfilldatabase is running" - ps = subprocess.Popen("ps ax -o pid= -o args= ", shell=True, stdout=subprocess.PIPE) - ps_pid = ps.pid - output = ps.stdout.read() - ps.stdout.close() - ps.wait() - proc_name="mythfilldatabase" - for line in output.split("\n"): - res = re.findall("(\d+) (.*)", line) - if res: - pid = int(res[0][0]) - if proc_name in res[0][1] and pid != os.getpid() and pid != ps_pid: - print " mythfilldatabase is running" - return False - - return True - def bail_if_another_is_running(): cmd = shlex.split("pgrep -u {} -f {}".format(os.getuid(), __file__)) pids = subprocess.check_output(cmd).strip().split('\n') @@ -138,19 +47,9 @@ def bail_if_another_is_running(): __file__, " ".join(pids)) raise SystemExit(1) - -def idle_check(): - print "\n%s Checking Idle" %(get_timestamp()) - if ( upcoming_check() and schemalock_check() and job_check() and in_use() and mfd_check() ): - idle=True - print "\n%s Myth is idle" %(get_timestamp()) - else: - idle=False - print "\n%s Myth is NOT idle" %(get_timestamp()) - return idle - def run_stuff(): - if idle_check(): + print "\n%s" %get_timestamp() + if idle.main(): print "\n#######################################" print "\n%s Running Optimize" %(get_timestamp()) optimize() |