Skip to content
/ fabric Public
forked from getsentry/fabric

Simple, Pythonic remote execution and deployment.

License

Notifications You must be signed in to change notification settings

mapping/fabric

This branch is up to date with getsentry/fabric:master.

Folders and files

NameName
Last commit message
Last commit date
Jul 15, 2013
May 23, 2013
Jul 15, 2013
Jul 7, 2013
Jul 7, 2013
Oct 19, 2012
Jul 6, 2013
Jul 6, 2012
Feb 27, 2013
Oct 26, 2009
Dec 31, 2012
Nov 7, 2012
Jul 7, 2013
Jul 7, 2013
Jul 7, 2013
Nov 30, 2012

Repository files navigation

https://secure.travis-ci.org/fabric/fabric.png?branch=master

Fabric is a Python (2.5 or higher) library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks.

It provides a basic suite of operations for executing local or remote shell commands (normally or via sudo) and uploading/downloading files, as well as auxiliary functionality such as prompting the running user for input, or aborting execution.

Typical use involves creating a Python module containing one or more functions, then executing them via the fab command-line tool. Below is a small but complete "fabfile" containing a single task:

from fabric.api import run

def host_type():
    run('uname -s')

Once a task is defined, it may be run on one or more servers, like so:

$ fab -H localhost,linuxbox host_type
[localhost] run: uname -s
[localhost] out: Darwin
[linuxbox] run: uname -s
[linuxbox] out: Linux

Done.
Disconnecting from localhost... done.
Disconnecting from linuxbox... done.

In addition to use via the fab tool, Fabric's components may be imported into other Python code, providing a Pythonic interface to the SSH protocol suite at a higher level than that provided by e.g. the ssh library (which Fabric itself uses.)

About

Simple, Pythonic remote execution and deployment.

Resources

License

Stars

Watchers

Forks

Packages

No packages published