Esempio n. 1
0
 def test_choose_timestamp_parser_profile_not_found(self):
     session = Mock(spec=Session)
     session.get_scoped_config.side_effect = ProfileNotFound(profile='foo')
     factory = session.get_component.return_value
     scalarparse.add_scalar_parsers(session)
     factory.set_parser_defaults.assert_called_with(
         timestamp_parser=scalarparse.identity)
Esempio n. 2
0
 def test_choose_timestamp_parser_profile_not_found(self):
     session = Mock(spec=Session)
     session.get_scoped_config.side_effect = ProfileNotFound(profile='foo')
     factory = session.get_component.return_value
     scalarparse.add_scalar_parsers(session)
     factory.set_parser_defaults.assert_called_with(
         timestamp_parser=scalarparse.identity)
Esempio n. 3
0
 def test_choose_invalid_timestamp_formatter(self):
     session = Mock(spec=Session)
     session.get_scoped_config.return_value = {'cli_timestamp_format':
                                               'foobar'}
     session.get_component.return_value
     with self.assertRaises(ValueError):
         scalarparse.add_scalar_parsers(session)
 def test_scalar_parsers_set(self):
     session = mock.Mock()
     scalarparse.add_scalar_parsers(session)
     session.get_component.assert_called_with('response_parser_factory')
     factory = session.get_component.return_value
     factory.set_parser_defaults.assert_called_with(
         blob_parser=scalarparse.identity,
         timestamp_parser=scalarparse.identity)
Esempio n. 5
0
 def test_scalar_parsers_set(self):
     session = mock.Mock()
     scalarparse.add_scalar_parsers(session)
     session.get_component.assert_called_with('response_parser_factory')
     factory = session.get_component.return_value
     factory.set_parser_defaults.assert_called_with(
         blob_parser=scalarparse.identity,
         timestamp_parser=scalarparse.identity)
Esempio n. 6
0
 def test_choose_invalid_timestamp_formatter(self):
     session = Mock(spec=Session)
     session.get_scoped_config.return_value = {
         'cli_timestamp_format': 'foobar'
     }
     session.get_component.return_value
     with self.assertRaises(ValueError):
         scalarparse.add_scalar_parsers(session)
Esempio n. 7
0
 def test_choose_iso_timestamp_formatter(self):
     session = Mock(spec=Session)
     session.get_scoped_config.return_value = {'cli_timestamp_format':
                                               'iso8601'}
     factory = session.get_component.return_value
     scalarparse.add_scalar_parsers(session)
     factory.set_parser_defaults.assert_called_with(
         timestamp_parser=scalarparse.iso_format)
Esempio n. 8
0
 def test_choose_iso_timestamp_formatter(self):
     session = Mock(spec=Session)
     session.get_scoped_config.return_value = {
         'cli_timestamp_format': 'iso8601'
     }
     factory = session.get_component.return_value
     scalarparse.add_scalar_parsers(session)
     factory.set_parser_defaults.assert_called_with(
         timestamp_parser=scalarparse.iso_format)
Esempio n. 9
0
 def test_scalar_parsers_set(self):
     session = Mock()
     session.get_scoped_config.return_value = {'cli_timestamp_format':
                                               'none'}
     scalarparse.add_scalar_parsers(session)
     session.get_component.assert_called_with('response_parser_factory')
     factory = session.get_component.return_value
     expected = [call(blob_parser=scalarparse.identity),
                 call(timestamp_parser=scalarparse.identity)]
     self.assertEqual(factory.set_parser_defaults.mock_calls,
                      expected)
Esempio n. 10
0
 def test_scalar_parsers_set(self):
     session = Mock()
     session.get_scoped_config.return_value = {
         'cli_timestamp_format': 'none'
     }
     scalarparse.add_scalar_parsers(session)
     session.get_component.assert_called_with('response_parser_factory')
     factory = session.get_component.return_value
     expected = [
         call(blob_parser=scalarparse.identity),
         call(timestamp_parser=scalarparse.identity)
     ]
     self.assertEqual(factory.set_parser_defaults.mock_calls, expected)
Esempio n. 11
0
import botocore.credentials

session = botocore.session.get_session()

if hasattr(botocore.credentials, 'JSONFileCache'):
    cli_cache = os.path.join(os.path.expanduser('~'), '.aws/cli/cache')
    try:
        session.get_component('credential_provider').get_provider('assume-role').cache = botocore.credentials.JSONFileCache(cli_cache)
    except botocore.exceptions.ProfileNotFound as e:
        sys.exit(e)
else:
    # workaround old awscli without https://github.com/boto/botocore/pull/1157
    from awscli.customizations.assumerole import inject_assume_role_provider_cache
    from awscli.customizations.scalarparse import add_scalar_parsers
    inject_assume_role_provider_cache(session)
    add_scalar_parsers(session)

try:
    credentials = session.get_credentials()
    if credentials is None:
        sys.exit('Unable to locate AWS credentials.')
    frozen_credentials = credentials.get_frozen_credentials()
except KeyboardInterrupt as e:
    sys.exit(e)
except botocore.exceptions.ParamValidationError as e:
    sys.exit(e)
except botocore.exceptions.ProfileNotFound as e:
    sys.exit(e)
except botocore.exceptions.ClientError as e:
    sys.exit(e)