Skip to content

Commit e702e85

Browse files
committed
remove client wrapper
1 parent af3d3c5 commit e702e85

18 files changed

Lines changed: 444 additions & 1061 deletions

pkg/brevdaemon/agent/agent.go

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import (
55
"sync"
66
"time"
77

8+
brevapiv2 "buf.build/gen/go/brevdev/devplane/protocolbuffers/go/brevapi/v2"
89
"github.com/brevdev/brev-cli/pkg/brevdaemon/agent/client"
910
agentconfig "github.com/brevdev/brev-cli/pkg/brevdaemon/agent/config"
1011
"github.com/brevdev/brev-cli/pkg/brevdaemon/agent/health"
@@ -15,6 +16,7 @@ import (
1516
"github.com/brevdev/brev-cli/pkg/errors"
1617
"go.uber.org/zap"
1718
"golang.org/x/sync/errgroup"
19+
"google.golang.org/protobuf/types/known/timestamppb"
1820
)
1921

2022
// Agent is the top-level interface that drives the agent lifecycle.
@@ -37,7 +39,7 @@ type agent struct {
3739
tunnel tunnelProcess
3840

3941
statusReporter *health.Reporter
40-
statusUpdates chan client.HeartbeatStatus
42+
statusUpdates chan *brevapiv2.BrevCloudNodeStatus
4143
}
4244

4345
var (
@@ -72,13 +74,13 @@ func NewAgent(cfg agentconfig.Config, log *zap.Logger) (Agent, error) {
7274
}
7375

7476
statusReporter := health.NewReporter(health.Status{
75-
Phase: client.NodePhaseActive,
77+
Phase: brevapiv2.BrevCloudNodePhase_BREV_CLOUD_NODE_PHASE_ACTIVE,
7678
LastTransitionTime: time.Now(),
7779
})
78-
defaultStatus := client.HeartbeatStatus{
79-
Phase: client.NodePhaseActive,
80+
defaultStatus := &brevapiv2.BrevCloudNodeStatus{
81+
Phase: brevapiv2.BrevCloudNodePhase_BREV_CLOUD_NODE_PHASE_ACTIVE,
8082
}
81-
statusUpdates := make(chan client.HeartbeatStatus, 1)
83+
statusUpdates := make(chan *brevapiv2.BrevCloudNodeStatus, 1)
8284

8385
hbRunner := &heartbeat.Runner{
8486
Client: cli,
@@ -88,7 +90,7 @@ func NewAgent(cfg agentconfig.Config, log *zap.Logger) (Agent, error) {
8890
MaxInterval: defaultHeartbeatMaxInterval,
8991
},
9092
Log: log.Named("heartbeat"),
91-
DefaultStatus: &defaultStatus,
93+
DefaultStatus: defaultStatus,
9294
StatusUpdates: statusUpdates,
9395
}
9496

@@ -185,14 +187,13 @@ func (a *agent) startStatusBridge(ctx context.Context) func() {
185187
return cancel
186188
}
187189

188-
func toHeartbeatStatus(status health.Status) client.HeartbeatStatus {
189-
hbStatus := client.HeartbeatStatus{
190+
func toHeartbeatStatus(status health.Status) *brevapiv2.BrevCloudNodeStatus {
191+
hbStatus := &brevapiv2.BrevCloudNodeStatus{
190192
Phase: status.Phase,
191193
Detail: status.Detail,
192194
}
193195
if !status.LastTransitionTime.IsZero() {
194-
t := status.LastTransitionTime
195-
hbStatus.LastTransitionTime = &t
196+
hbStatus.LastTransitionTime = timestamppb.New(status.LastTransitionTime)
196197
}
197198
return hbStatus
198199
}

pkg/brevdaemon/agent/agent_test.go

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,9 @@ import (
77
"testing"
88
"time"
99

10+
brevapiv2connect "buf.build/gen/go/brevdev/devplane/connectrpc/go/brevapi/v2/brevapiv2connect"
11+
brevapiv2 "buf.build/gen/go/brevdev/devplane/protocolbuffers/go/brevapi/v2"
12+
"connectrpc.com/connect"
1013
"github.com/brevdev/brev-cli/pkg/brevdaemon/agent/client"
1114
agentconfig "github.com/brevdev/brev-cli/pkg/brevdaemon/agent/config"
1215
"github.com/brevdev/brev-cli/pkg/brevdaemon/agent/heartbeat"
@@ -28,7 +31,7 @@ func TestNewAgentBuildsDependencies(t *testing.T) {
2831
ensureIdentity = origEnsure
2932
})
3033

31-
newBrevCloudAgentClient = func(agentconfig.Config, ...client.Option) (client.BrevCloudAgentClient, error) {
34+
newBrevCloudAgentClient = func(agentconfig.Config, ...client.Option) (brevapiv2connect.BrevCloudAgentServiceClient, error) {
3235
return &stubBrevCloudClient{}, nil
3336
}
3437

@@ -39,7 +42,7 @@ func TestNewAgentBuildsDependencies(t *testing.T) {
3942
}
4043

4144
var ensureCalled bool
42-
ensureIdentity = func(_ context.Context, _ agentconfig.Config, _ client.BrevCloudAgentClient, _ *identity.IdentityStore, _ telemetry.HardwareInfo, _ *zap.Logger) (identity.Identity, error) {
45+
ensureIdentity = func(_ context.Context, _ agentconfig.Config, _ brevapiv2connect.BrevCloudAgentServiceClient, _ *identity.IdentityStore, _ telemetry.HardwareInfo, _ *zap.Logger) (identity.Identity, error) {
4346
ensureCalled = true
4447
return identity.Identity{
4548
InstanceID: "inst-1",
@@ -166,16 +169,16 @@ func TestAgentRunIgnoresTunnelError(t *testing.T) {
166169

167170
type stubBrevCloudClient struct{}
168171

169-
func (s *stubBrevCloudClient) Register(context.Context, client.RegisterParams) (client.RegisterResult, error) {
170-
return client.RegisterResult{}, nil
172+
func (s *stubBrevCloudClient) Register(context.Context, *connect.Request[brevapiv2.RegisterRequest]) (*connect.Response[brevapiv2.RegisterResponse], error) {
173+
return connect.NewResponse(&brevapiv2.RegisterResponse{}), nil
171174
}
172175

173-
func (s *stubBrevCloudClient) Heartbeat(context.Context, client.HeartbeatParams) (client.HeartbeatResult, error) {
174-
return client.HeartbeatResult{}, nil
176+
func (s *stubBrevCloudClient) Heartbeat(context.Context, *connect.Request[brevapiv2.HeartbeatRequest]) (*connect.Response[brevapiv2.HeartbeatResponse], error) {
177+
return connect.NewResponse(&brevapiv2.HeartbeatResponse{}), nil
175178
}
176179

177-
func (s *stubBrevCloudClient) GetTunnelToken(context.Context, client.TunnelTokenParams) (client.TunnelTokenResult, error) {
178-
return client.TunnelTokenResult{}, nil
180+
func (s *stubBrevCloudClient) GetTunnelToken(context.Context, *connect.Request[brevapiv2.GetTunnelTokenRequest]) (*connect.Response[brevapiv2.GetTunnelTokenResponse], error) {
181+
return connect.NewResponse(&brevapiv2.GetTunnelTokenResponse{}), nil
179182
}
180183

181184
type stubRunner struct {

0 commit comments

Comments
 (0)