authprovider: support registrytoken field in docker auth config
authprovider: support registrytoken field in docker auth config

The Docker CLI supports a field called "registrytoken" within the auth
config that may contain a previously resolved bearer token. If a
value is present, it is used verbatim and OAuth token retrieval using
username/password or identity token is skipped.

Support this same functionality in the buildkit client by checking for
this field's value prior to credential based auth in `FetchToken`. If a
value is set for `AuthConfig.RegistryToken`, short circuit and return
the token value as is.

This feature helps to support registry setups that integrate with third
party auth systems such as GitLab's JWT OmniAuth provider.

Signed-off-by: Dan Duvall <62bfcc8ab09827c62bdb28e5d79684ab75444b12@wikimedia.org>

tonistiigi/buildkit_poc,tonistiigi/buildkit_poc