improve docs around ssh key management for ascp plugin

This commit is contained in:
Danielle Callan
2025-11-25 10:11:55 -05:00
committed by Nate Coraor
parent eff1103c4c
commit 14dd8fb129
3 changed files with 11 additions and 5 deletions
@@ -101,7 +101,7 @@
# port: 33001
# rate_limit: "500m"
# disable_encryption: false # Enable encryption for security
# ssh_key: |
# ssh_key_content: |
# -----BEGIN RSA PRIVATE KEY-----
# <REPLACE WITH YOUR ACTUAL SSH PRIVATE KEY CONTENT>
# -----END RSA PRIVATE KEY-----
+9 -3
View File
@@ -83,18 +83,24 @@ class AscpFilesSource(FsspecFilesSource[AscpFilesSourceTemplateConfiguration, As
"""Galaxy file source plugin for Aspera ascp transfers.
This plugin provides high-speed file downloads using the Aspera ascp protocol.
It requires the ascp binary to be installed and accessible, along with appropriate
SSH credentials configured.
It requires the ascp binary to be installed and accessible, along with SSH
private key content embedded in the configuration.
Features:
- Download-only functionality (no upload or browsing in base implementation)
- Configurable transfer rate limiting
- Optional encryption disabling for maximum speed
- Support for both ascp:// and fasp:// URL schemes
- Automatic retry with exponential backoff for transient failures
- Resume support for interrupted transfers
Configuration:
- ssh_key_content: Required field containing the SSH private key as a string
- The key content is automatically written to a temporary file during transfers
- Temporary key files are securely cleaned up after each transfer
The plugin is designed to be extensible for future enhancements such as:
- Subclassing for ENA-specific handling
- Retry logic with exponential backoff
- Fallback mechanisms to alternative protocols
- Upload and browsing capabilities
"""
+1 -1
View File
@@ -39,7 +39,7 @@ class AscpFileSystem(AbstractFileSystem):
Args:
ascp_path: Path to the ascp binary (default: "ascp")
ssh_key: SSH private key as string content OR path to key file
ssh_key: SSH private key content as a string (required)
user: Username for ascp connection (e.g., "era-fasp")
host: Hostname (e.g., "fasp.sra.ebi.ac.uk")
rate_limit: Transfer rate limit (default: "300m")