示例#1
0
文件: test_ssh.py 项目: pmrowla/dvc
def _ssh_factory(cloud):
    yield SSHFileSystem(
        host=cloud.host,
        port=cloud.port,
        user=TEST_SSH_USER,
        keyfile=TEST_SSH_KEY_PATH,
    )
示例#2
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_init():
    fs = SSHFileSystem(user="******",
                       host="12.34.56.78",
                       port="1234",
                       password="******")
    assert fs.fs_args["username"] == "test"
    assert fs.fs_args["host"] == "12.34.56.78"
    assert fs.fs_args["port"] == "1234"
    assert fs.fs_args["password"] == fs.fs_args["passphrase"] == "xxx"
示例#3
0
def _sshfs(resource: dict):
    from tpi import TerraformProviderIterative

    with TerraformProviderIterative.pemfile(resource) as pem:
        fs = SSHFileSystem(
            host=resource["instance_ip"],
            user="******",
            keyfile=pem,
        )
        yield fs
示例#4
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_get_kwargs_from_urls():
    user = "******"
    host = "123.45.67.89"
    port = 1234
    path = "/path/to/dir"

    # URL ssh://[user@]host.xz[:port]/path
    url = f"ssh://{user}@{host}:{port}{path}"

    assert SSHFileSystem._get_kwargs_from_urls(url) == {
        "username": user,
        "host": host,
        "port": port,
    }

    # SCP-like URL ssh://[user@]host.xz:/absolute/path
    url = f"ssh://{user}@{host}:{path}"

    assert SSHFileSystem._get_kwargs_from_urls(url) == {
        "username": user,
        "host": host,
    }
示例#5
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_host_override_from_config(mock_file, config, expected_host):
    fs = SSHFileSystem(**config)
    assert fs.fs_args["host"] == expected_host
示例#6
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_ask_password(mocker):
    mocker.patch("dvc_objects.fs.implementations.ssh.ask_password",
                 return_value="fish")
    fs = SSHFileSystem(user="******", host="2.2.2.2", ask_password=True)
    assert fs.fs_args["password"] == fs.fs_args["passphrase"] == "fish"
示例#7
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_gss_auth(mock_file, config, expected_gss_auth):
    fs = SSHFileSystem(**config)
    assert fs.fs_args["gss_auth"] == expected_gss_auth
示例#8
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_multi_identity_files(mock_file):
    fs = SSHFileSystem(host="example.com")
    assert fs.fs_args.get("client_keys") == ["file_1", "file_2"]
示例#9
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_keyfile(mock_file, config, expected_keyfile):
    fs = SSHFileSystem(**config)
    expected_keyfiles = ([
        os.path.expanduser(path) for path in expected_keyfile
    ] if expected_keyfile else expected_keyfile)
    assert fs.fs_args.get("client_keys") == expected_keyfiles
示例#10
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_port(mock_file, config, expected_port):
    fs = SSHFileSystem(**config)
    assert fs.fs_args["port"] == expected_port
示例#11
0
文件: test_ssh.py 项目: pmrowla/dvc
def test_ssh_user(mock_file, config, expected_user):
    fs = SSHFileSystem(**config)
    assert fs.fs_args["username"] == expected_user