diff --git a/bake/bake.go b/bake/bake.go index d98cd7be1fbc..35a217afed40 100644 --- a/bake/bake.go +++ b/bake/bake.go @@ -1338,7 +1338,23 @@ func toBuildOpt(t *Target, inp *Input) (*build.Options, error) { } bo.Platforms = platforms - bo.SecretSpecs = t.Secrets.ToPB() + secrets := t.Secrets + if build.IsRemoteURL(bi.ContextPath) { + if _, ok := os.LookupEnv("BUILDX_BAKE_GIT_AUTH_TOKEN"); ok { + secrets = append(secrets, &buildflags.Secret{ + ID: llb.GitAuthTokenKey, + Env: "BUILDX_BAKE_GIT_AUTH_TOKEN", + }) + } + if _, ok := os.LookupEnv("BUILDX_BAKE_GIT_AUTH_HEADER"); ok { + secrets = append(secrets, &buildflags.Secret{ + ID: llb.GitAuthHeaderKey, + Env: "BUILDX_BAKE_GIT_AUTH_HEADER", + }) + } + } + secrets = secrets.Normalize() + bo.SecretSpecs = secrets.ToPB() secretAttachment, err := controllerapi.CreateSecrets(bo.SecretSpecs) if err != nil { return nil, err