[CD] Initialize gitauth in autoroll-config-converter

Change-Id: Ie14326846d6fcc4bebad8fe697010efaa139f19e
Reviewed-on: https://skia-review.googlesource.com/c/buildbot/+/602396
Reviewed-by: Ravi Mistry <rmistry@google.com>
Commit-Queue: Eric Boren <borenet@google.com>
diff --git a/autoroll/go/autoroll-config-converter/BUILD.bazel b/autoroll/go/autoroll-config-converter/BUILD.bazel
index 15991a1..2dfe3a6 100644
--- a/autoroll/go/autoroll-config-converter/BUILD.bazel
+++ b/autoroll/go/autoroll-config-converter/BUILD.bazel
@@ -13,13 +13,17 @@
         "//autoroll/go/config",
         "//autoroll/go/config_vars",
         "//cd/go/cd",
+        "//go/auth",
         "//go/chrome_branch",
         "//go/gerrit",
+        "//go/gitauth",
         "//go/gitiles",
         "//go/httputils",
         "//go/skerr",
         "//go/sklog",
         "//kube/go/kube_conf_gen_lib",
+        "@org_golang_google_api//oauth2/v2:oauth2",
+        "@org_golang_google_api//option",
         "@org_golang_google_protobuf//encoding/protojson",
         "@org_golang_google_protobuf//encoding/prototext",
         "@org_golang_x_oauth2//google",
diff --git a/autoroll/go/autoroll-config-converter/main.go b/autoroll/go/autoroll-config-converter/main.go
index 76d2463..9ff2cfd 100644
--- a/autoroll/go/autoroll-config-converter/main.go
+++ b/autoroll/go/autoroll-config-converter/main.go
@@ -19,8 +19,10 @@
 	"go.skia.org/infra/autoroll/go/config"
 	"go.skia.org/infra/autoroll/go/config_vars"
 	"go.skia.org/infra/cd/go/cd"
+	"go.skia.org/infra/go/auth"
 	"go.skia.org/infra/go/chrome_branch"
 	"go.skia.org/infra/go/gerrit"
+	"go.skia.org/infra/go/gitauth"
 	"go.skia.org/infra/go/gitiles"
 	"go.skia.org/infra/go/httputils"
 	"go.skia.org/infra/go/skerr"
@@ -28,6 +30,8 @@
 	"go.skia.org/infra/kube/go/kube_conf_gen_lib"
 	"golang.org/x/oauth2/google"
 	"golang.org/x/sync/errgroup"
+	"google.golang.org/api/oauth2/v2"
+	"google.golang.org/api/option"
 	"google.golang.org/protobuf/encoding/protojson"
 	"google.golang.org/protobuf/encoding/prototext"
 )
@@ -69,6 +73,7 @@
 	srcCommit := flag.String("source-commit", "", "Commit hash which triggered this run.")
 	louhiExecutionID := flag.String("louhi-execution-id", "", "Execution ID of the Louhi flow.")
 	louhiPubsubProject := flag.String("louhi-pubsub-project", "", "GCP project used for sending Louhi pub/sub notifications.")
+	local := flag.Bool("local", false, "True if running locally.")
 
 	flag.Parse()
 
@@ -84,10 +89,24 @@
 
 	// Set up auth, load config variables.
 	ctx := context.Background()
-	ts, err := google.DefaultTokenSource(ctx, gerrit.AuthScope)
+	ts, err := google.DefaultTokenSource(ctx, gerrit.AuthScope, auth.ScopeUserinfoEmail)
 	if err != nil {
 		sklog.Fatal(err)
 	}
+	if !*local {
+		srv, err := oauth2.NewService(ctx, option.WithTokenSource(ts))
+		if err != nil {
+			sklog.Fatal(err)
+		}
+		info, err := srv.Userinfo.V2.Me.Get().Do()
+		if err != nil {
+			sklog.Fatal(err)
+		}
+		sklog.Infof("Authenticated as %s", info.Email)
+		if _, err := gitauth.New(ts, "/tmp/.gitcookies", true, info.Email); err != nil {
+			sklog.Fatal(err)
+		}
+	}
 	client := httputils.DefaultClientConfig().WithTokenSource(ts).With2xxOnly().Client()
 	reg, err := config_vars.NewRegistry(ctx, chrome_branch.NewClient(client))
 	if err != nil {