Beispiel #1
0
def mysql_create_dbuser(name, user, password):
    q1 = "GRANT USAGE ON " + name + ".* TO '" + user + "'@'localhost';"
    q2 = "CREATE USER '" + user + "'@'localhost' IDENTIFIED BY '" + password + "';"
    q3 = "FLUSH PRIVILEGES;"
    root_password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \"" + q1 + " " +
        q2 + " " + q3 + "\" mysql")
Beispiel #2
0
def mysql_admin(env, command):
    """Runs a mysql command without specifying which database to run it on.
    Badly named."""
    run('mysql --default-character-set=utf8 -u%s -p%s -e "%s"' % (
        env.db.user,
        env.db.password,
        command,
    ))
Beispiel #3
0
def configure_mysql():
    sudo("apt-get install mysql-server python-mysqldb")
    with cd("project"):
        run("rm -rf local*")
        run("./django-create-local-settings")
        run("./django-add-db")
        run("./mysql-create-djangouser")
        run("python manage.py syncdb")
Beispiel #4
0
def test(module="", verbose=0):
    verbose = int(verbose)
    if verbose == 1:
        grep_filter = ""
    else:
        grep_filter = "| grep '\(Assertion\)\|\(\.\.\.\.\)\|\(Ran\)'"
    with cd("project"):
        run("python manage.py test %s 2>&1 %s " % (module, grep_filter))
Beispiel #5
0
def configure_mysql():
    sudo("apt-get install mysql-server python-mysqldb")
    with cd("project"):
        run("rm -rf local*")
        run("./django-create-local-settings")
        run("./django-add-db")
        run("./mysql-create-djangouser")
        run("python manage.py syncdb")
Beispiel #6
0
def test(module="",verbose=0):
    verbose = int(verbose)
    if verbose == 1:
        grep_filter = ""
    else:
        grep_filter = "| grep '\(Assertion\)\|\(\.\.\.\.\)\|\(Ran\)'"
    with cd("project"):
        run("python manage.py test %s 2>&1 %s " % (module, grep_filter))
Beispiel #7
0
def install_npm():
    with settings(warn_only=True):
        result = run("npm --version")

    if result.failed:
        sudo("apt-get install curl")
        run("curl http://npmjs.org/install.sh | sh")
    else:
        print "npm already installed"
Beispiel #8
0
def mysql_dump(env):
    """Dumps the db of the given env to a random temporary file, and returns
    path to said file."""
    tmp_file = random_tmp_file()
    run("mysqldump --default-character-set=utf8 %s > %s" % (
        envs.production.db.info,
        tmp_file,
    ))
    return tmp_file
Beispiel #9
0
def install_npm():
    with settings(warn_only=True):
        result = run("npm --version")

    if result.failed:
        sudo("apt-get install curl")
        run("curl http://npmjs.org/install.sh | sh")
    else:
        print "npm already installed"
Beispiel #10
0
def mysql_reset_db_from_file(env, file):
    """Drops, creates and the loads the content from a file into the given
    env"""
    mysql_admin(env, 'DROP DATABASE IF EXISTS %s;' % env.db.name)
    mysql_admin(env, 'CREATE DATABASE %s;' % env.db.name)
    run("mysql --default-character-set=utf8 %s < %s" %(
        env.db.info,
        file
    ))
Beispiel #11
0
def db_drop_djangouser():
    import project.settings as settings 
    dbname = settings.DATABASES['default']['NAME']
    dbuser = settings.DATABASES['default']['USER']
    dbpass = settings.DATABASES['default']['PASSWORD']
    q1 = "GRANT USAGE ON "+dbname+".* TO '"+dbuser+"'@'localhost';"
    q2 = "DROP USER "+dbuser+"@localhost;"
    q3 = "FLUSH PRIVILEGES;"
    sql = q1+" "+q2+" "+q3
    password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \""+sql+"\" mysql")
Beispiel #12
0
def db_create():
    import project.settings as settings 
    dbname = settings.DATABASES['default']['NAME']
    dbuser = settings.DATABASES['default']['USER']
    dbpass = settings.DATABASES['default']['PASSWORD']
    q1 = "GRANT USAGE ON "+dbname+".* TO '"+dbuser+"'@'localhost';"
    q2="CREATE DATABASE "+dbname+";"
    q3="GRANT ALL ON $dbname.* TO '$dbuser'@'localhost' WITH GRANT OPTION;"
    q4="FLUSH PRIVILEGES;"
    sql = q1+" "+q2+" "+q3+" "+q4
    password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \""+sql+"\" mysql")
Beispiel #13
0
def db_drop_djangouser():
    import project.settings as settings
    dbname = settings.DATABASES['default']['NAME']
    dbuser = settings.DATABASES['default']['USER']
    dbpass = settings.DATABASES['default']['PASSWORD']
    q1 = "GRANT USAGE ON " + dbname + ".* TO '" + dbuser + "'@'localhost';"
    q2 = "DROP USER " + dbuser + "@localhost;"
    q3 = "FLUSH PRIVILEGES;"
    sql = q1 + " " + q2 + " " + q3
    password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \"" + sql +
        "\" mysql")
