Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Simple, Pythonic remote execution and deployment

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 docs
Octocat-spinner-32 fabfile
Octocat-spinner-32 fabric
Octocat-spinner-32 tests
Octocat-spinner-32 .gitignore
Octocat-spinner-32 AUTHORS
Octocat-spinner-32 INSTALL
Octocat-spinner-32 LICENSE
Octocat-spinner-32 MANIFEST.in
Octocat-spinner-32 README
Octocat-spinner-32 requirements.txt
Octocat-spinner-32 setup.py
README
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.

This branch adds in a few more features to basic Fabric. It will create one 
process per host given for parallel execution on commands, unless one sets the
pool size with the connad flag. I have leveraged the multiprocessing module to 
do this. 

There are new command flags for fab:
  -P, --parallel        use the multiprocessing module to fork by hosts
  -z FORKS, --pool-size=FORKS
                          Set the number of forks to use in the pool.

I have also added two decorators:
@runs_parallel
@runs_sequential

These will allow a fab file command to be set to be run either in parallel or
sequentially regardless of the fab command flag. Without these commands switch 
when the flag is set.

If you are interested in the guts, the implementation is in the main.py file,
and uses the Job_Queue class in the job_queue.py file. Note that this is only
implemented in the fab command, as there is no way to determine how one will 
execute functions if they are using Fabric as a helper library.

One other thing to note being that if you set a pool size larger than the
number of hosts, it'll set the pool size to the number of hosts. Otherwise an
error about poping from an empty list will crop up.
Something went wrong with that request. Please try again.