Skip to content

Commit f68baf6

Browse files
meranotetgalopin
authored andcommitted
Add missing permission options for sftp adapter (thephpleague#19)
* Add missing permission options for sftp adapter * Add directoryPerm to sftp document * Remove note in sftp adapter definition builder * fix allow type to match its name * add all available options
1 parent 3c54279 commit f68baf6

4 files changed

Lines changed: 21 additions & 0 deletions

File tree

docs/3-interacting-with-ftp-and-sftp-servers.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,9 @@ flysystem:
5656
private_key: 'path/to/or/contents/of/privatekey'
5757
root: '/path/to/root'
5858
timeout: 10
59+
directoryPerm: 0744
60+
permPublic: 0700
61+
permPrivate: 0744
5962
```
6063
6164
## Next

src/Adapter/Builder/SftpAdapterDefinitionBuilder.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,15 @@ protected function configureOptions(OptionsResolver $resolver)
5656

5757
$resolver->setDefault('timeout', 90);
5858
$resolver->setAllowedTypes('timeout', 'scalar');
59+
60+
$resolver->setDefault('directoryPerm', 0744);
61+
$resolver->setAllowedTypes('directoryPerm', 'scalar');
62+
63+
$resolver->setDefault('permPrivate', 0700);
64+
$resolver->setAllowedTypes('permPrivate', 'scalar');
65+
66+
$resolver->setDefault('permPublic', 0744);
67+
$resolver->setAllowedTypes('permPublic', 'scalar');
5968
}
6069

6170
protected function configureDefinition(Definition $definition, array $options)

tests/Adapter/Builder/SftpAdapterDefinitionBuilderTest.php

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,13 +59,19 @@ public function testOptionsBehavior()
5959
'root' => '/path/to/root',
6060
'private_key' => '/path/to/or/contents/of/privatekey',
6161
'timeout' => 30,
62+
'directoryPerm' => 0755,
63+
'permPrivate' => 0700,
64+
'permPublic' => 0744,
6265
]);
6366

6467
$expected = [
6568
'port' => 22,
6669
'root' => '/path/to/root',
6770
'private_key' => '/path/to/or/contents/of/privatekey',
6871
'timeout' => 30,
72+
'directoryPerm' => 0755,
73+
'permPrivate' => 0700,
74+
'permPublic' => 0744,
6975
'host' => 'ftp.example.com',
7076
'username' => 'username',
7177
'password' => 'password',

tests/Kernel/config/flysystem.yaml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,9 @@ flysystem:
9191
private_key: 'path/to/or/contents/of/privatekey'
9292
root: '/path/to/root'
9393
timeout: 10
94+
directoryPerm: 0755
95+
permPrivate: 0700
96+
permPublic: 0744
9497

9598
fs_webdav:
9699
adapter: 'webdav'

0 commit comments

Comments
 (0)