mirror of
https://github.com/qdm12/gluetun.git
synced 2026-07-31 17:33:22 +02:00
Compare commits
2 Commits
issue-3408
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| ab09534a84 | |||
| b00279bc61 |
@@ -49,3 +49,24 @@ func portPairToString(internal, external uint16) string {
|
||||
}
|
||||
return fmt.Sprintf("%d (internal port %d)", external, internal)
|
||||
}
|
||||
|
||||
type loggerWithPrefix struct {
|
||||
prefix string
|
||||
logger Logger
|
||||
}
|
||||
|
||||
func (l *loggerWithPrefix) Debug(msg string) {
|
||||
l.logger.Debug(l.prefix + msg)
|
||||
}
|
||||
|
||||
func (l *loggerWithPrefix) Info(msg string) {
|
||||
l.logger.Info(l.prefix + msg)
|
||||
}
|
||||
|
||||
func (l *loggerWithPrefix) Warn(msg string) {
|
||||
l.logger.Warn(l.prefix + msg)
|
||||
}
|
||||
|
||||
func (l *loggerWithPrefix) Error(msg string) {
|
||||
l.logger.Error(l.prefix + msg)
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import (
|
||||
"fmt"
|
||||
"net/http"
|
||||
"slices"
|
||||
"strings"
|
||||
"sync"
|
||||
)
|
||||
|
||||
@@ -60,7 +61,8 @@ func (s *Service) SetPortsForwarded(ctx context.Context, ports []uint16) (err er
|
||||
s.portMutex.Lock()
|
||||
defer s.portMutex.Unlock()
|
||||
|
||||
if s.settings.PortForwarder != nil {
|
||||
hasPortForwardingCodeRunning := !strings.HasSuffix(s.settings.PortForwarder.Name(), "[not supported]")
|
||||
if hasPortForwardingCodeRunning {
|
||||
return errors.New("setting port forwarded at runtime is not supported with internally running port forwarding code")
|
||||
}
|
||||
|
||||
|
||||
@@ -133,7 +133,11 @@ func (s *Service) onNewPorts(ctx context.Context, internalToExternalPorts map[ui
|
||||
copy(s.ports, externalPorts)
|
||||
|
||||
if s.settings.UpCommand != "" {
|
||||
err = runCommand(ctx, s.cmder, s.logger, s.settings.UpCommand, externalPorts, s.settings.Interface)
|
||||
logger := &loggerWithPrefix{
|
||||
prefix: "up command: ",
|
||||
logger: s.logger,
|
||||
}
|
||||
err = runCommand(ctx, s.cmder, logger, s.settings.UpCommand, externalPorts, s.settings.Interface)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("running up command: %w", err)
|
||||
s.logger.Error(err.Error())
|
||||
|
||||
@@ -32,7 +32,11 @@ func (s *Service) cleanup() (err error) {
|
||||
const downTimeout = 60 * time.Second
|
||||
ctx, cancel := context.WithTimeout(context.Background(), downTimeout)
|
||||
defer cancel()
|
||||
err = runCommand(ctx, s.cmder, s.logger, s.settings.DownCommand, s.ports, s.settings.Interface)
|
||||
logger := &loggerWithPrefix{
|
||||
prefix: "down command: ",
|
||||
logger: s.logger,
|
||||
}
|
||||
err = runCommand(ctx, s.cmder, logger, s.settings.DownCommand, s.ports, s.settings.Interface)
|
||||
if err != nil {
|
||||
err = fmt.Errorf("running down command: %w", err)
|
||||
s.logger.Error(err.Error())
|
||||
|
||||
@@ -55,7 +55,7 @@ func newNoPortForwarder(providerName string) *noPortForwarder {
|
||||
}
|
||||
|
||||
func (n *noPortForwarder) Name() string {
|
||||
return n.providerName
|
||||
return n.providerName + " [not supported]"
|
||||
}
|
||||
|
||||
func (n *noPortForwarder) PortForward(context.Context, pfutils.PortForwardObjects) (
|
||||
|
||||
Reference in New Issue
Block a user