2616c66a49
Fix confusion between IStorageServer and the thing above it
...
IStorageServer is what uses a connection. You need a thing above it to _get_
a connection.
2019-08-03 06:39:31 -04:00
59546944ce
Factor duplicate furl value out and add it where needed
2019-08-03 06:39:31 -04:00
9743a1ab4e
docstring
2019-08-03 06:39:31 -04:00
bee3ee8ff1
docstrings
2019-08-03 06:39:31 -04:00
11418a9f87
Fix test_add_rref users by making them supply coherent values
...
... of the right type
2019-08-03 06:39:31 -04:00
166c5ab53f
there is only a NativeStorageServer
...
though it is used by the client
2019-08-03 06:39:31 -04:00
c752fc76f1
pass the new config to StorageFarmBroker
2019-08-03 06:39:31 -04:00
48b8bd6eb0
pass config down and use it to make the client plugin
2019-08-03 06:39:31 -04:00
3c3ebc368a
note about some logging we should do
2019-08-03 06:39:31 -04:00
2e0e9f0cad
remove duplication of NativeStorageServer instantiation
2019-08-03 06:39:31 -04:00
bbd1c706e4
teach StorageConfigClient to load storage client plugins
2019-08-03 06:39:31 -04:00
b5a2c70a4a
create a StorageClientConfig object
...
Make it easier to pass more storage configuration down into StorageFarmBroker
and beyond
2019-08-03 06:39:31 -04:00
6e3cd2d91c
Reflect announcement changes from ticket:3119
2019-08-03 06:39:31 -04:00
f3218e6f62
basic positive path test
2019-08-03 06:39:31 -04:00
09acde41b9
refactor test_ignored_non_enabled_plugin to support more tests
2019-08-03 06:39:31 -04:00
7e9e380912
adjust to the changed parameter name
2019-08-03 06:39:31 -04:00
6b7e0dd700
add a test for the negative case
2019-08-03 06:39:31 -04:00
e8b38d8cd6
move some testing helpers into the common module
2019-08-03 06:39:27 -04:00
3b6e1e344b
Don't blow up the web status if we get an unrecognized announcement
2019-08-03 06:19:01 -04:00
4133febad6
news fragment
2019-08-03 06:19:01 -04:00
895cf37a84
docstrings
2019-08-03 06:19:01 -04:00
53861e2a0f
Change the shape of the storage announcement(s)
...
Instead of generating a sequence of announcements like:
- anonymous storage server announcement
- plugin 1 storage server announcement
- ...
- plugin N storage server announcement
The client now generates a single announcement like:
- anonymous storage server details
- storage-options
- plugin 1 storage server details
- ...
- plugin N storage server details
2019-08-03 06:19:01 -04:00
07bf8a3b8c
Change this helper to reflect the fact that old announcements are irrelevant
2019-08-03 06:19:01 -04:00
624591e412
Change the tests to match against the announcement we need
2019-08-03 06:19:01 -04:00
016e18ac9c
news fragment
2019-08-03 06:19:01 -04:00
9c240b61ac
Persist the furl ourselves rather than relying on Foolscap
...
Going via our config abstraction here will let us change how config is
persisted more easily, later.
2019-08-03 06:19:01 -04:00
6068b6c1b2
don't reach through the tahoe-lafs config object
2019-08-03 06:19:01 -04:00
d2e16df5cc
link to a ticket about implementing better missing-plugin behavior
2019-08-03 06:19:01 -04:00
251eda0b80
rename introducer_factory parameter to be private
2019-08-03 06:19:01 -04:00
8516459fa3
Python 3 syntax compatibility
2019-08-03 06:19:01 -04:00
58db131787
remove unused imports
2019-08-03 06:19:01 -04:00
e825e63590
This returned to being synchronous
2019-08-03 06:19:01 -04:00
deb3109f43
please report all errors
2019-08-03 06:19:01 -04:00
1c68157c1f
verify behavior if there is a poorly behaved plugin
2019-08-03 06:19:01 -04:00
fd9ae24149
fix indentation
2019-08-03 06:19:01 -04:00
756c21c251
actually provide validating client-config-from-string function
2019-08-03 06:19:01 -04:00
23e1631259
switch from node to client for config loading
...
apparently clients are the things with storage
2019-08-03 06:19:01 -04:00
3719a107be
Stop putting a useless client section in here
...
[client] is not a valid common section so this fails if there's validation
2019-08-03 06:19:01 -04:00
6cf48f7d4f
Separate async initialization from _Client.__init__
2019-08-03 06:19:01 -04:00
3bc21e1b72
Re-synchronize the fake with the real implementation
2019-08-03 06:19:01 -04:00
a6959d111c
Log init_storage and its result (particularly failures)
2019-08-03 06:19:01 -04:00
7919cf205e
Test the actual interface
...
get_storage_server is supposed to return a Deferred
2019-08-03 06:19:01 -04:00
a45e2bebfe
Allow the new plugins item in the [storage] section
2019-08-03 06:19:01 -04:00
f606beb065
Test and support plugins without any configuration
2019-08-03 06:19:01 -04:00
e2982c0129
Support multiple plugins
2019-08-03 06:19:01 -04:00
646cd452b9
Add tests for announcements for plugins
...
And a basic implementation
2019-08-03 06:19:01 -04:00
9608404b6e
Factor plugin helper behavior into its own fixture
2019-08-03 06:19:01 -04:00
25287870ee
Add a tool for matching the node key in the announcement
...
And use it in the recently added test
2019-08-03 06:18:55 -04:00
212f96dfe7
Baseline tests for anonymous storage server announcements
2019-08-03 05:34:21 -04:00
49abfbb62a
storage server plugin configuration
2019-08-03 05:34:21 -04:00