示例#1
0
文件: ebuild.go 项目: kless/osutil
func (p ebuild) Clean() error {
	err := osutil.Exec("/usr/bin/emerge", "--update", "--deep", "--newuse @world")
	if err != nil {
		return err
	}

	return osutil.Exec("/usr/bin/emerge", "--depclean")
}
示例#2
0
func TestCommand(t *testing.T) {
	CMD_MAIN := "starter"
	CMD_TEST := "tester"

	// Build the command and executable test
	err := exec.Command("go", "build", "./"+filepath.Join("cmd", CMD_MAIN)).Run()
	if err != nil {
		t.Fatal(err)
	}
	err = exec.Command("go", "build", "-o", CMD_TEST, "./testdata").Run()
	if err != nil {
		t.Fatal(err)
	}

	CMD_MAIN = "./" + CMD_MAIN

	go func() {
		err = osutil.Exec(CMD_MAIN, "./"+CMD_TEST)
	}()
	if err != nil {
		t.Fatal(err)
	}
	time.Sleep(3 * time.Second)

	if err = osutil.Exec(CMD_MAIN, "-status", CMD_TEST); err != nil {
		t.Error(err)
	}
	time.Sleep(3 * time.Second)
	fmt.Println()

	if err = osutil.Exec(CMD_MAIN, "-restart", CMD_TEST); err != nil {
		t.Error(err)
	}
	time.Sleep(7 * time.Second)
	fmt.Println()

	if err = osutil.Exec(CMD_MAIN, "-stop", CMD_TEST); err != nil {
		t.Error(err)
	}
	time.Sleep(3 * time.Second)
	fmt.Println()

	if err = osutil.Exec(CMD_MAIN, "-status", CMD_TEST); err != nil {
		t.Error(err)
	}
	time.Sleep(2 * time.Second)

	// Remove the commands
	for _, v := range []string{CMD_MAIN, CMD_TEST} {
		if err = os.Remove(v); err != nil {
			t.Log(err)
		}
	}
}
示例#3
0
文件: pacman.go 项目: kless/osutil
func (p pacman) Install(name ...string) error {
	args := []string{"-S", "--needed", "--noprogressbar"}

	return osutil.Exec("/usr/bin/pacman", append(args, name...)...)
}
示例#4
0
文件: rpm.go 项目: kless/osutil
func (p rpm) Clean() error {
	return osutil.Exec("/usr/bin/yum", "clean", "packages")
}
示例#5
0
文件: rpm.go 项目: kless/osutil
func (p rpm) Upgrade() error {
	return osutil.Exec("/usr/bin/yum", "update")
}
示例#6
0
文件: rpm.go 项目: kless/osutil
func (p rpm) Remove(name ...string) error {
	args := []string{"remove"}

	return osutil.Exec("/usr/bin/yum", append(args, name...)...)
}
示例#7
0
文件: rpm.go 项目: kless/osutil
func (p rpm) Install(name ...string) error {
	args := []string{"install"}

	return osutil.Exec("/usr/bin/yum", append(args, name...)...)
}
示例#8
0
文件: ebuild.go 项目: kless/osutil
func (p ebuild) Remove(name ...string) error {
	args := []string{"--unmerge"}

	return osutil.Exec("/usr/bin/emerge", append(args, name...)...)
}
示例#9
0
文件: pacman.go 项目: kless/osutil
func (p pacman) Upgrade() error {
	return osutil.Exec("/usr/bin/pacman", "-Syu")
}
示例#10
0
文件: zypp.go 项目: kless/osutil
func (p zypp) Upgrade() error {
	return osutil.Exec("/usr/bin/zypper", "up", "--auto-agree-with-licenses")
}
示例#11
0
文件: zypp.go 项目: kless/osutil
func (p zypp) Update() error {
	return osutil.Exec("/usr/bin/zypper", "refresh")
}
示例#12
0
文件: zypp.go 项目: kless/osutil
func (p zypp) Install(name ...string) error {
	args := []string{"install", "--auto-agree-with-licenses"}

	return osutil.Exec("/usr/bin/zypper", append(args, name...)...)
}
示例#13
0
文件: ebuild.go 项目: kless/osutil
func (p ebuild) Upgrade() error {
	return osutil.Exec("/usr/bin/emerge", "--update", "--deep", "--with-bdeps=y", "--newuse @world")
}
示例#14
0
文件: ebuild.go 项目: kless/osutil
func (p ebuild) Update() error {
	return osutil.Exec("/usr/bin/emerge", "--sync")
}
示例#15
0
文件: pacman.go 项目: kless/osutil
func (p pacman) Purge(name ...string) error {
	args := []string{"-Rsn"}

	return osutil.Exec("/usr/bin/pacman", append(args, name...)...)
}
示例#16
0
文件: pacman.go 项目: kless/osutil
func (p pacman) Update() error {
	return osutil.Exec("/usr/bin/pacman", "-Syu", "--needed", "--noprogressbar")
}
示例#17
0
文件: zypp.go 项目: kless/osutil
func (p zypp) Clean() error {
	return osutil.Exec("/usr/bin/zypper", "clean")
}
示例#18
0
文件: pacman.go 项目: kless/osutil
func (p pacman) Clean() error {
	return osutil.Exec("/usr/bin/paccache", "-r")
}
示例#19
0
文件: ebuild.go 项目: kless/osutil
func (p ebuild) Install(name ...string) error {
	return osutil.Exec("/usr/bin/emerge", name...)
}