예제 #1
0
    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)
예제 #2
0
    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)
예제 #3
0
파일: npm.py 프로젝트: 5monkeys/revolver
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)
예제 #4
0
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)
예제 #5
0
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)
예제 #6
0
파일: redis.py 프로젝트: janpieper/revolver
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)
예제 #7
0
파일: nodejs.py 프로젝트: 5monkeys/revolver
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)
예제 #8
0
    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")
예제 #9
0
    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")
예제 #10
0
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)
예제 #11
0
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)
예제 #12
0
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)
예제 #13
0
def test_remove_defaults(run):
    run.expects_call().with_args("rm -f  path")
    directory.remove("path")
예제 #14
0
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)
예제 #15
0
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)
예제 #16
0
def test_remove_defaults(run):
    run.expects_call().with_args("rm -f  path")
    directory.remove("path")