    async def start_show_config(self):
        """Async wrapper around base start_show_config method"""
        # We need this because of our custom launch_instance_async,
        # where `start` isn't a blocking call,
        # it only gets async things going
        # and `--show-config` replaces `start` with a blocking function.
        # so our version:
        # 1. calls the original blocking method
        # 2. stops the event loop when we are done, so the process exits
        super().start_show_config()
        self.exit(0)
Async wrapper around base start_show_config method
jupyterhub/app.py