fab-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Fab-user] Re: simple question


From: Jeff Forcier
Subject: Re: [Fab-user] Re: simple question
Date: Mon, 29 Sep 2008 09:26:54 -0400

I've been on my fork for so long that I can't say definitively, but my
fork does have this feature, and I _think_ I added it myself and it
wasn't present in the main development line. Christian can verify this
one way or the other.

-Jeff

On Mon, Sep 29, 2008 at 8:45 AM, Byron Saltysiak <address@hidden> wrote:
> Slightly tangential but related - Jeff's answer got me thinking. Does the
> current version support grabbing the results of previous commands and using
> them later?
>
> On Mon, Sep 29, 2008 at 8:37 AM, Christian Vest Hansen
> <address@hidden> wrote:
>>
>> Hi, Byron.
>>
>> The current official versions of Fabric is oppinionated in this regard
>> and assumes that you don't need that kind of funktionality.
>>
>> The shell script or Jeff's fork are the only workarounds I know of.
>>
>> On Mon, Sep 29, 2008 at 2:18 PM, Jeff Forcier <address@hidden> wrote:
>> > Hi Byron,
>> >
>> > The current version of Fabric can't run things one host at a time, but
>> > I have a fork that is capable of doing this; it adds an option letting
>> > you toggle between the current "broad" behavior of each command run on
>> > every host, and a "deep" behavior (which is what you're asking for)
>> > where each task is run all the way through on each host in turn.
>> >
>> > This allows for more complex logic such as "if run('ls /some/file'):
>> > foo ; else: bar". The fork is on GitHub:
>> > http://github.com/bitprophet/fabric/tree/execution
>> >
>> > I'm optimistic that these changes will make it into mainline Fabric in
>> > the nearish future, but for now you'll need Git to checkout my version
>> > of the code.
>> >
>> > Regards,
>> > Jeff
>> >
>> > On Mon, Sep 29, 2008 at 12:44 AM, Byron Saltysiak <address@hidden>
>> > wrote:
>> >> Well I see that this example is silly since the hostname is included
>> >> next to
>> >> the output from all commands. But I guess my general question still
>> >> stands.
>> >>
>> >> On Mon, Sep 29, 2008 at 12:41 AM, Byron Saltysiak
>> >> <address@hidden>
>> >> wrote:
>> >>>
>> >>> I didn't see anything in the brief user-guide on the site or the
>> >>> archives
>> >>> but it seems so simple.
>> >>>
>> >>> If I'm in a multiple host environment, is there an easy way to make
>> >>> all
>> >>> the commands execute on one host before starting another? I can think
>> >>> of a
>> >>> small change to the example on the wiki so that I could see which
>> >>> server was
>> >>> having problems, or just which server I was currently on if I had a
>> >>> whole
>> >>> bunch of servers:
>> >>>
>> >>> def deploy():
>> >>>     'Deploy the app to the target environment'
>> >>>     local("make dist")
>> >>>
>> >>>
>> >>>     put("bin/bundle.zip", "bundle.zip")
>> >>>     run("hostname")
>> >>>
>> >>>     sudo("./install.sh bundle.zip")
>> >>>
>> >>> But as it seems to happen, the put is run on all hosts, then the run,
>> >>> and
>> >>> then the sudo.
>> >>>
>> >>> Is the way to get around this to just put a shell script out and run
>> >>> that?
>> >>> Or perhaps this really isn't that necessary of a task in other
>> >>> people's
>> >>> experience?
>> >>>
>> >>> --
>> >>> Byron
>> >>
>> >>
>> >>
>> >> --
>> >> Byron
>> >>
>> >> _______________________________________________
>> >> Fab-user mailing list
>> >> address@hidden
>> >> http://lists.nongnu.org/mailman/listinfo/fab-user
>> >>
>> >>
>> >
>> >
>> > _______________________________________________
>> > Fab-user mailing list
>> > address@hidden
>> > http://lists.nongnu.org/mailman/listinfo/fab-user
>> >
>>
>>
>>
>> --
>> Venlig hilsen / Kind regards,
>> Christian Vest Hansen.
>
>
>
> --
> Byron
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]