blob: db71ab4fe17e65a4f4c717ee1b0c46abfe1a611e [file] [edit]
// Copyright 2025 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
package gitiles
import (
"context"
"net/http"
"go.chromium.org/luci/auth/scopes"
"go.chromium.org/luci/common/api/gitiles"
"go.chromium.org/luci/server/auth"
)
// NewAuthClient returns a gitiles client authenticated as the service account
// running the app.
func NewAuthClient(ctx context.Context, host string) (Client, error) {
t, err := auth.GetRPCTransport(ctx, auth.AsSelf, auth.WithScopes(scopes.GerritScopeSet()...))
if err != nil {
return nil, err
}
return gitiles.NewRESTClient(&http.Client{Transport: t}, host, true)
}