SSH/SFTP | Dagster Integrations
Back to integrations
Dagster SSH/SFTP library

Dagster SSH/SFTP library

Establish encrypted connections to networked resources.

About this integration

This integration provides a resource for SSH remote execution using Paramiko.

Installation

pip install dagster-ssh

Example

# Read the docs on Resources to learn more: https://docs.dagster.io/deployment/resources
from dagster import asset, with_resources
from dagster_ssh import ssh_resource

@asset(required_resource_keys={'ssh'})
def my_asset(context):
    context.resources.ssh.sftp_get("/path/to/remote.csv", "path/to/local.csv")

assets = with_resources([my_asset], resource_defs={
    'ssh': ssh_resource.configured({
        'remote_host': 'foo.com',
        'key_file': 'path/to/id_rsa',
    })
})

About SSH SFTP

The SSH protocol allows for secure remote login with strong authentication to networked resources. It protects network connections with strong encryption. The Dagster library provides direct SSH and SFTP calls from within the execution of your pipelines.