def initialize(self, region='us-west-1', host='localhost', port=8000, access_key=None, secret_key=None, config_dir=None): """ Set up the repl for execution. """ # Tab-complete names with a '-' in them import readline delims = set(readline.get_completer_delims()) if '-' in delims: delims.remove('-') readline.set_completer_delims(''.join(delims)) self._conf_dir = (config_dir or os.path.join(os.environ.get('HOME', '.'), '.config')) self.session = botocore.session.get_session() if access_key: self.session.set_credentials(access_key, secret_key) if region == 'local': conn = DynamoDBConnection.connect_to_host(host, port, session=self.session) else: conn = DynamoDBConnection.connect_to_region(region, self.session) self.engine = FragmentEngine(conn) conf = self.load_config() display_name = conf.get('display') if display_name is not None: self.display = DISPLAYS[display_name] else: self.display = get_default_display() self.formatter = SmartFormat(pagesize=conf.get('pagesize', 1000), width=conf.get('width', 80)) for line in conf.get('autorun', []): six.exec_(line, self.engine.scope)
def do_use(self, region, host='localhost', port=8000): """ Switch the AWS region You may also specify 'use local host=localhost port=8000' to use the DynamoDB Local service """ if region == 'local': conn = DynamoDBConnection.connect_to_host( host, port, session=self.session) else: conn = DynamoDBConnection.connect_to_region(region, self.session) self.engine.connection = conn
def test_connect_to_host_without_session_old(self): """ Can connect to a dynamo host without passing in a session """ conn = DynamoDBConnection.connect_to_host(access_key='abc', secret_key='12345') self.assertIsNotNone(conn.host)
def connect_to_host(self, **kwargs): """ Connect to a specific host """ self.dynamo = DynamoDBConnection.connect_to_host(**kwargs)
def connect_to_host(self, *args, **kwargs): """ Connect the engine to a specific host """ self.connection = DynamoDBConnection.connect_to_host(*args, **kwargs)
def test_connect_to_host_without_session(self): """ Can connect to a dynamo host without passing in a session """ conn = DynamoDBConnection.connect_to_host() self.assertIsNotNone(conn.host)