def get_mount_points(): """return system mount points as list of (mountpoint, device, fstype). Compatible with linux and solaris""" try: buf = get_shell_output('mount') except (IOError, os.error), (errno, strerror): return (strerror, errno)
def check_progs(self): for k, v in defaultprogs.items(): r = get_shell_output('which \"%s\"' %v) if r: self.progs[k] = v else: self.progs[k] = ''
def check_progs(self): for k, v in defaultprogs.items(): r = get_shell_output('which \"%s\"' % v) if r: self.progs[k] = v else: self.progs[k] = ''
def get_rdev(f): """'ls -la' to get mayor and minor number of devices""" try: buf = get_shell_output('ls -la %s' % encode(f)) except: return 0 else: try: return int(buf[4][:-1]), int(buf[5]) except: # HACK: found 0xff.. encoded device numbers, ignore them... return 0, 0
def kill_app(): cmd = "yarn application -list | awk -F ' ' '{print $1,$4}'" output = utils.get_shell_output(cmd) kill_cmd = "yarn application -kill " for line in output: field = line.strip().split(" ") appId = field[0] user = field[1] if user == "go2data_rank": kill_app = kill_cmd + appId utils.execute_command(kill_app) logger.info("application:{app} kill done".format(app=appId))
def async_data(environment): try: cmd = "wc -l /search/odin/taoyongbo/rank/rankResult/multiRank" output = utils.get_shell_output(cmd) total_count = 0 for line in output: field = line.strip().split(" ") total_count = int(field[0]) if total_count > 0 and environment == "prod": subprocess.Popen("python async.py", shell=True) except: logger.info("GpsCustomStatisticTask excute failed")
def test_assemblyvalidation(): bamasm = get_testfile('cm-500pgun-asm-b2mv31-bam') contigfa = get_testfile('cm-500pgun-asm-b2mv31-fa') bamref = get_testfile('cm-500pgun-ref-bam') refstatsfile = get_testfile('cm-500pgun-ref-stats') refphylfile = get_testfile('cm-ref-phyl') nucmercoords = get_testfile('cm-500pgun-val-nucmer') val = AssemblyValidation(bamref, bamasm, refphylfile, refstatsfile, contigfa, nucmercoords) assert(len(val.contigs) == int(get_shell_output("grep -c '^>' " + contigfa)[0])) make_dir(get_outdir() + "masm") val.write_contig_purity(get_outdir() + "masm" + "/contig-purity.tsv") val.write_general_stats(get_outdir() + "masm" + "/asm-stats.tsv") val.write_genome_contig_cov(get_outdir() + "masm" + "/genome-contig-coverage.tsv")
def pan_regenerate(tab): """regenerate vfs pan file: copy files""" dir_src = tab.path dir_dest = tab.vbase.replace('#vfs', '') # check if can copy files out = utils.get_shell_output('touch ' + utils.encode(dir_dest)) if out: return ''.join(out.split(':')[1:])[1:] # copy files for f in glob(os.path.join(dir_src, '*')): f = os.path.basename(f) try: files.copy_bulk(os.path.join(dir_src, f), os.path.join(dir_dest, f)) except (IOError, os.error), (errno, strerror): app.display() messages.error('Cannot regenerating vfs (closing panelize)\n%s (%s)' % (strerror, errno))
def pan_regenerate(tab): """regenerate vfs pan file: copy files""" dir_src = tab.path dir_dest = tab.vbase.replace('#vfs', '') # check if can copy files out = utils.get_shell_output('touch ' + utils.encode(dir_dest)) if out: return ''.join(out.split(':')[1:])[1:] # copy files for f in glob(os.path.join(dir_src, '*')): f = os.path.basename(f) try: files.copy_bulk(os.path.join(dir_src, f), os.path.join(dir_dest, f)) except (IOError, os.error), (errno, strerror): app.display() messages.error( 'Cannot regenerating vfs (closing panelize)\n%s (%s)' % (strerror, errno))
def check_progs(self): for k, v in defaultprogs.items(): r = get_shell_output('%s \"%s\"' % (sysprogs['which'], v)) self.progs[k] = v if r else ''
def __execute_command(self): cmd = 'mountavfs' get_shell_output(cmd) self.base = self.avfs + self.server