diff --git a/context_managers.py b/context_managers.py new file mode 100644 index 0000000..e64b0f8 --- /dev/null +++ b/context_managers.py @@ -0,0 +1,17 @@ +from fabric.api import env, run, cd, settings, local + +env.roledefs = { + 'web': ['web1', 'web2', 'web3'], + 'db': ['db1', 'db2'] +} + +def cd_example(): + with cd('/tmp'): + run('pwd') + + +def push_anyway(): + with settings(warn_only=True): + # simulate failure + local('false') + run('echo doing it anyway')