Spaces:
Running
Running
Upload app.py
Browse files
app.py
CHANGED
@@ -27,6 +27,11 @@ def is_valid_reponame(repo_id: str):
|
|
27 |
def is_valid_path(hf_path: str):
|
28 |
return re.fullmatch(REGEX_HF_PATH, hf_path)
|
29 |
|
|
|
|
|
|
|
|
|
|
|
30 |
def extract_src_reponame(source_repo: str):
|
31 |
try:
|
32 |
if is_valid_reponame(source_repo): target = ""
|
@@ -82,7 +87,7 @@ def duplicate(source_repo, dst_repo, repo_type, private, overwrite, auto_dir, re
|
|
82 |
|
83 |
if overwrite or subfolder:
|
84 |
temp_dir = tempfile.mkdtemp()
|
85 |
-
|
86 |
for path in api.list_repo_files(repo_id=source_repo, repo_type=repo_type, token=hf_token):
|
87 |
if target and target not in path: continue
|
88 |
file = hf_hub_download(repo_id=source_repo, filename=path, repo_type=repo_type, local_dir=temp_dir, token=hf_token)
|
@@ -159,8 +164,7 @@ def duplicate_m2o(source_repos_str, dst_repo, repo_type, private, overwrite, oau
|
|
159 |
subfolder = subfolder_prefix + "/" + source_repo if subfolder_prefix else source_repo
|
160 |
|
161 |
temp_dir = tempfile.mkdtemp()
|
162 |
-
|
163 |
-
else: api.create_repo(repo_id=dst_repo, repo_type=repo_type, private=private, exist_ok=True, token=hf_token)
|
164 |
for path in api.list_repo_files(repo_id=source_repo, repo_type=repo_type, token=hf_token):
|
165 |
if target and target not in path: continue
|
166 |
path_in_repo = f"{subfolder}/{path}" if subfolder else path
|
|
|
27 |
def is_valid_path(hf_path: str):
|
28 |
return re.fullmatch(REGEX_HF_PATH, hf_path)
|
29 |
|
30 |
+
def create_repo(repo_id: str, repo_type: str, private: bool, hf_token: str):
|
31 |
+
api = HfApi(token=hf_token)
|
32 |
+
if repo_type == "space": api.create_repo(repo_id=repo_id, repo_type=repo_type, private=private, exist_ok=True, space_sdk="gradio", token=hf_token)
|
33 |
+
else: api.create_repo(repo_id=repo_id, repo_type=repo_type, private=private, exist_ok=True, token=hf_token)
|
34 |
+
|
35 |
def extract_src_reponame(source_repo: str):
|
36 |
try:
|
37 |
if is_valid_reponame(source_repo): target = ""
|
|
|
87 |
|
88 |
if overwrite or subfolder:
|
89 |
temp_dir = tempfile.mkdtemp()
|
90 |
+
create_repo(dst_repo, repo_type, private, hf_token)
|
91 |
for path in api.list_repo_files(repo_id=source_repo, repo_type=repo_type, token=hf_token):
|
92 |
if target and target not in path: continue
|
93 |
file = hf_hub_download(repo_id=source_repo, filename=path, repo_type=repo_type, local_dir=temp_dir, token=hf_token)
|
|
|
164 |
subfolder = subfolder_prefix + "/" + source_repo if subfolder_prefix else source_repo
|
165 |
|
166 |
temp_dir = tempfile.mkdtemp()
|
167 |
+
create_repo(dst_repo, repo_type, private, hf_token)
|
|
|
168 |
for path in api.list_repo_files(repo_id=source_repo, repo_type=repo_type, token=hf_token):
|
169 |
if target and target not in path: continue
|
170 |
path_in_repo = f"{subfolder}/{path}" if subfolder else path
|