broadfield-dev commited on
Commit
46001b0
·
verified ·
1 Parent(s): 18d0b22

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +46 -28
app.py CHANGED
@@ -47,13 +47,18 @@ def create_hf_space():
47
  space_name = generate_space_name()
48
  full_repo_id = f"Space-Share/{space_name}"
49
 
50
- create_repo(
51
- repo_id=space_name,
52
- repo_type="space",
53
- space_sdk=space_type,
54
- token=HF_TOKEN,
55
- private=False
56
- )
 
 
 
 
 
57
 
58
  # Handle multi-file uploads
59
  for filename, content in files.items():
@@ -65,13 +70,18 @@ def create_hf_space():
65
  f.write(content)
66
 
67
  # Upload to the new Space
68
- upload_file(
69
- path_or_fileobj=f"temp_{filename}",
70
- path_in_repo=filename,
71
- repo_id=full_repo_id,
72
- repo_type="space",
73
- token=HF_TOKEN
74
- )
 
 
 
 
 
75
  os.remove(f"temp_{filename}")
76
 
77
  # Add requirements.txt if not provided (basic defaults)
@@ -84,13 +94,17 @@ def create_hf_space():
84
  }.get(space_type, "")
85
  with open("temp_requirements.txt", "w") as f:
86
  f.write(default_requirements)
87
- upload_file(
88
- path_or_fileobj="temp_requirements.txt",
89
- path_in_repo="requirements.txt",
90
- repo_id=full_repo_id,
91
- repo_type="space",
92
- token=HF_TOKEN
93
- )
 
 
 
 
94
  os.remove("temp_requirements.txt")
95
 
96
  # Special handling for Docker Spaces
@@ -105,13 +119,17 @@ CMD ["python", "app.py"]
105
  """
106
  with open("temp_Dockerfile", "w") as f:
107
  f.write(default_dockerfile)
108
- upload_file(
109
- path_or_fileobj="temp_Dockerfile",
110
- path_in_repo="Dockerfile",
111
- repo_id=full_repo_id,
112
- repo_type="space",
113
- token=HF_TOKEN
114
- )
 
 
 
 
115
  os.remove("temp_Dockerfile")
116
 
117
  space_url = f"https://huggingface.co/spaces/Space-Share/{space_name}"
 
47
  space_name = generate_space_name()
48
  full_repo_id = f"Space-Share/{space_name}"
49
 
50
+ try:
51
+ # Attempt to create the repository
52
+ repo_info = create_repo(
53
+ repo_id=space_name,
54
+ repo_type="space",
55
+ space_sdk=space_type,
56
+ token=HF_TOKEN,
57
+ private=False,
58
+ exist_ok=True # Allow creation even if the repo might exist (rare case)
59
+ )
60
+ except Exception as e:
61
+ return jsonify({"error": f"Failed to create repository: {str(e)}"}), 500
62
 
63
  # Handle multi-file uploads
64
  for filename, content in files.items():
 
70
  f.write(content)
71
 
72
  # Upload to the new Space
73
+ try:
74
+ upload_file(
75
+ path_or_fileobj=f"temp_{filename}",
76
+ path_in_repo=filename,
77
+ repo_id=full_repo_id,
78
+ repo_type="space",
79
+ token=HF_TOKEN
80
+ )
81
+ except Exception as e:
82
+ os.remove(f"temp_{filename}")
83
+ return jsonify({"error": f"Failed to upload file {filename}: {str(e)}"}), 500
84
+
85
  os.remove(f"temp_{filename}")
86
 
87
  # Add requirements.txt if not provided (basic defaults)
 
94
  }.get(space_type, "")
95
  with open("temp_requirements.txt", "w") as f:
96
  f.write(default_requirements)
97
+ try:
98
+ upload_file(
99
+ path_or_fileobj="temp_requirements.txt",
100
+ path_in_repo="requirements.txt",
101
+ repo_id=full_repo_id,
102
+ repo_type="space",
103
+ token=HF_TOKEN
104
+ )
105
+ except Exception as e:
106
+ os.remove("temp_requirements.txt")
107
+ return jsonify({"error": f"Failed to upload requirements.txt: {str(e)}"}), 500
108
  os.remove("temp_requirements.txt")
109
 
110
  # Special handling for Docker Spaces
 
119
  """
120
  with open("temp_Dockerfile", "w") as f:
121
  f.write(default_dockerfile)
122
+ try:
123
+ upload_file(
124
+ path_or_fileobj="temp_Dockerfile",
125
+ path_in_repo="Dockerfile",
126
+ repo_id=full_repo_id,
127
+ repo_type="space",
128
+ token=HF_TOKEN
129
+ )
130
+ except Exception as e:
131
+ os.remove("temp_Dockerfile")
132
+ return jsonify({"error": f"Failed to upload Dockerfile: {str(e)}"}), 500
133
  os.remove("temp_Dockerfile")
134
 
135
  space_url = f"https://huggingface.co/spaces/Space-Share/{space_name}"