Beispiel #14
0
def db_create():
    import project.settings as settings
    dbname = settings.DATABASES['default']['NAME']
    dbuser = settings.DATABASES['default']['USER']
    dbpass = settings.DATABASES['default']['PASSWORD']
    q1 = "GRANT USAGE ON " + dbname + ".* TO '" + dbuser + "'@'localhost';"
    q2 = "CREATE DATABASE " + dbname + ";"
    q3 = "GRANT ALL ON $dbname.* TO '$dbuser'@'localhost' WITH GRANT OPTION;"
    q4 = "FLUSH PRIVILEGES;"
    sql = q1 + " " + q2 + " " + q3 + " " + q4
    password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \"" + sql +
        "\" mysql")
Beispiel #15
0
def install_coffee():
    with settings(warn_only=True):
        result = run("coffee --version")

    if result.failed:
        sudo("npm install -g coffee-script")
    else:
        print "Coffeescript already installed"
Beispiel #16
0
def install_coffee():
    with settings(warn_only=True):
        result = run("coffee --version")

    if result.failed:
        sudo("npm install -g coffee-script")
    else:
        print "Coffeescript already installed"
Beispiel #17
0
def install_nodejs():
    NODE_VERSION = "v0.6.5"

    with settings(warn_only=True):
        result = run("node --version")

    if result.failed:
        with cd("lib/node"):
            run("git checkout %s" % NODE_VERSION)
            sudo("apt-get install libssl-dev openssl")
            run("./configure")
            run("make")
            sudo("make install")
    else:
        print "Node.js already installed"

    install_npm()
Beispiel #18
0
def install_nodejs():
    NODE_VERSION = "v0.6.5"

    with settings(warn_only=True):
        result = run("node --version")
        
    if result.failed:
        with cd("lib/node"):
            run("git checkout %s" % NODE_VERSION)
            sudo("apt-get install libssl-dev openssl")
            run("./configure")
            run("make")
            sudo("make install")
    else:
        print "Node.js already installed"

    install_npm()
Beispiel #19
0
def db_flush():
    import project.settings as settings 
    dbconfig = settings.DATABASES['default']
    dbengine = dbconfig['ENGINE'].split(".")[-1]

    if dbengine == 'sqlite3':
        dbfile = settings.DATABASES['default']['NAME'].split("/")
        dbfile = dbfile[1]
        with cd("project"):
            run("rm "+dbfile+" -rf")
    elif dbengine == 'mysql':
        cmd = "mysqldump -u%s -p%s --add-drop-table --no-data %s | grep ^DROP | mysql -u%s -p%s %s"
        cmd %= (dbconfig['USER'], dbconfig['PASSWORD'], dbconfig['NAME'],
                dbconfig['USER'], dbconfig['PASSWORD'], dbconfig['NAME'])
        run(cmd)

    with cd("project"):
        run("echo 'no' | python manage.py syncdb")
    load_superuser()
Beispiel #20
0
def db_flush():
    import project.settings as settings
    dbconfig = settings.DATABASES['default']
    dbengine = dbconfig['ENGINE'].split(".")[-1]

    if dbengine == 'sqlite3':
        dbfile = settings.DATABASES['default']['NAME'].split("/")
        dbfile = dbfile[1]
        with cd("project"):
            run("rm " + dbfile + " -rf")
    elif dbengine == 'mysql':
        cmd = "mysqldump -u%s -p%s --add-drop-table --no-data %s | grep ^DROP | mysql -u%s -p%s %s"
        cmd %= (dbconfig['USER'], dbconfig['PASSWORD'], dbconfig['NAME'],
                dbconfig['USER'], dbconfig['PASSWORD'], dbconfig['NAME'])
        run(cmd)

    with cd("project"):
        run("echo 'no' | python manage.py syncdb")
    load_superuser()
Beispiel #21
0
def mysql_create_dbuser(name,user,password):
    q1 = "GRANT USAGE ON "+name+".* TO '"+user+"'@'localhost';"
    q2 = "CREATE USER '"+user+"'@'localhost' IDENTIFIED BY '"+password+"';"
    q3 = "FLUSH PRIVILEGES;"
    root_password = input("Please, enter root password")
    run("mysql --user=root --password="******" -e \""+q1+" "+q2+" "+q3+"\" mysql")
Beispiel #22
0
def mysql(env, command):
    """Runs a mysql command on the given env."""
    run('mysql --default-character-set=utf8 %s -e "%s"' % (
        env.db.info,
        command,
    ))
Beispiel #23
0
def init_submodules():
    run("git submodule init")
    run("git submodule update")
Beispiel #24
0
def test():
    with cd("project"):
        run("python manage.py test")
Beispiel #25
0
def run_development():
    with cd("project"):
        run("python manage.py runserver 0.0.0.0:8000")
Beispiel #26
0
def mysql_copy_db(from_env, to_env):
    """Copy a database from one env to another."""
    tmp_file = mysql_dump(from_env)
    mysql_reset_db_from_file(to_env, tmp_file)
    run("rm %s" % tmp_file)
Beispiel #27
0
def load_superuser():
    with cd("project"):
        run("python manage.py loaddata superuser")
Beispiel #28
0
def init_submodules():
    run("git submodule init")
    run("git submodule update")
Beispiel #29
0
def load_superuser():
    with cd("project"):
        run("python manage.py loaddata superuser")
Beispiel #30
0
def test():
    with cd("project"):
        run("python manage.py test")
Beispiel #31
0
def run_development():
    with cd("project"):
        run("python manage.py runserver 0.0.0.0:8000")