def on_after_upload(self): for src, dst in self._shares: dst = dst % self.folders dir.ensure(posixpath.dirname(src), recursive=True) dir.remove(src, recursive=True) dir.ensure(dst, recursive=True) file.link(dst, src)
def install(): nodejs.ensure() tmpdir = dir.temp() try: with ctx.cd(tmpdir): sudo("curl http://npmjs.org/install.sh | sh") finally: dir.remove(tmpdir, recursive=True)
def install(): package.ensure(['git-core', 'curl', 'build-essential']) tmpdir = dir.temp() try: with ctx.cd(tmpdir): repo = 'git://github.com/sstephenson/ruby-build.git' run('git clone %s ./ --depth 1' % repo) sudo('./install.sh') finally: dir.remove(tmpdir, recursive=True)
def install(version=_VERSION, options=_OPTIONS): package.ensure(['git-core', 'build-essential']) tmpdir = dir.temp() try: with ctx.cd(tmpdir): run('git clone git://github.com/antirez/redis.git ./ --depth 1') run('git checkout %s' % version) run('make %s > /dev/null' % options) sudo('make install') finally: dir.remove(tmpdir, recursive=True)
def install(version=_VERSION, options=_OPTIONS): package.ensure(["git-core", "build-essential"]) tmpdir = dir.temp() try: with ctx.cd(tmpdir): run("git clone git://github.com/antirez/redis.git ./ --depth 1") run("git checkout %s" % version) run("make %s > /dev/null" % options) sudo("make install") finally: dir.remove(tmpdir, recursive=True)
def install(version=_VERSION, options=_OPTIONS): package.ensure(['git-core', 'libssl-dev', 'curl', 'build-essential']) tmpdir = dir.temp() try: with ctx.cd(tmpdir): repo = 'git://github.com/joyent/node.git' run('git clone %s ./ --depth 1' % repo) run('git checkout %s' % version) run('./configure %s' % options) run('make > /dev/null') sudo('make install') finally: dir.remove(tmpdir, recursive=True)
def run(self): self.dispatch_hook("init") self.dispatch_hook("before_layout") try: self._layout() self.dispatch_hook("after_layout") with ctx.cd(self.folders["releases.current"]): self.dispatch_hook("before_upload") self._upload() self.dispatch_hook("after_upload") self.dispatch_hook("before_cleanup") self._cleanup() self.dispatch_hook("after_cleanup") self.dispatch_hook("before_activate") self._activate() except: dir.remove(self.folders["releases.current"], recursive=True) raise with ctx.cd(self.folders["releases.current"]): self.dispatch_hook("after_activate")
def _symlink_release(owner, current_dir, release_dir): with ctx.sudo(owner): if dir.exists(current_dir): dir.remove(current_dir, recursive=True) file.link(release_dir, current_dir)
def test_remove_force(run): run.expects_call().with_args("rm path") directory.remove("path", force=False) run.expects_call().with_args("rm -f path") directory.remove("path", force=True)
def test_remove_recusrive(run): run.expects_call().with_args("rm -f path") directory.remove("path", recursive=False) run.expects_call().with_args("rm -f -r path") directory.remove("path", recursive=True)
def test_remove_defaults(run): run.expects_call().with_args("rm -f path") directory.remove("path")