def write_report(directory, report): io.write(report) # write to screen for convenience? pathname = os.path.basename(os.path.abspath(directory)) fp = io.get_tmpfile('%s.explore_codebase' % pathname, noclobber=True) open(fp, 'w').write(report) io.write_result("Wrote file %s ." % fp)
def write_notice(cls): s = '' for (src, trg) in sorted(cls.tree.items()): src = cls.pathmerge(cls.bds, src) trg = cls.pathmerge(cls.get_basepath(cls.basepath_dcc_rel), trg) s += '%s -> %s\n' % (src.ljust(35), trg) s = help % (cls.bds, cls.get_basepath(cls.basepath_dcc_rel), s, sys.argv[0]) io.write(s)
def install(cls, bds): for (src, trg) in sorted(cls.tree.items()): src = cls.pathmerge(bds, src, strict=True) trg = cls.pathmerge(cls.get_basepath(cls.basepath_dcc_rel), trg, strict=True) io.write('%s -> %s\n' % (src, trg)) if os.path.isdir(src): shutil.copytree(src, trg) else: io.mkdir_p(os.path.dirname(trg)) shutil.copyfile(src, trg) # chmod generously just in case we get permission errors io.chmod_R(cls.get_basepath(cls.basepath_dcc_rel), stat.S_IRWXU | stat.S_IRWXG | stat.S_IRWXO)
def output(s): if not trace: io.write(s)