Example #1
0
def _settings_prompt():
    settings = _get_remote_settings()
    if settings:
        show = confirm('Settings file found on remote, show its contents?',
                default=True)
        if show:
            for k, v in settings.items():
                print k + ' = ' + v
        # The secret key is never changed if it is available, other settings
        # can be overwritten
        env.secret_key = settings['ROTD_SECRET_KEY']
        keep = confirm('Keep settings?', default=True)
        if keep:
            settings_map = (('db_name', 'ROTD_DB_NAME'), ('db_user',
                'ROTD_DB_USER'), ('db_pass', 'ROTD_DB_PASSWORD'),
                ('email_host', 'ROTD_EMAIL_HOST'), ('email_port',
                'ROTD_EMAIL_PORT'), ('email_user', 'ROTD_EMAIL_HOST_USER'),
                ('email_pass', 'ROTD_EMAIL_HOST_PASSWORD'), ('contact_email',
                'ROTD_CONTACT_EMAIL'))
            for e, s in settings_map:
                env[e] = settings[s]
            return

    env.db_name = prompt('Database name: ', default='rotd')
    env.db_user = prompt('Database user: '******'rotd')
    env.db_pass = getpass('Database password: '******'Confirm database password: '******'Email host: ', default='localhost')
    env.email_port = prompt('Email port: ', default='587')
    env.email_user = prompt('Robot email address: ',
            default='noreply@{}'.format(env.host))
    env.email_pass = getpass('Email password: '******'Confirm email password: '******'Contact form destination mail: ',
            default='contact@{}'.format(env.host))
Example #2
0
def _settings_prompt(env):
    settings = _get_remote_settings(env)
    if settings:
        show = confirm('Settings file found on remote, show its contents?',
            default=True)
        if show:
            for k, v in settings.items():
                print(str(k) + ' = ' + str(v))
        # The secret key is never changed if it is available, other
        # settings can be overwritten
        env.secret_key = settings['PROJMAN_SECRET_KEY']
        # Ask the user if they want to keep the old settings
        keep = confirm('Keep settings?', default=True)
        if keep:
            for e, s in settings_map:
                if s in settings.keys():
                    env[e] = settings[s]

    # Always make sure that some secret key is set
    env.secret_key = _secret_key(env)

    # Each setting is checked whether it is set, this is done so that the
    # user can keep the settings on the server while also needing to
    # enter new settings whenever those are added. Otherwise the user
    # would have to enter all the settings again
    if 'db_name' not in env.keys():
        env.db_name = prompt('Database name: ', default='projman')
    if 'db_user' not in env.keys():
        env.db_user = prompt('Database user: '******'projman')
    if 'db_pass' not in env.keys():
        env.db_pass = _password_prompt('Database')
    if 'email_host' not in env.keys():
        env.email_host = prompt('Email host: ', default='localhost')
    if 'email_port' not in env.keys():
        env.email_port = prompt('Email port: ', default='587')
    if 'email_user' not in env.keys():
        env.email_user = prompt('Robot email address: ')
    if 'email_pass' not in env.keys():
        env.email_pass = _password_prompt('Email')