refactor: move all port management code to standalone ports plugin
This change makes interacting with port mappings more clear - folks might previously set the port mapping to the proxy type or vice-versa. The existing proxy:ports* commands still exist but will show a deprecation warning for a single minor release.
This commit is contained in:
21
plugins/ports/proxy.go
Normal file
21
plugins/ports/proxy.go
Normal file
@@ -0,0 +1,21 @@
|
||||
package ports
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
|
||||
// PortMap is a struct that contains a scheme:host-port:container-port mapping
|
||||
type PortMap struct {
|
||||
ContainerPort int
|
||||
HostPort int
|
||||
Scheme string
|
||||
}
|
||||
|
||||
func (p PortMap) String() string {
|
||||
return fmt.Sprintf("%s:%d:%d", p.Scheme, p.HostPort, p.ContainerPort)
|
||||
}
|
||||
|
||||
// AllowsPersistence returns true if the port map is not to be persisted
|
||||
func (p PortMap) AllowsPersistence() bool {
|
||||
return p.Scheme == "__internal__"
|
||||
}
|
||||
Reference in New Issue
Block a user