sbrow/flysystem-ssh-shell
Composer 安装命令:
composer require sbrow/flysystem-ssh-shell
包简介
SSH/Shell adapter for league/flysystem
README 文档
README
Flysystem adapter for SSH shell.
Installation
composer require phuxtil/flysystem-ssh-shell
Requirements
The following programs installed and configured on local host:
- ssh
- scp
The following programs installed on the remote host:
- find
- cat
- stat
- rmdir
- mkdir
- chmod
- mv
- rm
- sh compatible shell
Configuration
Use League\Flysystem\SshShell\SshShellConfigurator to pass options to adapter.
$configurator = (new SshShellConfigurator()) ->setRoot('/remote_server/path') ->setUser('remote_user') ->setHost('remote-ssh-host') ->setPrivateKey('path/to/id_rsa.private_key') ->setPort(22);
Authentication
Two authentication methods are supported:
via ssh config
The value of user@host is configured in ssh config file.
$configurator = (new SshShellConfigurator()) ->setUser('user') ->setHost('host');
Note: This is the default setting.
via ssh private key
$configurator = (new SshShellConfigurator()) ->setUser('user') ->setHost('host') ->setPrivateKey('path/to/id_rsa.private_key');
Passed as -i option to ssh/scp.
Note: To revert to default setting, unset private key value.
Bootstrap
<?php use League\Flysystem\Filesystem; use Phuxtil\Flysystem\SshShell\SshShellConfigurator; use Phuxtil\Flysystem\SshShell\SshShellFactory; \error_reporting(\E_ALL); include __DIR__ . '/vendor/autoload.php'; $configurator = (new SshShellConfigurator()) ->setRoot('/tmp/remote_fs') ->setUser('user') ->setHost('host'); $adapter = (new SshShellFactory())->createAdapter($configurator); $filesystem = new Filesystem($adapter);
TDD
Default root directory on remote host is /tmp/remote_fs.
Set values of env variables for TESTS_SSH_USER and TESTS_SSH_HOST, or run tests with:
TESTS_SSH_USER=... TESTS_SSH_HOST=... vendor/bin/phpunit
Note: Default value for TESTS_SSH_PORT is 22.
统计信息
- 总下载量: 2
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2020-01-24