GcpCompute.TokenProvider backed by Goth.
The arg is the name a Goth server was started under:
children = [
{Goth, name: MyApp.Goth},
# ...
]
{:ok, config} =
GcpCompute.Config.new(
project: "my-project",
token_provider: {GcpCompute.TokenProvider.Goth, MyApp.Goth}
)Goth is an optional dependency. If it isn't loaded, fetch_token/1 returns
{:error, %GcpCompute.Error{reason: :goth_not_available}} instead of raising
at compile time.