| package main |
| |
| import ( |
| "fmt" |
| "os/exec" |
| "testing" |
| ) |
| |
| // these tests need a freshly started empty private docker registry |
| |
| // pulling an image from the central registry should work |
| func TestPushBusyboxImage(t *testing.T) { |
| // skip this test until we're able to use a registry |
| t.Skip() |
| // tag the image to upload it tot he private registry |
| repoName := fmt.Sprintf("%v/busybox", privateRegistryURL) |
| tagCmd := exec.Command(dockerBinary, "tag", "busybox", repoName) |
| out, exitCode, err := runCommandWithOutput(tagCmd) |
| errorOut(err, t, fmt.Sprintf("%v %v", out, err)) |
| |
| if err != nil || exitCode != 0 { |
| t.Fatal("image tagging failed") |
| } |
| |
| pushCmd := exec.Command(dockerBinary, "push", repoName) |
| out, exitCode, err = runCommandWithOutput(pushCmd) |
| errorOut(err, t, fmt.Sprintf("%v %v", out, err)) |
| |
| deleteImages(repoName) |
| |
| if err != nil || exitCode != 0 { |
| t.Fatal("pushing the image to the private registry has failed") |
| } |
| logDone("push - push busybox to private registry") |
| } |
| |
| // pushing an image without a prefix should throw an error |
| func TestPushUnprefixedRepo(t *testing.T) { |
| // skip this test until we're able to use a registry |
| t.Skip() |
| pushCmd := exec.Command(dockerBinary, "push", "busybox") |
| _, exitCode, err := runCommandWithOutput(pushCmd) |
| |
| if err == nil || exitCode == 0 { |
| t.Fatal("pushing an unprefixed repo didn't result in a non-zero exit status") |
| } |
| logDone("push - push unprefixed busybox repo --> must fail") |
| } |