def update_context()

in modular-service-cli/modular_service_cli/group/__init__.py [0:0]


    def update_context(ctx: click.Context):
        """
        Updates the given (current) click context's obj with api
        client instance and config instance
        :param ctx:
        :return:
        """
        if CredentialsProvider:
            _LOG.debug('Cli sdk is installed. Using its credentials provider')
            config = ModularCliSdkConfig(
                credentials_manager=CredentialsProvider(
                    module_name='modular-service-cli', context=ctx
                ).credentials_manager
            )
        else:
            _LOG.warning(
                'Could not import modular_cli_sdk. Using standard '
                'config instead of the one provided by cli skd'
            )
            m3_username = None
            if isinstance(ctx.obj, dict):
                m3_username = ctx.obj.get('modular_admin_username')
            if isinstance(m3_username, str):  # basically if not None
                # modular
                config = OnDiskModularServiceConfig(prefix=m3_username)
            else:
                # standard
                config = OnDiskModularServiceConfig()

        ctx.obj = ContextObj(
            config=config,
            api_client=ModularServiceApiClient(config)
        )