fab-user
[Top][All Lists]
Advanced

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

Re: [Fab-user] Survey: Do you wish you run chef, ansible, puppet or salt


From: Jeff Forcier
Subject: Re: [Fab-user] Survey: Do you wish you run chef, ansible, puppet or saltstack type commands in fabric?
Date: Tue, 21 Apr 2015 14:10:47 -0700

Also of note is that there are lightweight plans to add a 'blessed'
set of fabtool/cuisine/etc-like functions to the Fabric github org, as
per #461 (which also has a larger list of this type of 3rd party
lib!):

    https://github.com/fabric/fabric/issues/461

(This is also mentioned on the roadmap, http://www.fabfile.org/roadmap.html)

However, Patchwork is lower priority, partly because the core needs
love, partly because as mentioned, "true" CM systems like
chef/puppet/salt/ansible fill that particular need for a majority of
users (especially users graduating from simple use cases to
intermediate or advanced ones.)

On Tue, Apr 21, 2015 at 4:50 AM, Tony Narlock <address@hidden> wrote:
> Hi Fabric users,
>
> I wanted to get an idea of how much of a desire there is for this.
>
> I use both Fabric and a Configuration management system called Salt on my
> projects.  Salt is permissively licensed and and has a superb, pythonic
> architecture. I love salt for it's relatively simple declarative configs,
> but most importantly, it's automated detection of remote systems, module
> library and state library.
>
> The issue is - there is a huge void in many projects where they're not big
> enough to warrant the upkeep of maintaining configuration manager recipes,
> but fabfile's tasks are starting to duplicate functionality a config manager
> would normally handle. Also if working on a team, there's the issue of
> colleagues being willing to accept a learning curve.
>
> Fabric is an easier pill to swallow. As a task runner, it's front-end
> implementation is more nimble that a configuration manager for
> small-to-medium complexity scenarios.
>
> Fabric has two projects so far that imitate configuration manager require /
> states / cookbooks:
>
> - Cuisine: https://github.com/sebastien/cuisine
> - Fabtools https://github.com/ronnix/fabtools
>
> Fabtools has worked like a charm for me - with the exception that requires
> are nowhere near as resilient as salt states.
>
> As an example, task a look at ``salt.states.git.latest`` handling of edge
> cases, compared to ``fabtools.requires.git.working_copy``:
>
> - Salt:
> https://github.com/saltstack/salt/blob/000de9597475afa59b0cd6c7c1f6c3dc1c66a0bc/salt/states/git.py#L39
> Fabtools:
> https://github.com/ronnix/fabtools/blob/85f5828c84351a91c29bd2be1544d1922a36f436/fabtools/require/git.py#L51
>
> Saltstack's states are also backed by tests:
> https://github.com/saltstack/salt/blob/000de9597475afa59b0cd6c7c1f6c3dc1c66a0bc/tests/unit/states/git_test.py.
>
> This is just one example of how salt maintains a superb depth / breadth of
> remote system execution commands / recipes. Another way to put it into
> perspective:
>
> http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.git.html is
> to http://fabtools.readthedocs.org/en/latest/api/git.html
>
> like http://docs.saltstack.com/en/latest/ref/states/all/salt.states.git.html
> is to http://fabtools.readthedocs.org/en/latest/api/require/git.html
>
> I have a *very rough* proof of concept demo:
> https://gist.github.com/tony/6d8d975c817d2e4d43dd
>
> Without delving into the complexities of things technically - I want to get
> an idea from your POV and experiences with your fabric projects:
>
> - does you here have any sort of gap to fill with fabric where you would
> benefit from stuff like:
>
>   # make sure vim pkg is installed and latest, if not, install/update
>   debpkg.latest('vim')
>
>   # make sure nginx an nginx site has config file as a template
>   # in /etc/nginx/sites.avail, linked, and service is, running
>   nginx.running(**settings)
> - would anything inside of  / salt.modules.* [1] salt.states.* [2] be
> helpful to you if you could access it pythonically via fabric?
> - Do you already use a tool like cuisine / fabric and wish you had access to
> more commands/requires/cookbooks?
>
> Thank you!
>
> Tony Narlock
>
> [1]
> http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.git.html
> [2]  http://docs.saltstack.com/en/latest/ref/states/all/salt.states.git.html
>
> _______________________________________________
> Fab-user mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/fab-user
>



-- 
Jeff Forcier
Unix sysadmin; Python/Ruby engineer
http://bitprophet.org



reply via email to

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