4 ms·
http://pypi.python.org/pypi/Fabric/0.9.0 http://pypi.python.org/pypi/Fabric/0.9.0 Edit: The primary weakness of my approach is that for convenience's sake, I
by heretohelp 14y ago
http://pypi.python.org/pypi/Fabric/0.9.0 http://pypi.python.org/pypi/Fabric/0.9.0
Edit:
The primary weakness of my approach is that for convenience's sake, I rely heavily on apt-get. So hypothetically I'm tied to the debian family. (we use Ubuntu LTS of a couple different versions)
Strictly speaking this disadvantage is unnecessary, you could do all from-source builds using fabric if you wanted. Didn't seem like a constructive use of my time though.
Sample task in my fabfile:
https://gist.github.com/3086836 https://gist.github.com/3086836
I'll let you guess from the function name what it does.
The magic word of devops is "idempotence".
- dredmorbius 14y agoI had a modest epiphany some weeks back thinking about server configuration management: if you want to manage configurations on a given node (to use Chef lingo), it's best to work within a system that facilitates and/or encourages this. For a number of reasons, Debian (or faithful derivatives) comes closest to this of any platform I've encountered. That said: fabric appears to be little more than a multi-system aware task runner. Somewhat like dsh (distributed ssh / dancer's shell): http://www.netfort.gr.jp/~dancer/software/dsh.html http://www.netfort.gr.jp/~dancer/software/dsh.html ... or like Capistrano, as the Debian package description suggests (modulo installing Rails). There's a bad pimp joke around "idempotence" waiting to be made. Your task here would seem to install Oracle's Java 7 HostSpot JVM. How do you get around the licensing question(s) (or is that what the "-y" is for)?
- heretohelp 14y agoThat's what the -y is for. > fabric appears to be little more than a multi-system aware task runner. And C is little more than a portable assembler ;)
- dredmorbius 14y agoFair enough. I'm not trying to be trite, just reading what I see.
- jdf 14y agoThere's a new project called Ansible that may be of interest to you: http://ansible.github.com/ http://ansible.github.com/ While that page has a long list of things they do, the important bits relevant to your comment are 1. a tighter focus on idempotence than Fabric 2. an easy-ish way to integrate package management so you could potentially use the same script to kick off either yum or apt depending on the box
- heretohelp 14y agoThe original reason I abandoned chef and puppet is that I didn't like something getting between me and the shell. Why would I make the same mistake twice? My only real dissatisfaction with Flask is that it cannot handle dispatching its work in parallel. Not a big deal though. I like knowing exactly how things get done.
- StavrosK 14y agoDoesn't Fabric support parallel instructions now? I think I heard something about that, although I'm not entirely sure...
- ersii 14y agoYes, yes - it does. If you'd like to read more about it, visit: http://fabric.readthedocs.org/en/1.3.0/usage/parallel.html http://fabric.readthedocs.org/en/1.3.0/usage/parallel.html
- heretohelp 14y agoI was thinking more along the lines of parallel connections.
- StavrosK 14y agoYeah, it turns out that's what it does, rather than parallel instructions/commands: http://fabric.readthedocs.org/en/1.3.0/usage/parallel.html http://fabric.readthedocs.org/en/1.3.0/usage/parallel.html