@@ -653,6 +653,8 @@ func (s *Server) workspaceAgentPTY(rw http.ResponseWriter, r *http.Request) {
653
653
reconnect := parser .RequiredNotEmpty ("reconnect" ).UUID (values , uuid .New (), "reconnect" )
654
654
height := parser .UInt (values , 80 , "height" )
655
655
width := parser .UInt (values , 80 , "width" )
656
+ container := parser .String (values , "" , "container" )
657
+ containerUser := parser .String (values , "" , "container_user" )
656
658
if len (parser .Errors ) > 0 {
657
659
httpapi .Write (ctx , rw , http .StatusBadRequest , codersdk.Response {
658
660
Message : "Invalid query parameters." ,
@@ -690,7 +692,10 @@ func (s *Server) workspaceAgentPTY(rw http.ResponseWriter, r *http.Request) {
690
692
}
691
693
defer release ()
692
694
log .Debug (ctx , "dialed workspace agent" )
693
- ptNetConn , err := agentConn .ReconnectingPTY (ctx , reconnect , uint16 (height ), uint16 (width ), r .URL .Query ().Get ("command" ))
695
+ ptNetConn , err := agentConn .ReconnectingPTY (ctx , reconnect , uint16 (height ), uint16 (width ), r .URL .Query ().Get ("command" ), func (arp * workspacesdk.AgentReconnectingPTYInit ) {
696
+ arp .Container = container
697
+ arp .ContainerUser = containerUser
698
+ })
694
699
if err != nil {
695
700
log .Debug (ctx , "dial reconnecting pty server in workspace agent" , slog .Error (err ))
696
701
_ = conn .Close (websocket .StatusInternalError , httpapi .WebsocketCloseSprintf ("dial: %s" , err ))
0 commit comments