diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-04-29 13:56:20 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-29 13:56:20 +0000 |
commit | f2af6dad71a6f56b04b85566481ffb3cd55ae2a8 (patch) | |
tree | a7965e268523411e5e8af08dff60951df2fef4a2 | |
parent | 78b5bed3748c999514ed54ecdf7a68bbe3e34a04 (diff) | |
parent | 3158d17ccf6adfe974691f46526773df2f4028f5 (diff) | |
download | stable-diffusion-webui-gfx803-f2af6dad71a6f56b04b85566481ffb3cd55ae2a8.tar.gz stable-diffusion-webui-gfx803-f2af6dad71a6f56b04b85566481ffb3cd55ae2a8.tar.bz2 stable-diffusion-webui-gfx803-f2af6dad71a6f56b04b85566481ffb3cd55ae2a8.zip |
Merge pull request #9351 from nart4hire/fix-ngrok-recreate-tunnel
Fix Ngrok recreating tunnels every reload
-rw-r--r-- | modules/ngrok.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/modules/ngrok.py b/modules/ngrok.py index 3df2c06b..1ad7989b 100644 --- a/modules/ngrok.py +++ b/modules/ngrok.py @@ -13,6 +13,18 @@ def connect(token, port, region): config = conf.PyngrokConfig( auth_token=token, region=region ) + + # Guard for existing tunnels + existing = ngrok.get_tunnels(pyngrok_config=config) + if existing: + for established in existing: + # Extra configuration in the case that the user is also using ngrok for other tunnels + if established.config['addr'][-4:] == str(port): + public_url = existing[0].public_url + print(f'ngrok has already been connected to localhost:{port}! URL: {public_url}\n' + 'You can use this link after the launch is complete.') + return + try: if account is None: public_url = ngrok.connect(port, pyngrok_config=config, bind_tls=True).public_url |