Commit d7fbb9ae authored by Alex Willmer's avatar Alex Willmer Committed by David Wilson

docs: Link compared projects to their website

All outgoing links checked with

```bash
cd docs
make linkcheck
```
parent 4615ab1a
......@@ -10,23 +10,30 @@ maturity/age, quality of tests, function matrix)
Ansible
#######
Ansible is a complete provisioning system, Mitogen is a small component of such a system.
Ansible_ is a complete provisioning system, Mitogen is a small component of such a system.
You should use Ansible if ...
You should not use Ansible if ...
.. _Ansible: https://docs.ansible.com/ansible/latest/index.html
.. _ansible.src: https://github.com/ansible/ansible/
Baker
#####
http://bitbucket.org/mchaput/baker
Baker_ lets you easily add a command line interface to your Python
functions using a simple decorator, to create scripts with "sub-commands",
similar to Django's ``manage.py``, ``svn``, ``hg``, etc.
.. _Baker: https://bitbucket.org/mchaput/baker
Chopsticks
##########
also supports recursion! but the recursively executed instance has no special knowledge of its identity in a tree structure, and little support for functions running in the master to directly invoke functions in a recursive context.. effectively each recursion produces a new master, from which function calls must be made.
Chopsticks_ also supports recursion! but the recursively executed instance has no special knowledge of its identity in a tree structure, and little support for functions running in the master to directly invoke functions in a recursive context.. effectively each recursion produces a new master, from which function calls must be made.
executing functions from __main__ entails picking just that function and deps
out of the main module, not transferring the module intact. that approach works
......@@ -56,10 +63,14 @@ too harshly!)
You should use Chopsticks if you need Python 3 support.
.. _Chopsticks: https://chopsticks.readthedocs.io/en/stable/
.. _Chopsticks.src: https://github.com/lordmauve/chopsticks/
Execnet
#######
Execnet_
- Parent and children may use threads, gevent, or eventlet, Mitogen only supports threads.
- No recursion
- Similar Channel abstraction but better developed.. includes waiting for remote to close its end
......@@ -71,11 +82,12 @@ Execnet
You should use Execnet if you value code maturity more than featureset.
.. _Execnet: https://codespeak.net/execnet/
Fabric
######
allows execution of shell snippets on remote machines, Python functions run
Fabric_ allows execution of shell snippets on remote machines, Python functions run
locally, any remote interaction is fundamentally done via shell, with all the
limitations that entails. prefers to depend on SSH features (e.g. tunnelling)
than reinvent them
......@@ -83,60 +95,72 @@ than reinvent them
You should use Fabric if you enjoy being woken at 4am to pages about broken
shell snippets.
.. _fabric: http://www.fabfile.org/
Invoke
######
http://www.pyinvoke.org/
Invoke_
Python 2.6+, 3.3+
Basically a Fabric-alike
.. _invoke: http://www.pyinvoke.org/
Paver
#####
https://github.com/paver/paver/
Paver_
More or less another task execution framework / make-alike, doesn't really deal
with remote execution at all.
.. _Paver: https://github.com/paver/paver/
Plumbum
#######
https://pypi.python.org/pypi/plumbum
Plumbum_
Shell-only
Basically syntax sugar for running shell commands. Nicer than raw shell
(depending on your opinions of operating overloading), but it's still shell.
.. _Plumbum: https://pypi.python.org/pypi/plumbum
Pyro4
#####
Pyro4_
...
.. _Pyro4: https://pythonhosted.org/Pyro4/
RPyC
####
RPyC_
- supports transparent object proxies similar to Pyro (with all the pain and suffering hidden network IO entails)
- significantly more 'frameworkey' feel
- runs multiplexer in a thread too?
- bootstrap over SSH only, no recursion and no sudo
- requires a writable filesystem
.. _RPyC: https://rpyc.readthedocs.io/en/latest/
Salt
####
To Salt
#######
Salt_
- no crappy deps
You should use Salt if you enjoy firefighting endless implementation bugs,
otherwise you should prefer Ansible.
.. _Salt: https://docs.saltstack.com/en/latest/topics/
.. _Salt.src: https://github.com/saltstack/salt
......@@ -38,7 +38,7 @@ and efficient low-level API on which tools like `Salt`_, `Ansible`_, or
.. _Salt: https://docs.saltstack.com/en/latest/
.. _Ansible: http://docs.ansible.com/
.. _Fabric: http://docs.fabfile.org/en/
.. _Fabric: http://www.fabfile.org/
The focus is to centralize and perfect the intricate dance required to run
Python code safely and efficiently on a remote machine, while **avoiding
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment