mirror of
https://github.com/bcicen/ctop.git
synced 2024-08-30 18:23:19 +00:00
omit runc connector from darwin build
This commit is contained in:
parent
e59a360b60
commit
617b1b2863
@ -1,3 +1,5 @@
|
||||
// +build !darwin
|
||||
|
||||
package collector
|
||||
|
||||
import (
|
||||
|
@ -1,3 +1,5 @@
|
||||
// +build !darwin
|
||||
|
||||
package collector
|
||||
|
||||
import (
|
||||
|
@ -1,4 +1,3 @@
|
||||
// +build ignore
|
||||
package connector
|
||||
|
||||
import (
|
||||
|
7
connector/enabled_darwin.go
Normal file
7
connector/enabled_darwin.go
Normal file
@ -0,0 +1,7 @@
|
||||
// +build !linux
|
||||
|
||||
package connector
|
||||
|
||||
var enabled = map[string]func() Connector{
|
||||
"docker": NewDocker,
|
||||
}
|
8
connector/enabled_linux.go
Normal file
8
connector/enabled_linux.go
Normal file
@ -0,0 +1,8 @@
|
||||
// +build !darwin
|
||||
|
||||
package connector
|
||||
|
||||
var enabled = map[string]func() Connector{
|
||||
"docker": NewDocker,
|
||||
"runc": NewRunc,
|
||||
}
|
@ -1,12 +1,25 @@
|
||||
package connector
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/bcicen/ctop/container"
|
||||
"github.com/bcicen/ctop/logging"
|
||||
)
|
||||
|
||||
var log = logging.Init()
|
||||
|
||||
func ByName(s string) (Connector, error) {
|
||||
if _, ok := enabled[s]; !ok {
|
||||
msg := fmt.Sprintf("invalid connector type \"%s\"\nconnector must be one of:", s)
|
||||
for k, _ := range enabled {
|
||||
msg += fmt.Sprintf("\n %s", k)
|
||||
}
|
||||
return nil, fmt.Errorf(msg)
|
||||
}
|
||||
return enabled[s](), nil
|
||||
}
|
||||
|
||||
type Connector interface {
|
||||
All() container.Containers
|
||||
Get(string) (*container.Container, bool)
|
||||
|
@ -1,3 +1,5 @@
|
||||
// +build !darwin
|
||||
|
||||
package connector
|
||||
|
||||
import (
|
||||
|
11
cursor.go
11
cursor.go
@ -8,11 +8,6 @@ import (
|
||||
ui "github.com/gizak/termui"
|
||||
)
|
||||
|
||||
var enabledConnectors = map[string]func() connector.Connector{
|
||||
"docker": connector.NewDocker,
|
||||
"runc": connector.NewRunc,
|
||||
}
|
||||
|
||||
type GridCursor struct {
|
||||
selectedID string // id of currently selected container
|
||||
filtered container.Containers
|
||||
@ -20,12 +15,6 @@ type GridCursor struct {
|
||||
isScrolling bool // toggled when actively scrolling
|
||||
}
|
||||
|
||||
func NewGridCursor(connectorName string) *GridCursor {
|
||||
return &GridCursor{
|
||||
cSource: enabledConnectors[connectorName](),
|
||||
}
|
||||
}
|
||||
|
||||
func (gc *GridCursor) Len() int { return len(gc.filtered) }
|
||||
|
||||
func (gc *GridCursor) Selected() *container.Container {
|
||||
|
24
main.go
24
main.go
@ -4,9 +4,9 @@ import (
|
||||
"flag"
|
||||
"fmt"
|
||||
"os"
|
||||
"strings"
|
||||
|
||||
"github.com/bcicen/ctop/config"
|
||||
"github.com/bcicen/ctop/connector"
|
||||
"github.com/bcicen/ctop/container"
|
||||
"github.com/bcicen/ctop/cwidgets/compact"
|
||||
"github.com/bcicen/ctop/logging"
|
||||
@ -41,8 +41,6 @@ func main() {
|
||||
var connectorFlag = flag.String("connector", "docker", "container connector to use")
|
||||
flag.Parse()
|
||||
|
||||
validConnector(*connectorFlag)
|
||||
|
||||
if *versionFlag {
|
||||
fmt.Println(versionStr)
|
||||
os.Exit(0)
|
||||
@ -88,7 +86,11 @@ func main() {
|
||||
|
||||
defer Shutdown()
|
||||
// init grid, cursor, header
|
||||
cursor = NewGridCursor(*connectorFlag)
|
||||
conn, err := connector.ByName(*connectorFlag)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
cursor = &GridCursor{cSource: conn}
|
||||
cGrid = compact.NewCompactGrid()
|
||||
header = widgets.NewCTopHeader()
|
||||
|
||||
@ -108,18 +110,6 @@ func Shutdown() {
|
||||
}
|
||||
}
|
||||
|
||||
func validConnector(s string) {
|
||||
if _, ok := enabledConnectors[s]; !ok {
|
||||
fmt.Printf("invalid connector type: %s\n", s)
|
||||
var connectors []string
|
||||
for k, _ := range enabledConnectors {
|
||||
connectors = append(connectors, k)
|
||||
}
|
||||
fmt.Printf("connector must be one of: %s\n", strings.Join(connectors, ","))
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
// ensure a given sort field is valid
|
||||
func validSort(s string) {
|
||||
if _, ok := container.Sorters[s]; !ok {
|
||||
@ -131,7 +121,7 @@ func validSort(s string) {
|
||||
func panicExit() {
|
||||
if r := recover(); r != nil {
|
||||
Shutdown()
|
||||
fmt.Printf("panic: %s\n", r)
|
||||
fmt.Printf("error: %s\n", r)
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user