summaryrefslogtreecommitdiff
path: root/integration-cli/docker_utils.go
diff options
context:
space:
mode:
authorunclejack <unclejack@users.noreply.github.com>2014-04-09 01:56:01 +0300
committerunclejack <unclejack@users.noreply.github.com>2014-04-09 01:56:01 +0300
commite128a606e39fa63c6b4fd6e53a1d88cf00aad868 (patch)
tree199ee7eb6678ffecd2ddad95fce794c795ad5183 /integration-cli/docker_utils.go
parent143c9707a9fafc39e1d9747f528db97b2564f01e (diff)
parentdc9c28f51d669d6b09e81c2381f800f1a33bb659 (diff)
downloaddocker-release-0.10.tar.gz
Merge pull request #5079 from unclejack/bump_v0.10.0release-0.100.10.1-hotfixes
Bump version to v0.10.0
Diffstat (limited to 'integration-cli/docker_utils.go')
-rw-r--r--integration-cli/docker_utils.go63
1 files changed, 63 insertions, 0 deletions
diff --git a/integration-cli/docker_utils.go b/integration-cli/docker_utils.go
new file mode 100644
index 0000000000..6da86c9753
--- /dev/null
+++ b/integration-cli/docker_utils.go
@@ -0,0 +1,63 @@
+package main
+
+import (
+ "fmt"
+ "os/exec"
+ "strings"
+ "testing"
+)
+
+func deleteContainer(container string) error {
+ container = strings.Replace(container, "\n", " ", -1)
+ container = strings.Trim(container, " ")
+ rmArgs := fmt.Sprintf("rm %v", container)
+ rmSplitArgs := strings.Split(rmArgs, " ")
+ rmCmd := exec.Command(dockerBinary, rmSplitArgs...)
+ exitCode, err := runCommand(rmCmd)
+ // set error manually if not set
+ if exitCode != 0 && err == nil {
+ err = fmt.Errorf("failed to remove container: `docker rm` exit is non-zero")
+ }
+
+ return err
+}
+
+func getAllContainers() (string, error) {
+ getContainersCmd := exec.Command(dockerBinary, "ps", "-q", "-a")
+ out, exitCode, err := runCommandWithOutput(getContainersCmd)
+ if exitCode != 0 && err == nil {
+ err = fmt.Errorf("failed to get a list of containers: %v\n", out)
+ }
+
+ return out, err
+}
+
+func deleteAllContainers() error {
+ containers, err := getAllContainers()
+ if err != nil {
+ fmt.Println(containers)
+ return err
+ }
+
+ if err = deleteContainer(containers); err != nil {
+ return err
+ }
+ return nil
+}
+
+func deleteImages(images string) error {
+ rmiCmd := exec.Command(dockerBinary, "rmi", images)
+ exitCode, err := runCommand(rmiCmd)
+ // set error manually if not set
+ if exitCode != 0 && err == nil {
+ err = fmt.Errorf("failed to remove image: `docker rmi` exit is non-zero")
+ }
+
+ return err
+}
+
+func cmd(t *testing.T, args ...string) (string, int, error) {
+ out, status, err := runCommandWithOutput(exec.Command(dockerBinary, args...))
+ errorOut(err, t, fmt.Sprintf("'%s' failed with errors: %v (%v)", strings.Join(args, " "), err, out))
+ return out, status, err
+}