本文整理汇总了Golang中github.com/lotreal/docker-pods/src/sh.Command类的典型用法代码示例。如果您正苦于以下问题:Golang Command类的具体用法?Golang Command怎么用?Golang Command使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Command类的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: TestFoo
func TestFoo(t *testing.T) {
cmd := sh.Command{"foo"}
_, err := cmd.Run()
if err.Error() != "exit status 127" {
t.Errorf("command(%s) should exit with 127, but is: %#v", cmd.Text(), err.Error())
}
}
示例2: TestRun
func TestRun(t *testing.T) {
cmd := sh.Command{"echo -n 12; echo 34"}
out, _ := cmd.Run()
if out != "1234" {
t.Errorf("command(%s) should output 1234, but is: %#v", cmd.Text(), out)
}
}
示例3: RunPods
func RunPods(file string) (RunOutput, error) {
var out RunOutput
p, err := config.Pods(file)
if err != nil {
return out, err
}
script, err := MakeCmd(p)
if err != nil {
return out, err
}
cmd := sh.Command{script}
fmt.Println(file)
fmt.Println(script)
fmt.Println("=============================")
out = RunOutput{
Pid: p.Id,
Pods: file,
ContainerId: cmd.Ok(),
// ContainerId: cmd.Mock()[0],
}
return out, nil
}
示例4: TestLines
func TestLines(t *testing.T) {
cmd := sh.Command{"echo 12; echo 34"}
out, _ := cmd.Lines()
if len(out) != 2 {
t.Errorf("command(%s) should output 2 line, but is: %#v", cmd.Text(), out)
}
}
示例5: gitDescribe
func gitDescribe(dir string) (string, error) {
os.Chdir(dir)
script := "git describe"
cmd := sh.Command{script}
out, err := cmd.Run()
return out, err
}
示例6: InspectRunning
func InspectRunning(cid string) string {
script := fmt.Sprintf("docker inspect --format='{{.State.Running}}' %s", cid)
cmd := sh.Command{script}
ret := cmd.Ok()
if ret == "true" {
return "YES"
}
return "NO"
}
示例7: InspectPid
func InspectPid(cid string) string {
script := fmt.Sprintf("docker inspect --format='{{.Config.Labels.name}}' %s", cid)
cmd := sh.Command{script}
ret := cmd.Ok()
if ret == "<no value>" {
return ""
}
return ret
}
示例8: gitRev
func gitRev(dir string) (string, error) {
os.Chdir(dir)
script := "git rev-list --count --first-parent HEAD"
cmd := sh.Command{script}
out, err := cmd.Run()
if err != nil {
return "", err
}
return fmt.Sprintf("r%s", out), err
}
示例9: Ps
func Ps() []PsOutput {
cmd := sh.Command{"docker ps -a"}
lines, _ := cmd.Lines()
var reader = sh.NewReader(lines, PsOutput{})
var status []PsOutput
status = make([]PsOutput, 0)
for {
var s PsOutput
err := sh.Unmarshal(reader, &s)
if err == io.EOF {
break
}
if err != nil {
panic(err)
}
status = append(status, s)
}
return status
}
示例10: TestRm
func TestRm(t *testing.T) {
script := fmt.Sprintf("docker rm -f %s", busybox)
cmd := sh.Command{script}
t.Log(cmd.Ok())
}
示例11: TestInit
package docker_test
import (
"fmt"
"testing"
"github.com/lotreal/docker-pods/src/docker"
"github.com/lotreal/docker-pods/src/sh"
)
var busybox = (func() string {
cmd := sh.Command{"docker run -d -it busybox sh"}
return cmd.Ok()[0:12]
})()
func TestInit(t *testing.T) {
t.Logf("%s", docker.Ps())
t.Logf("%s", busybox)
}
func TestIp(t *testing.T) {
t.Log(docker.InspectIp(busybox))
}
func TestPort(t *testing.T) {
t.Log(docker.InspectPorts(busybox))
}
func TestState(t *testing.T) {
t.Log(docker.InspectPorts(busybox))
}
示例12: InspectIp
func InspectIp(cid string) string {
script := fmt.Sprintf("docker inspect --format='{{.NetworkSettings.IPAddress}}' %s", cid)
cmd := sh.Command{script}
return cmd.Ok()
}
示例13: InspectPorts
func InspectPorts(cid string) string {
script := fmt.Sprintf("docker inspect --format='{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' %s", cid)
cmd := sh.Command{script}
ret := cmd.Ok()
return ret
}