Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( Down = &cobra.Command{ Use: "down [OPTIONS]", Short: "Stop and remove containers, networks and volumes", Args: cobra.NoArgs, RunE: func(_ *cobra.Command, args []string) error { var cmd *system.Cmd cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("ps") cmd.Flag("filter", "label=com.docker.compose.oneoff=False") cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.project=%s", down.GetString("project-name"))) cmd.Flag("format", `{{ .ID }}`) cmd.Std(nil, nil, os.Stderr) out, err := cmd.Out(viper.GetBool("debug")) if err != nil { return err } ids := strings.Fields(out) if len(ids) > 0 { cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("stop") cmd.Arg(ids...) cmd.Std(nil, nil, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } } cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("system", "prune") cmd.Flag("all", true) cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.project=%s", down.GetString("project-name"))) cmd.Flag("force", true) cmd.Flag("volumes", true) cmd.Std(nil, nil, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } return nil }, } )
View Source
var ( Exec = &cobra.Command{ Use: "exec [OPTIONS] COMMAND [ARG...]", Short: "Execute a command in a running container", Args: cobra.ArbitraryArgs, PreRunE: func(_ *cobra.Command, args []string) error { var cmd *system.Cmd if len(exec.GetString("service")) == 0 { cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("ps") cmd.Flag("all", true) cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.container-number=%d", exec.GetInt("index"))) cmd.Flag("filter", "label=com.docker.compose.oneoff=False") cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.project=%s", exec.GetString("project-name"))) cmd.Flag("filter", "label=com.inaccel.docker.default-exec-service=True") cmd.Flag("format", `{{ .Label "com.docker.compose.service" }}`) cmd.Std(nil, nil, os.Stderr) out, err := cmd.Out(viper.GetBool("debug")) if err != nil { return err } services := strings.Fields(out) if len(services) > 0 { exec.Set("service", services[0]) } else { return fmt.Errorf("Error: No service (%d) found for %s", exec.GetInt("index"), exec.GetString("project-name")) } } return nil }, RunE: func(_ *cobra.Command, args []string) error { var cmd *system.Cmd if err := cobra.MinimumNArgs(1)(nil, args); err != nil { cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("inspect") cmd.Flag("format", `{{ index .Config.Labels "com.inaccel.docker.default-exec-command" }}`) cmd.Arg(fmt.Sprintf("%s_%s_%d", exec.GetString("project-name"), exec.GetString("service"), exec.GetInt("index"))) cmd.Std(nil, nil, os.Stderr) out, err := cmd.Out(viper.GetBool("debug")) if err != nil { return err } args = strings.Fields(out) if err := cobra.MinimumNArgs(1)(nil, args); err != nil { return err } } cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("exec") cmd.Flag("interactive", true) cmd.Flag("tty", true) cmd.Arg(fmt.Sprintf("%s_%s_%d", exec.GetString("project-name"), exec.GetString("service"), exec.GetInt("index"))) cmd.Arg(args...) cmd.Std(os.Stdin, os.Stdout, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } return nil }, } )
View Source
var ( Logs = &cobra.Command{ Use: "logs [OPTIONS]", Short: "View output from containers", Args: cobra.NoArgs, PreRunE: func(_ *cobra.Command, args []string) error { var cmd *system.Cmd if len(logs.GetString("service")) == 0 { cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("ps") cmd.Flag("all", true) fmt.Sprintf("label=com.docker.compose.container-number=%d", logs.GetInt("index")) cmd.Flag("filter", "label=com.docker.compose.oneoff=False") cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.project=%s", logs.GetString("project-name"))) cmd.Flag("filter", "label=com.inaccel.docker.default-logs-service=True") cmd.Flag("format", `{{ .Label "com.docker.compose.service" }}`) cmd.Std(nil, nil, os.Stderr) out, err := cmd.Out(viper.GetBool("debug")) if err != nil { return err } services := strings.Fields(out) if len(services) > 0 { logs.Set("service", services[0]) } else { return fmt.Errorf("Error: No service (%d) found for %s", logs.GetInt("index"), logs.GetString("project-name")) } } return nil }, RunE: func(_ *cobra.Command, args []string) error { var cmd *system.Cmd cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("logs") cmd.Flag("follow", logs.GetBool("follow")) cmd.Flag("tail", logs.GetString("tail")) cmd.Arg(fmt.Sprintf("%s_%s_%d", logs.GetString("project-name"), logs.GetString("service"), logs.GetInt("index"))) cmd.Std(os.Stdin, os.Stdout, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } return nil }, } )
View Source
var ( Ps = &cobra.Command{ Use: "ps [OPTIONS]", Short: "List containers", Args: cobra.NoArgs, RunE: func(_ *cobra.Command, _ []string) error { var cmd *system.Cmd cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("ps") cmd.Flag("all", true) cmd.Flag("filter", "label=com.docker.compose.oneoff=False") cmd.Flag("filter", fmt.Sprintf("label=com.docker.compose.project=%s", ps.GetString("project-name"))) cmd.Flag("format", `table {{ .ID }}\t{{ .Image }}\t{{ .RunningFor }}\t{{ .Status }}`) cmd.Flag("no-trunc", ps.GetBool("no-trunc")) cmd.Flag("quiet", ps.GetBool("quiet")) cmd.Std(nil, os.Stdout, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } return nil }, } )
View Source
var ( Up = &cobra.Command{ Use: "up [OPTIONS]", Short: "Create and start containers", Args: cobra.NoArgs, RunE: func(_ *cobra.Command, _ []string) error { var cmd *system.Cmd if up.GetBool("pull") { cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("pull") if strings.Contains(up.GetString("tag"), ":") { cmd.Arg(up.GetString("tag")) } else { cmd.Arg(fmt.Sprintf("%s:%s", "inaccel/fpga-operator", up.GetString("tag"))) } cmd.Std(nil, os.Stdout, os.Stderr) if err := cmd.Run(up.GetBool("debug")); err != nil { return err } } cmd = system.Command("docker") cmd.Flag("host", internal.Host) cmd.Flag("log-level", viper.GetString("log-level")) cmd.Arg("run") cmd.Flag("env", up.GetStringSlice("env")) if len(up.GetString("env-file")) > 0 { cmd.Flag("env-file", up.GetString("env-file")) } else if _, err := os.Stat(".env"); err == nil { cmd.Flag("env-file", ".env") } cmd.Flag("interactive", true) cmd.Flag("volume", fmt.Sprintf("%s:%s", internal.Host.Path, "/var/run/docker.sock")) if strings.Contains(up.GetString("tag"), ":") { cmd.Arg(up.GetString("tag")) } else { cmd.Arg(fmt.Sprintf("%s:%s", "inaccel/fpga-operator", up.GetString("tag"))) } cmd.Arg("docker-compose") cmd.Flag("project-name", up.GetString("project-name")) cmd.Arg("up") cmd.Flag("detach", true) cmd.Std(nil, os.Stdout, os.Stderr) if err := cmd.Run(viper.GetBool("debug")); err != nil { return err } return nil }, } )
Functions ¶
This section is empty.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.