// NewClusterAdminClient creates a new ClusterAdminClient for a given project. func NewClusterAdminClient(ctx context.Context, project string, opts ...cloud.ClientOption) (*ClusterAdminClient, error) { o := []cloud.ClientOption{ cloud.WithEndpoint(clusterAdminAddr), cloud.WithScopes(ClusterAdminScope), } o = append(o, opts...) conn, err := cloud.DialGRPC(ctx, o...) if err != nil { return nil, fmt.Errorf("dialing: %v", err) } return &ClusterAdminClient{ conn: conn, cClient: btcspb.NewBigtableClusterServiceClient(conn), project: project, }, nil }
// NewAdminClient creates a new AdminClient for a given project, zone and cluster. func NewAdminClient(ctx context.Context, project, zone, cluster string, opts ...cloud.ClientOption) (*AdminClient, error) { o := []cloud.ClientOption{ cloud.WithEndpoint(adminAddr), cloud.WithScopes(AdminScope), } o = append(o, opts...) conn, err := cloud.DialGRPC(ctx, o...) if err != nil { return nil, fmt.Errorf("dialing: %v", err) } return &AdminClient{ conn: conn, tClient: bttspb.NewBigtableTableServiceClient(conn), project: project, zone: zone, cluster: cluster, }, nil }