Closed benjyw closed 6 days ago
To clarify, I think using the wrong type is a potential sign of larger error, and we shouldn't be attempting to coerce input types. We can validate them, perhaps, but that is a separate thing, and a pretty arbitrary one.
We document a schema for the registries dict, including specifying that certain fields should be bool-valued.
I see no need to coerce those values into bools if they were actually strings, especially since we don't document that we do that (AFAICT).
We should require users to adhere to the published schema. If this "breaks" users, well, they were accidentally relying on unadvertised leniency, and the fix is extremely easy.
Note that this coercion was very ad hoc. We don't apply it uniformly across all fields in the docker registry config, and we certainly don't do this in other dict-valued options across the repo.
This gets rid of a spurious dependency of the Docker backend on internal code of the legacy options parser.