in gke-deploy/services/clients.go [57:97]
func NewClients(ctx context.Context, useGsutil, useGcloud, printCommands bool, serverDryRun bool) (*Clients, error) {
oss, err := NewOS(ctx)
if err != nil {
return nil, err
}
var gs GcloudService
if useGcloud {
svc, err := NewGcloud(ctx, printCommands)
if err != nil {
return nil, err
}
gs = svc
} else {
gs = NewGcloudGoClient(ctx, false)
}
ks, err := NewKubectl(ctx, printCommands, serverDryRun)
if err != nil {
return nil, err
}
rs, err := NewRemote(ctx)
if err != nil {
return nil, err
}
var ss GcsService
if useGsutil {
gcs, err := NewGsutil(ctx, printCommands)
if err != nil {
return nil, err
}
ss = gcs
}
return &Clients{
OS: oss,
Gcloud: gs,
Kubectl: ks,
Remote: rs,
GCS: ss,
}, nil
}