# # Copyright (c) 2014 ThoughtWorks, Inc. # # Pixelated is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # Pixelated is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License # along with Pixelated. If not, see . import ConfigParser import os import getpass def parse_config_from_file(config_file): config_parser = ConfigParser.ConfigParser() config_file_path = os.path.abspath(os.path.expanduser(config_file)) config_parser.read(config_file_path) provider, user, password = \ config_parser.get('pixelated', 'leap_server_name'), \ config_parser.get('pixelated', 'leap_username'), \ config_parser.get('pixelated', 'leap_password') return provider, user, password def prompt_for_credentials(): provider = raw_input('Which provider do you want to connect to:\n') username = raw_input('What\'s your username registered on the provider:\n') password = getpass.getpass('Type your password:\n') return provider, username, password def config_user_agent(config_file): provider, user, password = parse_config_from_file(config_file) if config_file else prompt_for_credentials() return (provider, user, password)