[FLOC-3767] Container volume support in API client #2388
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
For benchmarking, we still require the container API. However, the
flocker.apiclient.Client
does not support volumes attached to containers, which is needed for benchmarking.This PR adds support for stateful containers to the API client, both when creating containers, and when receiving information about container configuration and state.
Note the use of PEP 484 type annotations in the docstrings. Currently we have a variety of patterns for non-primitive docstring types (including
|
, top-level type only (dict
), verbose descriptions, and leaving them out completely). Despite there being no implementation support for them in Python 2, the PEP 484 type annotations work particularly well for a function like_parse_volumes
, where they quickly make apparent the transformation taking place.