Remove direct use of DefaultTransport #1221
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.
Description
Using
DefaultTransport
and manipulating its TLS configuration may lead to unexpected behaviour. For example, lets say at one moment, for a given registry that was asked to disable TLS validation we use default transport, then after that call every TLS uses of default transport will be disabled.The only remaining use is in
Warm
method (filewarm.go
) but I think this use is only used inwarmer
image.In this change I centralized the previous work done to clone
DefaultTransport
object on every needs and only after apply configuration to it.To go deeper I think it might be interesting to provide in this new module a function allowing to configure once and for all the transport creation at the beginning of the program (right after the parameter reading) and remove every references to kaniko options when they are only needed to get transport configuration. I did not do this in this change as I think it should be discussed.
Submitter Checklist
These are the criteria that every PR should meet, please check them off as you
review them:
See the contribution guide for more details.
Reviewer Notes