def test_new(self): venv = os.environ.pop("VIRTUAL_ENV", None) write_supervisor_conf(None) buf = open(cwd("supervisord.conf"), "rb").read() assert "command = cuckoo -d -m 10000" in buf if venv: os.environ["VIRTUAL_ENV"] = venv
def test_new(self): venv = os.environ.pop("VIRTUAL_ENV", None) write_supervisor_conf(None) buf = open(cwd("supervisord.conf"), "rb").read() assert "command = cuckoo -d -m 10000" in buf if venv: os.environ["VIRTUAL_ENV"] = venv
def test_venv_new(self): venv = os.environ.pop("VIRTUAL_ENV", None) os.environ["VIRTUAL_ENV"] = cwd() write_supervisor_conf(None) buf = open(cwd("supervisord.conf"), "rb").read() cuckoo_path = "%s/bin/cuckoo" % cwd() assert "command = %s -d -m 10000" % cuckoo_path in buf os.environ["VIRTUAL_ENV"] = venv
def test_venv_new(self): venv = os.environ.pop("VIRTUAL_ENV", None) os.environ["VIRTUAL_ENV"] = cwd() write_supervisor_conf(None) buf = open(cwd("supervisord.conf"), "rb").read() cuckoo_path = "%s/bin/cuckoo" % cwd() assert "command = %s -d -m 10000" % cuckoo_path in buf os.environ["VIRTUAL_ENV"] = venv
def init(ctx, conf): """Initializes Cuckoo and its configuration.""" if conf and os.path.exists(conf): cfg = read_kv_conf(conf) else: cfg = None # If this is a new install, also apply the provided configuration. cuckoo_init(logging.INFO, ctx.parent, cfg) # If this is an existing install, overwrite the supervisord.conf # configuration file (if needed) as well as the Cuckoo configuration. write_supervisor_conf(ctx.parent.user or getuser()) write_cuckoo_conf(cfg)
def init(ctx, conf): """Initializes Cuckoo and its configuration.""" if conf and os.path.exists(conf): cfg = read_kv_conf(conf) else: cfg = None # If this is a new install, also apply the provided configuration. cuckoo_init(logging.INFO, ctx.parent, cfg) # If this is an existing install, overwrite the supervisord.conf # configuration file (if needed) as well as the Cuckoo configuration. write_supervisor_conf(ctx.parent.user or getuser()) write_cuckoo_conf(cfg)
def cuckoo_create(username=None, cfg=None, quiet=False): """Create a new Cuckoo Working Directory.""" if not quiet: print jinja2.Environment().from_string( open(cwd("cwd", "init-pre.jinja2", private=True), "rb").read() ).render(cwd=cwd, yellow=yellow, red=red) if not os.path.exists(cwd(".cwd", private=True)): print red( "The cuckoo/private/.cwd file is missing. Please run " "'python setup.py sdist' before 'pip install ...'!" ) return if not os.path.isdir(cwd()): os.mkdir(cwd()) def _ignore_pyc(src, names): """Don't copy .pyc files.""" return [name for name in names if name.endswith(".pyc")] # The following effectively nops the first os.makedirs() call that # shutil.copytree() does as we've already created the destination # directory ourselves (assuming it didn't exist already). orig_makedirs = shutil.os.makedirs def _ignore_first_makedirs(dst): shutil.os.makedirs = orig_makedirs shutil.os.makedirs = _ignore_first_makedirs shutil.copytree( os.path.join(cuckoo.__path__[0], "data"), cwd(), symlinks=True, ignore=_ignore_pyc ) # Drop our version of the CWD. our_version = open(cwd(".cwd", private=True), "rb").read() open(cwd(".cwd"), "wb").write(our_version) # Write the supervisord.conf configuration file. write_supervisor_conf(username or getuser()) write_cuckoo_conf(cfg=cfg) if not quiet: print print jinja2.Environment().from_string( open(cwd("cwd", "init-post.jinja2", private=True), "rb").read() ).render()
def cuckoo_create(username=None, cfg=None, quiet=False): """Create a new Cuckoo Working Directory.""" if not quiet: print jinja2.Environment().from_string( open(cwd("cwd", "init-pre.jinja2", private=True), "rb").read() ).render(cwd=cwd, yellow=yellow, red=red) if not os.path.exists(cwd(".cwd", private=True)): print red( "The cuckoo/private/.cwd file is missing. Please run " "'python setup.py sdist' before 'pip install ...'!" ) return if not os.path.isdir(cwd()): os.mkdir(cwd()) def _ignore_pyc(src, names): """Don't copy .pyc files.""" return [name for name in names if name.endswith(".pyc")] # The following effectively nops the first os.makedirs() call that # shutil.copytree() does as we've already created the destination # directory ourselves (assuming it didn't exist already). orig_makedirs = shutil.os.makedirs def _ignore_first_makedirs(dst): shutil.os.makedirs = orig_makedirs shutil.os.makedirs = _ignore_first_makedirs shutil.copytree( os.path.join(cuckoo.__path__[0], "data"), cwd(), symlinks=True, ignore=_ignore_pyc ) # Drop our version of the CWD. our_version = open(cwd(".cwd", private=True), "rb").read() open(cwd(".cwd"), "wb").write(our_version) # Write the supervisord.conf configuration file. write_supervisor_conf(username or getuser()) write_cuckoo_conf(cfg=cfg) if not quiet: print print jinja2.Environment().from_string( open(cwd("cwd", "init-post.jinja2", private=True), "rb").read() ).render()
def test_venv_new_unicode(self): set_cwd(tempfile.mkdtemp(u"a\u202eb")) write_supervisor_conf(None)
def test_exists(self): filepath = cwd("supervisord.conf") open(filepath, "wb").write("foo") write_supervisor_conf(None) assert open(filepath, "rb").read() == "foo"
def test_exists(self): filepath = cwd("supervisord.conf") open(filepath, "wb").write("foo") write_supervisor_conf(None) assert open(filepath, "rb").read() == "foo"
def test_venv_new_unicode(self): set_cwd(tempfile.mkdtemp(u"a\u202eb")) write_supervisor_conf(None)