示例#1
0
def makedirs(ddir=None):
    """ make subdirs in datadir. """
    #if os.path.exists("/home/jsb/.jsb") and getpass.getuser() == 'jsb': ddir = "/home/jsb/.jsb"
    global datadir
    datadir = ddir or getdatadir()
    logging.warn("datadir - set to %s" % datadir)
    if isgae: return
    if not os.path.isdir(ddir):
        try:
            os.mkdir(ddir)
        except:
            logging.warn("can't make %s dir" % ddir)
            os._exit(1)
        logging.info("making dirs in %s" % ddir)
    try:
        os.chmod(ddir, 0700)
    except:
        pass
    last = datadir.split(os.sep)[-1]
    #if not os.path.isdir(ddir): doit(ddir, "jsb.data")
    try:
        doit(ddir, "jsb.plugs.myplugs")
    except:
        pass
    try:
        doit(ddir, "jsb.data.examples")
    except:
        pass
    try:
        touch(ddir + os.sep + "__init__.py")
    except:
        pass
    if not os.path.isdir(ddir + os.sep + "config"):
        os.mkdir(ddir + os.sep + "config")
    if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "mainconfig"):
        source = getsource("jsb.data.examples")
        if not source: raise Exception("can't find jsb.data.examples package")
        try:
            shutil.copy(source + os.sep + 'mainconfig.example',
                        ddir + os.sep + 'config' + os.sep + 'mainconfig')
        except (OSError, IOError), ex:
            logging.error(
                "datadir - failed to copy jsb.data.config.mainconfig: %s" %
                str(ex))
示例#2
0
文件: datadir.py 项目: code2u/jsb
def makedirs(ddir=None):
    """ make subdirs in datadir. """
    #if os.path.exists("/home/jsb/.jsb") and getpass.getuser() == 'jsb': ddir = "/home/jsb/.jsb"
    global datadir
    datadir = ddir or getdatadir()
    logging.warn("datadir - set to %s" % datadir)
    if isgae: return
    if not os.path.isdir(ddir):
        try: os.mkdir(ddir)
        except: logging.warn("can't make %s dir" % ddir) ; os._exit(1)
        logging.info("making dirs in %s" % ddir)
    try: os.chmod(ddir, 0700)
    except: pass
    if ddir: setdatadir(ddir)
    last = datadir.split(os.sep)[-1]
    #if not os.path.isdir(ddir): doit(ddir, "jsb.data")
    try: doit(ddir, "jsb.plugs.myplugs")
    except: pass
    try: doit(ddir, "jsb.data.examples")
    except: pass
    try: doit(ddir, "jsb.data.static", "static")
    except: pass
    try: doit(ddir, "jsb.data.templates", "templates")
    except: pass
    try: touch(ddir + os.sep + "__init__.py")
    except: pass
    if not os.path.isdir(ddir + os.sep + "config"): os.mkdir(ddir + os.sep + "config")
    if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "mainconfig"):
        source = getsource("jsb.data.examples")
        if not source: raise Exception("can't find jsb.data.examples package")
        try: shutil.copy(source + os.sep + 'mainconfig.example', ddir + os.sep + 'config' + os.sep + 'mainconfig')
        except (OSError, IOError), ex: logging.error("datadir - failed to copy jsb.data.config.mainconfig: %s" % str(ex))
    if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "credentials.py"):
        source = getsource("jsb.data.examples")
        if not source: raise Exception("can't find jsb.data.examples package")
        try: shutil.copy(source + os.sep + 'credentials.py.example', ddir + os.sep + 'config' + os.sep + 'credentials.py')
        except (OSError, IOError), ex: logging.error("datadir - failed to copy jsb.data.config: %s" % str(ex))
    try: touch(ddir + os.sep + "config" + os.sep + "__init__.py")
    except: pass
    # myplugs
    initsource = getsource("jsb.plugs.myplugs")
    if not initsource: raise Exception("can't find jsb.plugs.myplugs package")
    initsource = initsource + os.sep + "__init__.py"
    if not os.path.isdir(ddir + os.sep + 'myplugs'): os.mkdir(ddir + os.sep + 'myplugs')
    if not os.path.isfile(ddir + os.sep + 'myplugs' + os.sep + "__init__.py"):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/__init__.py: %s" % str(ex))
    # myplugs.common
    if not os.path.isdir(os.path.join(ddir, 'myplugs', 'common')): os.mkdir(os.path.join(ddir, 'myplugs', 'common'))
    if not os.path.isfile(os.path.join(ddir, 'myplugs', "common", "__init__.py")):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', 'common', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/common/__init__.py: %s" % str(ex))
    # myplugs.gae
    if not os.path.isdir(os.path.join(ddir, 'myplugs', 'gae')): os.mkdir(os.path.join(ddir, 'myplugs', 'gae'))
    if not os.path.isfile(os.path.join(ddir, 'myplugs', "gae", "__init__.py")):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', 'gae', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/gae/__init__.py: %s" % str(ex))
    # myplugs.socket
    if not os.path.isdir(os.path.join(ddir, 'myplugs', 'socket')): os.mkdir(os.path.join(ddir, 'myplugs', 'socket'))
    if not os.path.isfile(os.path.join(ddir, 'myplugs', 'socket', "__init__.py")):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', 'socket', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/socket/__init__.py: %s" % str(ex))
    if not os.path.isdir(ddir + os.sep +'botlogs'): os.mkdir(ddir + os.sep + 'botlogs')
    if not os.path.isdir(ddir + '/run/'): os.mkdir(ddir + '/run/')
    if not os.path.isdir(ddir + '/users/'): os.mkdir(ddir + '/users/')
    if not os.path.isdir(ddir + '/channels/'): os.mkdir(ddir + '/channels/')
    if not os.path.isdir(ddir + '/fleet/'): os.mkdir(ddir + '/fleet/')
    if not os.path.isdir(ddir + '/pgp/'): os.mkdir(ddir + '/pgp/')
    if not os.path.isdir(ddir + '/plugs/'): os.mkdir(ddir + '/plugs/')
    if not os.path.isdir(ddir + '/old/'): os.mkdir(ddir + '/old/')
    if not os.path.isdir(ddir + '/containers/'): os.mkdir(ddir + '/containers/')
    if not os.path.isdir(ddir + '/chatlogs/'): os.mkdir(ddir + '/chatlogs/')
    if not os.path.isdir(ddir + '/botlogs/'): os.mkdir(ddir + '/botlogs/')
示例#3
0
文件: datadir.py 项目: code2u/jsb
def doit(ddir, mod, target=None):
    source = getsource(mod)
    if not source: raise Exception("can't find %s package" % mod)
    shutil.copytree(source, ddir + os.sep + (target or mod.replace(".", os.sep)))
示例#4
0
def doit(ddir, mod):
    source = getsource(mod)
    if not source: raise Exception("can't find %s package" % mod)
    shutil.copytree(source, ddir + os.sep + mod.replace(".", os.sep))
示例#5
0
     pass
 if not os.path.isdir(ddir + os.sep + "config"):
     os.mkdir(ddir + os.sep + "config")
 if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "mainconfig"):
     source = getsource("jsb.data.examples")
     if not source: raise Exception("can't find jsb.data.examples package")
     try:
         shutil.copy(source + os.sep + 'mainconfig.example',
                     ddir + os.sep + 'config' + os.sep + 'mainconfig')
     except (OSError, IOError), ex:
         logging.error(
             "datadir - failed to copy jsb.data.config.mainconfig: %s" %
             str(ex))
 if not os.path.isfile(ddir + os.sep + 'config' + os.sep +
                       "credentials.py"):
     source = getsource("jsb.data.examples")
     if not source: raise Exception("can't find jsb.data.examples package")
     try:
         shutil.copy(source + os.sep + 'credentials.py.example',
                     ddir + os.sep + 'config' + os.sep + 'credentials.py')
     except (OSError, IOError), ex:
         logging.error("datadir - failed to copy jsb.data.config: %s" %
                       str(ex))
 try:
     touch(ddir + os.sep + "config" + os.sep + "__init__.py")
 except:
     pass
 # myplugs
 initsource = getsource("jsb.plugs.myplugs")
 if not initsource: raise Exception("can't find jsb.plugs.myplugs package")
 initsource = initsource + os.sep + "__init__.py"
示例#6
0
def makedirs(ddir=None):
    """ make subdirs in datadir. """
    #if os.path.exists("/home/jsb/.jsb") and getpass.getuser() == 'jsb': ddir = "/home/jsb/.jsb"
    global datadir
    datadir = ddir or getdatadir()
    if datadir.endswith(os.sep): datadir = datadir[:-1]
    logging.warn("datadir - set to %s" % datadir)
    if not os.path.isdir(ddir):
        try: os.mkdir(ddir)
        except:
             raise Exception("can't make %s dir" % ddir)
        logging.info("making dirs in %s" % ddir)
    try: os.chmod(ddir, 0700)
    except: pass
    if ddir: setdatadir(ddir)
    last = datadir.split(os.sep)[-1]
    #if not os.path.isdir(ddir): doit(ddir, "jsb.data")
    try: doit(ddir, "jsb.plugs.myplugs")
    except: pass
    try: doit(ddir, "jsb.data.examples")
    except: pass
    try: doit(ddir, "jsb.data.static", "static")
    except: pass
    try: doit(ddir, "jsb.data.templates", "templates")
    except: pass
    try: touch(ddir + os.sep + "__init__.py")
    except: pass
    if not os.path.isdir(ddir + os.sep + "config"): os.mkdir(ddir + os.sep + "config")
    if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "mainconfig"):
        source = getsource("jsb.data.examples")
        if not source: raise Exception("can't find jsb.data.examples package")
        try: shutil.copy(source + os.sep + 'mainconfig.example', ddir + os.sep + 'config' + os.sep + 'mainconfig')
        except (OSError, IOError), ex: logging.error("datadir - failed to copy jsb.data.config.mainconfig: %s" % str(ex))
    if not os.path.isfile(ddir + os.sep + 'config' + os.sep + "credentials.py"):
        source = getsource("jsb.data.examples")
        if not source: raise Exception("can't find jsb.data.examples package")
        try: shutil.copy(source + os.sep + 'credentials.py.example', ddir + os.sep + 'config' + os.sep + 'credentials.py')
        except (OSError, IOError), ex: logging.error("datadir - failed to copy jsb.data.config: %s" % str(ex))
    try: touch(ddir + os.sep + "config" + os.sep + "__init__.py")
    except: pass
    # myplugs
    initsource = getsource("jsb.plugs.myplugs")
    if not initsource: raise Exception("can't find jsb.plugs.myplugs package")
    initsource = initsource + os.sep + "__init__.py"
    if not os.path.isdir(ddir + os.sep + 'myplugs'): os.mkdir(ddir + os.sep + 'myplugs')
    if not os.path.isfile(ddir + os.sep + 'myplugs' + os.sep + "__init__.py"):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/__init__.py: %s" % str(ex))
    # myplugs.common
    if not os.path.isdir(os.path.join(ddir, 'myplugs', 'common')): os.mkdir(os.path.join(ddir, 'myplugs', 'common'))
    if not os.path.isfile(os.path.join(ddir, 'myplugs', "common", "__init__.py")):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', 'common', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/common/__init__.py: %s" % str(ex))
    # myplugs.socket
    if not os.path.isdir(os.path.join(ddir, 'myplugs', 'socket')): os.mkdir(os.path.join(ddir, 'myplugs', 'socket'))
    if not os.path.isfile(os.path.join(ddir, 'myplugs', 'socket', "__init__.py")):
        try:
            shutil.copy(initsource, os.path.join(ddir, 'myplugs', 'socket', '__init__.py'))
        except (OSError, IOError), ex: logging.error("datadir - failed to copy myplugs/socket/__init__.py: %s" % str(ex))
    if not os.path.isdir(ddir + os.sep +'botlogs'): os.mkdir(ddir + os.sep + 'botlogs')
    if not os.path.isdir(ddir + '/run/'): os.mkdir(ddir + '/run/')
    if not os.path.isdir(ddir + '/twitter/'): os.mkdir(ddir + '/twitter/')
    if not os.path.isdir(ddir + '/users/'): os.mkdir(ddir + '/users/')
    if not os.path.isdir(ddir + '/channels/'): os.mkdir(ddir + '/channels/')
    if not os.path.isdir(ddir + '/fleet/'): os.mkdir(ddir + '/fleet/')
    if not os.path.isdir(ddir + '/pgp/'): os.mkdir(ddir + '/pgp/')
    if not os.path.isdir(ddir + '/plugs/'): os.mkdir(ddir + '/plugs/')
    if not os.path.isdir(ddir + '/old/'): os.mkdir(ddir + '/old/')
    if not os.path.isdir(ddir + '/containers/'): os.mkdir(ddir + '/containers/')
    if not os.path.isdir(ddir + '/chatlogs/'): os.mkdir(ddir + '/chatlogs/')
    if not os.path.isdir(ddir + '/botlogs/'): os.mkdir(ddir + '/botlogs/')
    if not os.path.isdir(ddir + '/spider/'): os.mkdir(ddir + '/spider/')
    if not os.path.isdir(ddir + '/spider/data/'): os.mkdir(ddir + '/spider/data')
    if os.path.isfile(ddir + '/globals'):
        try: os.rename(ddir + '/globals', ddir + '/globals.old')
        except: pass
    if not os.path.isdir(ddir + '/globals/'): os.mkdir(ddir + '/globals/')