(self, parsed_args, parsed_globals)
| 47 | ] |
| 48 | |
| 49 | def _run_main(self, parsed_args, parsed_globals): |
| 50 | sso_config = self._get_sso_config(sso_session=parsed_args.sso_session) |
| 51 | start_url = sso_config['sso_start_url'] |
| 52 | configured_region = sso_config.get('sso_region') |
| 53 | |
| 54 | verify = parsed_globals.verify_ssl |
| 55 | if verify is None: |
| 56 | verify = self._session.get_config_variable('ca_bundle') |
| 57 | resolved_url, region = resolve_start_url( |
| 58 | start_url, |
| 59 | session=self._session, |
| 60 | configured_region=configured_region, |
| 61 | timeout=parsed_globals.connect_timeout, |
| 62 | verify=verify, |
| 63 | ) |
| 64 | |
| 65 | on_pending_authorization = None |
| 66 | if parsed_args.no_browser: |
| 67 | on_pending_authorization = PrintOnlyHandler() |
| 68 | do_sso_login( |
| 69 | session=self._session, |
| 70 | parsed_globals=parsed_globals, |
| 71 | sso_region=region, |
| 72 | start_url=start_url, |
| 73 | resolved_start_url=resolved_url, |
| 74 | on_pending_authorization=on_pending_authorization, |
| 75 | force_refresh=True, |
| 76 | session_name=sso_config.get('session_name'), |
| 77 | registration_scopes=sso_config.get('registration_scopes'), |
| 78 | use_device_code=parsed_args.use_device_code, |
| 79 | ) |
| 80 | |
| 81 | # Only rewrite sso_region after successful login. |
| 82 | if configured_region != region: |
| 83 | self._write_sso_region(sso_config, region) |
| 84 | uni_print(f'SSO region updated to {region}\n') |
| 85 | |
| 86 | success_msg = 'Successfully logged into Start URL: %s\n' |
| 87 | uni_print(success_msg % start_url) |
| 88 | return 0 |
| 89 | |
| 90 | def _write_sso_region(self, sso_config, new_region): |
| 91 | session_name = sso_config.get('session_name') |
nothing calls this directly
no test coverage detected