fabric-package-management

As the name implies, fabric-package-management is a collection of Fabric tasks for package management.

Example

#!/usr/bin/python

from fabric.api import task, prompt, env
from fabric.context_managers import cd
from fabric.operations import reboot

from fabric_package_managment import apt

@task()
def run():
    apt.update()
    apt.upgrade()
    apt.install(['bpython', 'git'])
    with cd('/tmp'):
        apt.source("python-libcloud", download_only=True)
    apt.remove('bpython', purge=True)
    apt.autoremove()
    apt.autoclean()
    if apt.reboot_required():
        prompt("Reboot required. Initiate now?\nYes/No?",
            "response",
            default="No",
            validate=r'yes|Yes|YES|no|No|NO')
        if env.response.lower() == "yes":
            reboot()

Indices and tables