emop.lib.transfer package¶
Submodules¶
emop.lib.transfer.globus module¶
- class emop.lib.transfer.globus.GlobusAPIClient(settings)[source]¶
Bases: object
- autoactivate(endpoint)[source]¶
Globus API - autoactivate
- Args:
- endpoint (str): Globus Endpoint
- Returns:
- dict: Globus autoactivate data
- check_activated(endpoint)[source]¶
Globus API - check activation and autoactivate
- Args:
- endpoint (str): Globus Endpoint
- Returns:
- int: Seconds left in endpoint activation
- create_transfer(src, dest, **kw)[source]¶
Globus API - create transfer
The Globus submission ID is retrieved and a Transfer object created
- Args:
- src (str): Globus source transfer endpoint dest (str): Globus destination transfer endpoint
- Returns:
- Transfer: Globus Transfer object
- endpoint_ls(endpoint, path)[source]¶
Globus API - endpoint_ls
- Args:
- endpoint (str): Globus Endpoint path (str): Path to ls
- Returns:
- dict: Globus endpoint_ls data
- get_activate_url(endpoint)[source]¶
Globus API - endpoint acivation URL
- Args:
- endpoint (str): Globus Endpoint
- Returns:
- str: Globus endpoint activation URL
- get_endpoint_data(endpoint, **kwargs)[source]¶
Globus API - endpoint
- Args:
- endpoint (str): Globus Endpoint
- Returns:
- dict: Globus endpoint data
- get_goauth_data()[source]¶
Get GOAuth data
The file at $EMOP_HOME/.globus-auth (settings.globus_auth_file) is read, if it exists. If the .globus-auth file does not exist, the data is pulled from Globus Online by prompting user for username (if not provided in config.ini) and password. This function will save the goauth token to .globus-auth if it did not already exist.
Args:
- Returns:
- tuple: username and goauth token
- get_successful_task(task_id, **kwargs)[source]¶
Globus API - task_successful_transfers
- Args:
- task_id (str): Globus task ID
- Returns:
- dict: Globus task successful transfer data
- get_task(task_id, **kwargs)[source]¶
Globus API - task
- Args:
- task_id (str): Globus Task ID
- Returns:
- dict: Globus Task data
- send_transfer(transfer)[source]¶
Globus API - transfer
- Args:
- transfer (Transfer): Globus Transfer object
- Returns:
- str: Globus transfer Task ID
- wait_for_task(task_id, timeout=120, poll_interval=10)[source]¶
Globus API - wait for task
A task status is queried and this function will wait for the status to be SUCCEEDED or FAILED up to timeout value.
- Args:
- task_id (str): Globus task ID to wait for timeout (int): How long to wait for the task before timing out poll_interval (int): How often to query the task status
- Returns:
- str: Globus task status - None is returned if wait times out