TUN-1885: Reconfigure cloudflared on receiving new ClientConfig

This commit is contained in:
Chung-Ting Huang
2019-06-18 11:47:29 -05:00
parent 80a15547e3
commit 0a742feb98
8 changed files with 523 additions and 44 deletions

View File

@@ -23,6 +23,7 @@ import (
type OriginService interface {
Proxy(stream *h2mux.MuxedStream, req *http.Request) (resp *http.Response, err error)
OriginAddr() string
Summary() string
Shutdown()
}
@@ -78,6 +79,10 @@ func (hc *HTTPService) OriginAddr() string {
return hc.originAddr
}
func (hc *HTTPService) Summary() string {
return fmt.Sprintf("HTTP service listening on %s", hc.originAddr)
}
func (hc *HTTPService) Shutdown() {}
// WebsocketService talks to origin using WS/WSS
@@ -126,6 +131,10 @@ func (wsc *WebsocketService) OriginAddr() string {
return wsc.originAddr
}
func (wsc *WebsocketService) Summary() string {
return fmt.Sprintf("Websocket listening on %ss", wsc.originAddr)
}
func (wsc *WebsocketService) Shutdown() {
close(wsc.shutdownC)
}
@@ -181,6 +190,10 @@ func (hwc *HelloWorldService) OriginAddr() string {
return hwc.originAddr
}
func (hwc *HelloWorldService) Summary() string {
return fmt.Sprintf("Hello World service listening on %s", hwc.originAddr)
}
func (hwc *HelloWorldService) Shutdown() {
hwc.listener.Close()
}