Source code for gigl.src.common.constants.local_fs
import importlib.resources as pkg_resources
import os
from pathlib import Path
from gigl.common import LocalUri
from gigl.src.common.types import AppliedTaskIdentifier
[docs]
def get_gigl_root_directory() -> LocalUri:
    """Returns gigl source root folder."""
    with pkg_resources.path("gigl", "__init__.py") as path:
        root_directory = path.parent
    return LocalUri(root_directory) 
[docs]
def get_python_project_root_path() -> LocalUri:
    """Returns project root folder."""
    file_path = Path(__file__)
    path = LocalUri(file_path.parents[4])
    return path 
[docs]
def get_project_root_directory() -> LocalUri:
    """Returns the parent directory of GiGL"""
    file_path = Path(__file__)
    path = LocalUri(file_path.parents[5])
    return path 
[docs]
def get_gbml_assets_tmp_path() -> LocalUri:
    """Returns the local path for the GBML assets."""
    return LocalUri.join(os.sep, "tmp", "gbml_assets") 
[docs]
def get_gbml_task_local_tmp_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local tmp path for the specified job name"""
    data_local_path = LocalUri.join(get_gbml_assets_tmp_path(), applied_task_identifier)
    Path(data_local_path.uri).mkdir(parents=True, exist_ok=True)
    return data_local_path 
[docs]
def get_gbml_logs_folder_local_tmp_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local logs/ folder for the specified job name"""
    logs_local_path = LocalUri.join(
        get_gbml_task_local_tmp_path(applied_task_identifier=applied_task_identifier),
        "logs",
    )
    Path(logs_local_path.uri).mkdir(parents=True, exist_ok=True)
    return logs_local_path 
[docs]
def get_gbml_log_file_prefix_tmp_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local log file prefix for the specified job name"""
    log_file_local_path = LocalUri.join(
        get_gbml_logs_folder_local_tmp_path(applied_task_identifier), "logfile"
    )
    return log_file_local_path 
[docs]
def get_inference_embeddings_local_tmp_dir_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local directory used by the Inferencer to store embeddings."""
    inference_embeddings_local_tmp_dir = LocalUri.join(
        get_gbml_task_local_tmp_path(applied_task_identifier=applied_task_identifier),
        "inference",
    )
    Path(inference_embeddings_local_tmp_dir.uri).mkdir(parents=True, exist_ok=True)
    return inference_embeddings_local_tmp_dir 
[docs]
def get_preprocess_local_staging_dir_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    preprocess_local_staging_path_dir = LocalUri.join(
        get_gbml_task_local_tmp_path(applied_task_identifier=applied_task_identifier),
        "staging",
    )
    Path(preprocess_local_staging_path_dir.uri).mkdir(parents=True, exist_ok=True)
    return preprocess_local_staging_path_dir 
[docs]
def get_inference_embeddings_local_tmp_file_prefix(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local file prefix for the output embeddings of the specified job name."""
    return LocalUri.join(
        get_inference_embeddings_local_tmp_dir_path(applied_task_identifier), "emb"
    ) 
[docs]
def get_inference_predictions_local_tmp_file_prefix(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local file prefix for the output predictions of the specified job name."""
    return LocalUri.join(
        get_inference_embeddings_local_tmp_dir_path(applied_task_identifier), "pred"
    ) 
[docs]
def get_train_val_info_local_tmp_file_path(
    applied_task_identifier: AppliedTaskIdentifier,
) -> LocalUri:
    """Returns the local file path for the train_val_nodes_info.csv of the specified job name."""
    return LocalUri.join(
        get_inference_embeddings_local_tmp_dir_path(applied_task_identifier),
        "train_val_nodes_info.csv",
    ) 
[docs]
def get_path_to_manifest_file() -> LocalUri:
    """Returns the local path to the MANIFEST.in file."""
    return LocalUri.join(get_gigl_root_directory(), "python", "MANIFEST.in")