101 lines
2.3 KiB
Python
101 lines
2.3 KiB
Python
from fabric.api import run, sudo, cd, env, task
|
|
from fabric.colors import green
|
|
|
|
from ..literals import OS_UBUNTU, OS_FEDORA, OS_DEBIAN
|
|
from ..conf import setup_environment
|
|
import linux, ubuntu, fedora, debian
|
|
|
|
|
|
@task
|
|
def install_dependencies():
|
|
"""
|
|
Install OS dependencies
|
|
"""
|
|
setup_environment()
|
|
print(green('Installing dependencies for %s' % env.os_name, bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_DEBIAN]:
|
|
debian.install_dependencies()
|
|
elif env.os == OS_FEDORA:
|
|
fedora.install_dependencies()
|
|
|
|
|
|
@task
|
|
def install_mayan():
|
|
"""
|
|
Install Mayan EDMS
|
|
"""
|
|
setup_environment()
|
|
print(green('Installing Mayan EDMS from git repository', bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_FEDORA, OS_DEBIAN]:
|
|
linux.install_mayan()
|
|
|
|
|
|
@task
|
|
def install_database_manager():
|
|
"""
|
|
Install the selected database manager
|
|
"""
|
|
setup_environment()
|
|
print(green('Installing database manager: %s' % env.database_manager_name, bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_DEBIAN]:
|
|
debian.install_database_manager()
|
|
elif env.os == OS_FEDORA:
|
|
fedora.install_database_manager()
|
|
|
|
|
|
@task
|
|
def fix_permissions():
|
|
"""
|
|
Fix installation files' permissions
|
|
"""
|
|
setup_environment()
|
|
print(green('Fixing installation files\' permissions', bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_DEBIAN]:
|
|
debian.fix_permissions()
|
|
elif env.os == OS_FEDORA:
|
|
fedora.fix_permissions()
|
|
|
|
|
|
@task
|
|
def install_webserver():
|
|
"""
|
|
Installing the OS packages for the webserver
|
|
"""
|
|
setup_environment()
|
|
print(green('Installing webserver: %s' % env.webserver_name, bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_DEBIAN]:
|
|
debian.install_webserver()
|
|
elif env.os == OS_FEDORA:
|
|
fedora.install_webserver()
|
|
|
|
|
|
@task
|
|
def delete_mayan():
|
|
"""
|
|
Delete Mayan EDMS from the OS
|
|
"""
|
|
setup_environment()
|
|
print(green('Deleting Mayan EDMS files', bold=True))
|
|
|
|
if env.os in [OS_UBUNTU, OS_FEDORA, OS_DEBIAN]:
|
|
linux.delete_mayan()
|
|
|
|
|
|
@task
|
|
def post_install():
|
|
"""
|
|
Perform post install operations
|
|
"""
|
|
setup_environment()
|
|
if env.os == OS_UBUNTU:
|
|
ubuntu.post_install()
|
|
elif env.os == OS_FEDORA:
|
|
fedora.post_install()
|
|
elif env.os == OS_DEBIAN:
|
|
debian.post_install()
|