amanpreet7 commited on
Commit
679430a
·
verified ·
1 Parent(s): d24b4dd

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +15 -9
app.py CHANGED
@@ -14,13 +14,13 @@ from googleapiclient.errors import HttpError
14
 
15
  def setup_kaggle_api():
16
  try:
17
- os.environ["KAGGLE_USERNAME"] = st.secrets["KAGGLE_USERNAME"]
18
- os.environ["KAGGLE_KEY"] = st.secrets["KAGGLE_KEY"]
19
  api = KaggleApi()
20
  api.authenticate()
21
  return api
22
  except KeyError as e:
23
- st.error(f"Missing Kaggle secret: {e}")
24
  st.stop()
25
  except Exception as e:
26
  st.error(f"Kaggle API setup failed: {e}")
@@ -28,7 +28,8 @@ def setup_kaggle_api():
28
 
29
  def setup_drive_service():
30
  try:
31
- credentials_dict = dict(st.secrets["GOOGLE_SERVICE_ACCOUNT"])
 
32
  credentials = Credentials(
33
  token=credentials_dict["access_token"],
34
  refresh_token=credentials_dict["refresh_token"],
@@ -42,14 +43,18 @@ def setup_drive_service():
42
  drive_service = build('drive', 'v3', credentials=credentials)
43
  return drive_service
44
  except KeyError as e:
45
- st.error(f"Missing key in GOOGLE_SERVICE_ACCOUNT: {e}")
 
 
 
46
  st.stop()
47
  except Exception as e:
48
  st.error(f"Google Drive auth failed: {e}")
49
  st.stop()
50
 
51
- def upload_to_drive(drive_service, file_path, title, folder_id="1T6v7Iqc90-NA-F3I-HeHDSvEaIyFibKd"):
52
  try:
 
53
  file_metadata = {'name': title, 'parents': [folder_id]}
54
  media = MediaFileUpload(file_path, resumable=True)
55
  file = drive_service.files().create(
@@ -76,8 +81,9 @@ def delete_from_drive(drive_service, file_id):
76
  except Exception as e:
77
  st.error(f"Failed to delete file {file_id} from Drive: {e}")
78
 
79
- def get_bvh_from_folder(drive_service, folder_id="1T6v7Iqc90-NA-F3I-HeHDSvEaIyFibKd"):
80
  try:
 
81
  query = f"'{folder_id}' in parents and name contains '.bvh'"
82
  response = drive_service.files().list(q=query, fields="files(id, name, mimeType)", pageSize=1).execute()
83
  files = response.get('files', [])
@@ -155,7 +161,7 @@ def process_video(api, drive_service, video_file):
155
  video_file_id, video_shareable_link = upload_to_drive(drive_service, video_path, "input_video.mp4")
156
  st.success(f"Video uploaded to Drive: {video_shareable_link}")
157
 
158
- username = st.secrets['KAGGLE_USERNAME']
159
  notebook_slug = f"{username}/video-to-bvh-converter"
160
 
161
  kernel_exists = check_kernel_exists(api, notebook_slug)
@@ -292,7 +298,7 @@ def main():
292
  status_col1, status_col2 = st.columns(2)
293
  with status_col1:
294
  try:
295
- username = st.secrets['KAGGLE_USERNAME']
296
  notebook_slug = f"{username}/video-to-bvh-converter"
297
  kernel_exists = check_kernel_exists(api, notebook_slug)
298
  if kernel_exists:
 
14
 
15
  def setup_kaggle_api():
16
  try:
17
+ os.environ["KAGGLE_USERNAME"] = os.environ.get("KAGGLE_USERNAME")
18
+ os.environ["KAGGLE_KEY"] = os.environ.get("KAGGLE_KEY")
19
  api = KaggleApi()
20
  api.authenticate()
21
  return api
22
  except KeyError as e:
23
+ st.error(f"Missing Kaggle environment variable: {e}")
24
  st.stop()
25
  except Exception as e:
26
  st.error(f"Kaggle API setup failed: {e}")
 
28
 
29
  def setup_drive_service():
30
  try:
31
+ credentials_json = os.environ.get("GOOGLE_SERVICE_ACCOUNT")
32
+ credentials_dict = json.loads(credentials_json)
33
  credentials = Credentials(
34
  token=credentials_dict["access_token"],
35
  refresh_token=credentials_dict["refresh_token"],
 
43
  drive_service = build('drive', 'v3', credentials=credentials)
44
  return drive_service
45
  except KeyError as e:
46
+ st.error(f"Missing GOOGLE_SERVICE_ACCOUNT environment variable: {e}")
47
+ st.stop()
48
+ except json.JSONDecodeError as e:
49
+ st.error(f"Invalid JSON in GOOGLE_SERVICE_ACCOUNT: {e}")
50
  st.stop()
51
  except Exception as e:
52
  st.error(f"Google Drive auth failed: {e}")
53
  st.stop()
54
 
55
+ def upload_to_drive(drive_service, file_path, title, folder_id=None):
56
  try:
57
+ folder_id = os.environ.get("DRIVE_FOLDER_ID", "1T6v7Iqc90-NA-F3I-HeHDSvEaIyFibKd")
58
  file_metadata = {'name': title, 'parents': [folder_id]}
59
  media = MediaFileUpload(file_path, resumable=True)
60
  file = drive_service.files().create(
 
81
  except Exception as e:
82
  st.error(f"Failed to delete file {file_id} from Drive: {e}")
83
 
84
+ def get_bvh_from_folder(drive_service, folder_id=None):
85
  try:
86
+ folder_id = os.environ.get("DRIVE_FOLDER_ID", "1T6v7Iqc90-NA-F3I-HeHDSvEaIyFibKd")
87
  query = f"'{folder_id}' in parents and name contains '.bvh'"
88
  response = drive_service.files().list(q=query, fields="files(id, name, mimeType)", pageSize=1).execute()
89
  files = response.get('files', [])
 
161
  video_file_id, video_shareable_link = upload_to_drive(drive_service, video_path, "input_video.mp4")
162
  st.success(f"Video uploaded to Drive: {video_shareable_link}")
163
 
164
+ username = os.environ.get("KAGGLE_USERNAME")
165
  notebook_slug = f"{username}/video-to-bvh-converter"
166
 
167
  kernel_exists = check_kernel_exists(api, notebook_slug)
 
298
  status_col1, status_col2 = st.columns(2)
299
  with status_col1:
300
  try:
301
+ username = os.environ.get("KAGGLE_USERNAME")
302
  notebook_slug = f"{username}/video-to-bvh-converter"
303
  kernel_exists = check_kernel_exists(api, notebook_slug)
304
  if kernel_exists: