Ejemplo n.º 1
0
def uninstall_package(name):
    installed = get_installed_packages()
    if name not in installed:
        return InstallationStatuses.NOT_INSTALLED

    package = installed.get(name)
    formula = import_formula_module(package.get('formula_name'))
    if not formula:
        return InstallationStatuses.BAD_FORMULA

    status = formula.uninstall()
    if status != InstallationStatuses.UNINSTALL_OK:
        return status

    package = Package.get(name=name)
    package.delete_instance()

    return status