柿崎透真 commited on
Commit
845591e
·
1 Parent(s): 35a2d28

revert app.py

Browse files
Files changed (1) hide show
  1. app.py +11 -32
app.py CHANGED
@@ -3,9 +3,9 @@ from huggingface_hub import HfApi
3
  from tempfile import TemporaryDirectory
4
  import importlib.util
5
  import sys
6
- import shutil
7
  import subprocess
8
 
 
9
  def load_private_code():
10
  token = os.environ.get("TOKEN", "")
11
  if token:
@@ -17,29 +17,19 @@ def load_private_code():
17
  except subprocess.CalledProcessError as e:
18
  print("Error installing private module:", e)
19
  api = HfApi(token=os.environ["PRIVATE_REPOSITORY_HF_TOKEN"])
20
-
21
- tmp_dir = TemporaryDirectory() # with文を使用しない
22
-
23
 
24
- try:
25
  # プライベートスペースからファイルをダウンロード
26
  api.snapshot_download(
27
  repo_id="neoai-inc-private/pj-andromeda",
28
  repo_type="space",
29
- local_dir=tmp_dir.name
30
  )
31
-
32
- # tmp_dirをPythonパスに追加
33
- sys.path.append(tmp_dir.name)
34
-
35
- # 現在のディレクトリを一時的に変更
36
- original_dir = os.getcwd()
37
- os.chdir(tmp_dir.name)
38
-
39
- # app.pyをインポート
40
  spec = importlib.util.spec_from_file_location(
41
  "private_app",
42
- os.path.join(tmp_dir.name, "app.py")
43
  )
44
  private_module = importlib.util.module_from_spec(spec)
45
  sys.modules["private_app"] = private_module
@@ -49,27 +39,16 @@ def load_private_code():
49
  except ModuleNotFoundError as e:
50
  print(f"Error loading module: {e}")
51
  print(f"Current sys.path: {sys.path}")
52
- print(f"Contents of tmp_dir: {os.listdir(tmp_dir.name)}")
53
  raise
54
-
55
- # オリジナルのディレクトリに戻す
56
- os.chdir(original_dir)
57
 
58
- return private_module, tmp_dir # tmp_dirも返す
59
- except Exception as e:
60
- raise e
61
 
62
- # プライベートコードを読み込んでGradioアプリを取得
63
- private_app, tmp_dir = load_private_code() # tmp_dirを保持
64
- app = private_app.app # Gradioアプリのインスタンス
65
 
66
- # Cleanup function for when the app stops
67
- def cleanup():
68
- tmp_dir.cleanup()
69
 
70
- # private側の認証情報を使用してアプリを起動
71
  app.launch(
72
  auth=(private_app.USERNAME, private_app.PASSWORD),
73
- ssr_mode=False,
74
- root_path=tmp_dir.name # 一時ディレクトリのパスを設定
75
  )
 
3
  from tempfile import TemporaryDirectory
4
  import importlib.util
5
  import sys
 
6
  import subprocess
7
 
8
+
9
  def load_private_code():
10
  token = os.environ.get("TOKEN", "")
11
  if token:
 
17
  except subprocess.CalledProcessError as e:
18
  print("Error installing private module:", e)
19
  api = HfApi(token=os.environ["PRIVATE_REPOSITORY_HF_TOKEN"])
 
 
 
20
 
21
+ with TemporaryDirectory() as tmp_dir:
22
  # プライベートスペースからファイルをダウンロード
23
  api.snapshot_download(
24
  repo_id="neoai-inc-private/pj-andromeda",
25
  repo_type="space",
26
+ local_dir=tmp_dir
27
  )
28
+ sys.path.append(tmp_dir)
29
+
 
 
 
 
 
 
 
30
  spec = importlib.util.spec_from_file_location(
31
  "private_app",
32
+ os.path.join(tmp_dir, "app.py")
33
  )
34
  private_module = importlib.util.module_from_spec(spec)
35
  sys.modules["private_app"] = private_module
 
39
  except ModuleNotFoundError as e:
40
  print(f"Error loading module: {e}")
41
  print(f"Current sys.path: {sys.path}")
42
+ print(f"Contents of tmp_dir: {os.listdir(tmp_dir)}")
43
  raise
 
 
 
44
 
45
+ return private_module
 
 
46
 
 
 
 
47
 
48
+ private_app = load_private_code()
49
+ app = private_app.app
 
50
 
 
51
  app.launch(
52
  auth=(private_app.USERNAME, private_app.PASSWORD),
53
+ ssr_mode=False
 
54
  )