Spaces:
Sleeping
Sleeping
import logging | |
from huggingface_hub import HfApi, SpaceCard | |
def create_space_with_content( | |
api: HfApi, | |
repo_id: str, | |
dataset_id: str, | |
html_file_path: str, | |
plot_file_path: str, | |
space_card: str, | |
token: str, | |
): | |
logging.info(f"Creating space with content: {repo_id} on file {html_file_path}") | |
api.create_repo( | |
repo_id=repo_id, | |
repo_type="space", | |
private=False, | |
exist_ok=True, | |
token=token, | |
space_sdk="static", | |
) | |
SpaceCard(content=space_card.format(dataset_id=dataset_id)).push_to_hub( | |
repo_id=repo_id, repo_type="space", token=token | |
) | |
api.upload_file( | |
path_or_fileobj=html_file_path, | |
path_in_repo="index.html", | |
repo_type="space", | |
repo_id=repo_id, | |
token=token, | |
) | |
logging.info(f"Pushing file to hub: {dataset_id} on file {plot_file_path}") | |
try: | |
logging.info(f"About to push {plot_file_path} - {dataset_id}") | |
api.upload_file( | |
path_or_fileobj=plot_file_path, | |
path_in_repo="static_plot.png", | |
repo_id=repo_id, | |
repo_type="space", | |
) | |
except Exception as e: | |
logging.info("Failed to push file", e) | |
raise | |
logging.info(f"Space creation done") | |
return repo_id | |