There are many settings that can be set on contexts:
- AGENT_INJECT_TIMEOUT
- AGENT_URL
- DOTFILES_SCRIPT
- DOTFILES_URL
- EXIT_AFTER_TIMEOUT
- GIT_SSH_SIGNATURE_FORWARDING
- GPG_AGENT_FORWARDING
- REGISTRY_CACHE
- SSH_ADD_PRIVATE_KEYS
- SSH_AGENT_FORWARDING
- SSH_CONFIG_INCLUDE_PATH
- SSH_CONFIG_PATH
- SSH_INJECT_DOCKER_CREDENTIALS
- SSH_INJECT_GIT_CREDENTIALS
- SSH_STRICT_HOST_KEY_CHECKING
- TELEMETRY
Unlike all the other injection/forwarding-controlling options, GPG_AGENT_FORWARDING option defaults to false; unless there is a reason not, I suggest that its default be changed to true.
There are four agent options that seem to be common between providers; in my opinion, all of them should be moved from provider to context:
- AGENT_PATH
- INACTIVITY_TIMEOUT
- INJECT_DOCKER_CREDENTIALS
- INJECT_GIT_CREDENTIALS
- If context option
SSH_INJECT_DOCKER_CREDENTIALS did the same as the provider option INJECT_DOCKER_CREDENTIALS (and I don't see it doing anything), it should at a minimum be named the same; but I think it should be removed from the providers altogether, and managed on the context level.
- If context option
SSH_INJECT_GIT_CREDENTIALS did the same as the provider option INJECT_GIT_CREDENTIALS (and I don't see it doing anything), it should at a minimum be named the same; but I think it should be removed from the providers altogether, and managed on the context level.
AGENT_PATH should be moved from providers to context.
INACTIVITY_TIMEOUT should be moved from providers to context.
There are many settings that can be set on contexts:
Unlike all the other injection/forwarding-controlling options,
GPG_AGENT_FORWARDINGoption defaults tofalse; unless there is a reason not, I suggest that its default be changed totrue.There are four agent options that seem to be common between providers; in my opinion, all of them should be moved from
providertocontext:SSH_INJECT_DOCKER_CREDENTIALSdid the same as the provider optionINJECT_DOCKER_CREDENTIALS(and I don't see it doing anything), it should at a minimum be named the same; but I think it should be removed from the providers altogether, and managed on the context level.SSH_INJECT_GIT_CREDENTIALSdid the same as the provider optionINJECT_GIT_CREDENTIALS(and I don't see it doing anything), it should at a minimum be named the same; but I think it should be removed from the providers altogether, and managed on the context level.AGENT_PATHshould be moved from providers to context.INACTIVITY_TIMEOUTshould be moved from providers to context.