| 114 | |
| 115 | |
| 116 | def create_clidriver(args=None, event_hooks=None): |
| 117 | debug = None |
| 118 | if args is not None: |
| 119 | parser = FirstPassGlobalArgParser() |
| 120 | args, _ = parser.parse_known_args(args) |
| 121 | debug = args.debug |
| 122 | if event_hooks is None: |
| 123 | event_hooks = LazyInitEmitter( |
| 124 | main_command_table_ops=MAIN_COMMAND_TABLE_OPS |
| 125 | ) |
| 126 | session = botocore.session.Session(event_hooks=event_hooks) |
| 127 | _set_user_agent_for_session(session) |
| 128 | load_plugins( |
| 129 | session.full_config.get('plugins', {}), |
| 130 | event_hooks=session.get_component('event_emitter'), |
| 131 | ) |
| 132 | error_handlers_chain = construct_cli_error_handlers_chain(session) |
| 133 | driver = CLIDriver( |
| 134 | session=session, error_handler=error_handlers_chain, debug=debug |
| 135 | ) |
| 136 | return driver |
| 137 | |
| 138 | |
| 139 | def validate_auto_prompt_args_are_mutually_exclusive(args): |