1
0
mirror of https://github.com/mxpv/podsync.git synced 2024-05-11 05:55:04 +00:00

37 lines
650 B
Go
Raw Normal View History

2019-10-29 14:38:29 -07:00
package main
2019-10-29 13:30:51 -07:00
import (
"fmt"
"net/http"
log "github.com/sirupsen/logrus"
"github.com/mxpv/podsync/pkg/config"
)
type Server struct {
http.Server
}
2019-10-29 14:38:29 -07:00
func NewServer(cfg *config.Config) *Server {
2019-10-29 13:30:51 -07:00
port := cfg.Server.Port
if port == 0 {
port = 8080
}
bindAddress := cfg.Server.BindAddress
if bindAddress == "*" {
bindAddress = ""
}
2019-10-29 13:30:51 -07:00
srv := Server{}
srv.Addr = fmt.Sprintf("%s:%d", bindAddress, port)
log.Debugf("using address: %s:%s", bindAddress, srv.Addr)
2019-10-29 13:30:51 -07:00
fs := http.FileServer(http.Dir(cfg.Server.DataDir))
path := cfg.Server.Path
http.Handle(fmt.Sprintf("/%s", path), fs)
log.Debugf("handle path: /%s", path)
2019-10-29 13:30:51 -07:00
return &srv
}