Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitdca0e6c

Browse files
committed
chore: remove legacy wsconncache
1 parentc4af306 commitdca0e6c

22 files changed

+36
-1241
lines changed

‎.vscode/settings.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,6 @@
170170
"workspaceapps",
171171
"workspacebuilds",
172172
"workspacename",
173-
"wsconncache",
174173
"wsjson",
175174
"xerrors",
176175
"xlarge",

‎coderd/apidoc/docs.go

Lines changed: 0 additions & 49 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/apidoc/swagger.json

Lines changed: 0 additions & 45 deletions
Some generated files are not rendered by default. Learn more aboutcustomizing how changed files appear on GitHub.

‎coderd/coderd.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,6 @@ import (
6565
"github.com/coder/coder/v2/coderd/updatecheck"
6666
"github.com/coder/coder/v2/coderd/util/slice"
6767
"github.com/coder/coder/v2/coderd/workspaceapps"
68-
"github.com/coder/coder/v2/coderd/wsconncache"
6968
"github.com/coder/coder/v2/codersdk"
7069
"github.com/coder/coder/v2/codersdk/drpc"
7170
"github.com/coder/coder/v2/provisionerd/proto"
@@ -481,7 +480,6 @@ func New(options *Options) *API {
481480
func(context.Context) (tailnet.MultiAgentConn,error) {
482481
return (*api.TailnetCoordinator.Load()).ServeMultiAgent(uuid.New()),nil
483482
},
484-
wsconncache.New(api._dialWorkspaceAgentTailnet,0),
485483
api.TracerProvider,
486484
)
487485
iferr!=nil {

‎coderd/tailnet.go

Lines changed: 13 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ import (
2222
"cdr.dev/slog"
2323
"github.com/coder/coder/v2/coderd/tracing"
2424
"github.com/coder/coder/v2/coderd/workspaceapps"
25-
"github.com/coder/coder/v2/coderd/wsconncache"
2625
"github.com/coder/coder/v2/codersdk"
2726
"github.com/coder/coder/v2/site"
2827
"github.com/coder/coder/v2/tailnet"
@@ -41,16 +40,14 @@ func init() {
4140

4241
var_ workspaceapps.AgentProvider= (*ServerTailnet)(nil)
4342

44-
// NewServerTailnet creates a new tailnet intended for use by coderd. It
45-
// automatically falls back to wsconncache if a legacy agent is encountered.
43+
// NewServerTailnet creates a new tailnet intended for use by coderd.
4644
funcNewServerTailnet(
4745
ctx context.Context,
4846
logger slog.Logger,
4947
derpServer*derp.Server,
5048
derpMapFnfunc()*tailcfg.DERPMap,
5149
derpForceWebSocketsbool,
5250
getMultiAgentfunc(context.Context) (tailnet.MultiAgentConn,error),
53-
cache*wsconncache.Cache,
5451
traceProvider trace.TracerProvider,
5552
) (*ServerTailnet,error) {
5653
logger=logger.Named("servertailnet")
@@ -97,7 +94,6 @@ func NewServerTailnet(
9794
conn:conn,
9895
coordinatee:conn,
9996
getMultiAgent:getMultiAgent,
100-
cache:cache,
10197
agentConnectionTimes:map[uuid.UUID]time.Time{},
10298
agentTickets:map[uuid.UUID]map[uuid.UUID]struct{}{},
10399
transport:tailnetTransport.Clone(),
@@ -299,7 +295,6 @@ type ServerTailnet struct {
299295

300296
getMultiAgentfunc(context.Context) (tailnet.MultiAgentConn,error)
301297
agentConn atomic.Pointer[tailnet.MultiAgentConn]
302-
cache*wsconncache.Cache
303298
nodesMu sync.Mutex
304299
// agentConnectionTimes is a map of agent tailnetNodes the server wants to
305300
// keep a connection to. It contains the last time the agent was connected
@@ -311,7 +306,7 @@ type ServerTailnet struct {
311306
transport*http.Transport
312307
}
313308

314-
func (s*ServerTailnet)ReverseProxy(targetURL,dashboardURL*url.URL,agentID uuid.UUID)(_*httputil.ReverseProxy,releasefunc(),_error) {
309+
func (s*ServerTailnet)ReverseProxy(targetURL,dashboardURL*url.URL,agentID uuid.UUID)*httputil.ReverseProxy {
315310
proxy:=httputil.NewSingleHostReverseProxy(targetURL)
316311
proxy.ErrorHandler=func(w http.ResponseWriter,r*http.Request,errerror) {
317312
site.RenderStaticErrorPage(w,r, site.ErrorPageData{
@@ -325,7 +320,7 @@ func (s *ServerTailnet) ReverseProxy(targetURL, dashboardURL *url.URL, agentID u
325320
proxy.Director=s.director(agentID,proxy.Director)
326321
proxy.Transport=s.transport
327322

328-
returnproxy,func() {},nil
323+
returnproxy
329324
}
330325

331326
typeagentIDKeystruct{}
@@ -387,28 +382,17 @@ func (s *ServerTailnet) AgentConn(ctx context.Context, agentID uuid.UUID) (*code
387382
retfunc()
388383
)
389384

390-
ifs.getAgentConn().AgentIsLegacy(agentID) {
391-
s.logger.Debug(s.ctx,"acquiring legacy agent",slog.F("agent_id",agentID))
392-
cconn,release,err:=s.cache.Acquire(agentID)
393-
iferr!=nil {
394-
returnnil,nil,xerrors.Errorf("acquire legacy agent conn: %w",err)
395-
}
396-
397-
conn=cconn.WorkspaceAgentConn
398-
ret=release
399-
}else {
400-
s.logger.Debug(s.ctx,"acquiring agent",slog.F("agent_id",agentID))
401-
err:=s.ensureAgent(agentID)
402-
iferr!=nil {
403-
returnnil,nil,xerrors.Errorf("ensure agent: %w",err)
404-
}
405-
ret=s.acquireTicket(agentID)
406-
407-
conn=codersdk.NewWorkspaceAgentConn(s.conn, codersdk.WorkspaceAgentConnOptions{
408-
AgentID:agentID,
409-
CloseFunc:func()error {returncodersdk.ErrSkipClose },
410-
})
385+
s.logger.Debug(s.ctx,"acquiring agent",slog.F("agent_id",agentID))
386+
err:=s.ensureAgent(agentID)
387+
iferr!=nil {
388+
returnnil,nil,xerrors.Errorf("ensure agent: %w",err)
411389
}
390+
ret=s.acquireTicket(agentID)
391+
392+
conn=codersdk.NewWorkspaceAgentConn(s.conn, codersdk.WorkspaceAgentConnOptions{
393+
AgentID:agentID,
394+
CloseFunc:func()error {returncodersdk.ErrSkipClose },
395+
})
412396

413397
// Since we now have an open conn, be careful to close it if we error
414398
// without returning it to the user.
@@ -458,7 +442,6 @@ func (c *netConnCloser) Close() error {
458442

459443
func (s*ServerTailnet)Close()error {
460444
s.cancel()
461-
_=s.cache.Close()
462445
_=s.conn.Close()
463446
s.transport.CloseIdleConnections()
464447
<-s.derpMapUpdaterClosed

‎coderd/tailnet_test.go

Lines changed: 2 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,6 @@ import (
2121
"github.com/coder/coder/v2/agent"
2222
"github.com/coder/coder/v2/agent/agenttest"
2323
"github.com/coder/coder/v2/coderd"
24-
"github.com/coder/coder/v2/coderd/wsconncache"
2524
"github.com/coder/coder/v2/codersdk"
2625
"github.com/coder/coder/v2/codersdk/agentsdk"
2726
"github.com/coder/coder/v2/tailnet"
@@ -45,24 +44,6 @@ func TestServerTailnet_AgentConn_OK(t *testing.T) {
4544
assert.True(t,conn.AwaitReachable(ctx))
4645
}
4746

48-
funcTestServerTailnet_AgentConn_Legacy(t*testing.T) {
49-
t.Parallel()
50-
51-
ctx,cancel:=context.WithTimeout(context.Background(),testutil.WaitMedium)
52-
defercancel()
53-
54-
// Force a connection through wsconncache using the legacy hardcoded ip.
55-
agentID,_,serverTailnet:=setupAgent(t, []netip.Prefix{
56-
netip.PrefixFrom(codersdk.WorkspaceAgentIP,128),
57-
})
58-
59-
conn,release,err:=serverTailnet.AgentConn(ctx,agentID)
60-
require.NoError(t,err)
61-
deferrelease()
62-
63-
assert.True(t,conn.AwaitReachable(ctx))
64-
}
65-
6647
funcTestServerTailnet_ReverseProxy(t*testing.T) {
6748
t.Parallel()
6849

@@ -77,9 +58,7 @@ func TestServerTailnet_ReverseProxy(t *testing.T) {
7758
u,err:=url.Parse(fmt.Sprintf("http://127.0.0.1:%d",codersdk.WorkspaceAgentHTTPAPIServerPort))
7859
require.NoError(t,err)
7960

80-
rp,release,err:=serverTailnet.ReverseProxy(u,u,agentID)
81-
require.NoError(t,err)
82-
deferrelease()
61+
rp:=serverTailnet.ReverseProxy(u,u,agentID)
8362

8463
rw:=httptest.NewRecorder()
8564
req:=httptest.NewRequest(
@@ -113,9 +92,7 @@ func TestServerTailnet_ReverseProxy(t *testing.T) {
11392
uri,err:=url.Parse(s.URL)
11493
require.NoError(t,err)
11594

116-
rp,release,err:=serverTailnet.ReverseProxy(uri,uri,agentID)
117-
require.NoError(t,err)
118-
deferrelease()
95+
rp:=serverTailnet.ReverseProxy(uri,uri,agentID)
11996

12097
rw:=httptest.NewRecorder()
12198
req:=httptest.NewRequest(
@@ -130,38 +107,6 @@ func TestServerTailnet_ReverseProxy(t *testing.T) {
130107

131108
assert.Equal(t,expectedResponseCode,res.StatusCode)
132109
})
133-
134-
t.Run("Legacy",func(t*testing.T) {
135-
t.Parallel()
136-
137-
ctx,cancel:=context.WithTimeout(context.Background(),testutil.WaitLong)
138-
defercancel()
139-
140-
// Force a connection through wsconncache using the legacy hardcoded ip.
141-
agentID,_,serverTailnet:=setupAgent(t, []netip.Prefix{
142-
netip.PrefixFrom(codersdk.WorkspaceAgentIP,128),
143-
})
144-
145-
u,err:=url.Parse(fmt.Sprintf("http://127.0.0.1:%d",codersdk.WorkspaceAgentHTTPAPIServerPort))
146-
require.NoError(t,err)
147-
148-
rp,release,err:=serverTailnet.ReverseProxy(u,u,agentID)
149-
require.NoError(t,err)
150-
deferrelease()
151-
152-
rw:=httptest.NewRecorder()
153-
req:=httptest.NewRequest(
154-
http.MethodGet,
155-
u.String(),
156-
nil,
157-
).WithContext(ctx)
158-
159-
rp.ServeHTTP(rw,req)
160-
res:=rw.Result()
161-
deferres.Body.Close()
162-
163-
assert.Equal(t,http.StatusOK,res.StatusCode)
164-
})
165110
}
166111

167112
funcsetupAgent(t*testing.T,agentAddresses []netip.Prefix) (uuid.UUID, agent.Agent,*coderd.ServerTailnet) {
@@ -197,42 +142,13 @@ func setupAgent(t *testing.T, agentAddresses []netip.Prefix) (uuid.UUID, agent.A
197142
returncoord.Node(manifest.AgentID)!=nil
198143
},testutil.WaitShort,testutil.IntervalFast)
199144

200-
cache:=wsconncache.New(func(id uuid.UUID) (*codersdk.WorkspaceAgentConn,error) {
201-
conn,err:=tailnet.NewConn(&tailnet.Options{
202-
Addresses: []netip.Prefix{netip.PrefixFrom(tailnet.IP(),128)},
203-
DERPMap:manifest.DERPMap,
204-
Logger:logger.Named("client"),
205-
})
206-
require.NoError(t,err)
207-
t.Cleanup(func() {
208-
_=conn.Close()
209-
})
210-
clientID:=uuid.New()
211-
testCtx,testCtxCancel:=context.WithCancel(context.Background())
212-
t.Cleanup(testCtxCancel)
213-
coordination:=tailnet.NewInMemoryCoordination(
214-
testCtx,logger,
215-
clientID,manifest.AgentID,
216-
coord,conn,
217-
)
218-
t.Cleanup(func() {
219-
_=coordination.Close()
220-
})
221-
returncodersdk.NewWorkspaceAgentConn(conn, codersdk.WorkspaceAgentConnOptions{
222-
AgentID:manifest.AgentID,
223-
AgentIP:codersdk.WorkspaceAgentIP,
224-
CloseFunc:func()error {returncodersdk.ErrSkipClose },
225-
}),nil
226-
},0)
227-
228145
serverTailnet,err:=coderd.NewServerTailnet(
229146
context.Background(),
230147
logger,
231148
derpServer,
232149
func()*tailcfg.DERPMap {returnmanifest.DERPMap },
233150
false,
234151
func(context.Context) (tailnet.MultiAgentConn,error) {returncoord.ServeMultiAgent(uuid.New()),nil },
235-
cache,
236152
trace.NewNoopTracerProvider(),
237153
)
238154
require.NoError(t,err)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp