mirror of
https://github.com/wavetermdev/waveterm.git
synced 2025-02-22 02:41:23 +01:00
implement devmode with alternate directory/ports so main/dev can be run simultaneously
This commit is contained in:
parent
e1e1a52e06
commit
9ab5d1e529
@ -348,15 +348,19 @@ func AuthKeyWrap(fn WebFnType) WebFnType {
|
||||
func runWebSocketServer() {
|
||||
gr := mux.NewRouter()
|
||||
gr.HandleFunc("/ws", HandleWs)
|
||||
serverAddr := WebSocketServerAddr
|
||||
if scbase.IsDevMode() {
|
||||
serverAddr = WebSocketServerDevAddr
|
||||
}
|
||||
server := &http.Server{
|
||||
Addr: WebSocketServerAddr,
|
||||
Addr: serverAddr,
|
||||
ReadTimeout: HttpReadTimeout,
|
||||
WriteTimeout: HttpWriteTimeout,
|
||||
MaxHeaderBytes: HttpMaxHeaderBytes,
|
||||
Handler: gr,
|
||||
}
|
||||
server.SetKeepAlivesEnabled(false)
|
||||
log.Printf("Running websocket server on %s\n", WebSocketServerAddr)
|
||||
log.Printf("Running websocket server on %s\n", serverAddr)
|
||||
err := server.ListenAndServe()
|
||||
if err != nil {
|
||||
log.Printf("[error] trying to run websocket server: %v\n", err)
|
||||
@ -453,15 +457,19 @@ func main() {
|
||||
gr.HandleFunc("/api/run-command", AuthKeyWrap(HandleRunCommand)).Methods("POST")
|
||||
gr.HandleFunc("/api/get-client-data", AuthKeyWrap(HandleGetClientData))
|
||||
gr.HandleFunc("/api/set-winsize", AuthKeyWrap(HandleSetWinSize))
|
||||
serverAddr := MainServerAddr
|
||||
if scbase.IsDevMode() {
|
||||
serverAddr = MainServerDevAddr
|
||||
}
|
||||
server := &http.Server{
|
||||
Addr: MainServerAddr,
|
||||
Addr: serverAddr,
|
||||
ReadTimeout: HttpReadTimeout,
|
||||
WriteTimeout: HttpWriteTimeout,
|
||||
MaxHeaderBytes: HttpMaxHeaderBytes,
|
||||
Handler: http.TimeoutHandler(gr, HttpTimeoutDuration, "Timeout"),
|
||||
}
|
||||
server.SetKeepAlivesEnabled(false)
|
||||
log.Printf("Running main server on %s\n", MainServerAddr)
|
||||
log.Printf("Running main server on %s\n", serverAddr)
|
||||
err = server.ListenAndServe()
|
||||
if err != nil {
|
||||
log.Printf("ERROR: %v\n", err)
|
||||
|
@ -31,6 +31,11 @@ const PromptAuthKeyFileName = "prompt.authkey"
|
||||
var SessionDirCache = make(map[string]string)
|
||||
var BaseLock = &sync.Mutex{}
|
||||
|
||||
func IsDevMode() bool {
|
||||
pdev := os.Getenv(PromptDevVarName)
|
||||
return pdev != ""
|
||||
}
|
||||
|
||||
// must match js
|
||||
func GetPromptHomeDir() string {
|
||||
scHome := os.Getenv(PromptHomeVarName)
|
||||
|
@ -94,6 +94,9 @@ func GetDB(ctx context.Context) (*sqlx.DB, error) {
|
||||
globalDB, globalDBErr = sqlx.Open("sqlite3", fmt.Sprintf("file:%s?cache=shared&mode=rwc&_journal_mode=WAL&_busy_timeout=5000", dbName))
|
||||
if globalDBErr != nil {
|
||||
globalDBErr = fmt.Errorf("opening db[%s]: %w", dbName, globalDBErr)
|
||||
log.Printf("[db] error: %v\n", globalDBErr)
|
||||
} else {
|
||||
log.Printf("[db] successfully opened db %s\n", dbName)
|
||||
}
|
||||
}
|
||||
return globalDB, globalDBErr
|
||||
|
@ -1,16 +1,16 @@
|
||||
# SH2 Server Commands
|
||||
|
||||
```bash
|
||||
# @scripthaus command dump-schema
|
||||
sqlite3 /Users/mike/prompt/prompt.db .schema > db/schema.sql
|
||||
# @scripthaus command dump-schema-dev
|
||||
sqlite3 /Users/mike/prompt-dev/prompt.db .schema > db/schema.sql
|
||||
```
|
||||
|
||||
```bash
|
||||
# @scripthaus command opendb
|
||||
sqlite3 /Users/mike/prompt/prompt.db
|
||||
# @scripthaus command opendb-dev
|
||||
sqlite3 /Users/mike/prompt-dev/prompt.db
|
||||
```
|
||||
|
||||
```bash
|
||||
# @scripthaus command build
|
||||
go build -o ~/prompt/local-server cmd/main-server.go
|
||||
go build -o ~/prompt-dev/local-server cmd/main-server.go
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user