-
Notifications
You must be signed in to change notification settings - Fork 612
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
engine: Use known versions for logging drivers
The ECS agent's capability system is used for conditionally-enabling features based on whether the underlying Docker daemon and the ECS agent support those features. This is a reasonable approach for many of the features that Docker supports, especially those that involve structural elements in the Config and HostConfig objects of the Docker API. It's particularly important that the agent reports only the versions that have full structural compatibility as "supported" to the ECS backend, as some parts of the Config and HostConfig are sent from the backend as serialized JSON and then are deserialized in the agent into defined structs. (If we were to deserialize JSON that contained unknown fields, we'd lose the data in those unknown fields.) However, there are a few unstructured elements that the Docker daemon uses, especially for driver selection and driver options. We know that the agent can deserialize those fields, so there's no risk of losing data. We've also found that it can be time-consuming to validate that we have complete structural API representation for new versions, which complicates the process for adding support for new drivers. This commit changes the logic to separate "known" API versions from "supported" API versions. A "known" version can be used to gate non-structural API changes (things like logging driver availability) from API changes that do require structural compatibility. "known" API versions are not reported in the capability map, but can be used as feature gates for logging drivers.
- Loading branch information
1 parent
91997f3
commit baf952b
Showing
10 changed files
with
130 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters