Răsfoiți Sursa

Add E2E test on deploying ACR images

Signed-off-by: Guillaume Tardif <[email protected]>
Guillaume Tardif 5 ani în urmă
părinte
comite
5cab129c10
2 a modificat fișierele cu 22 adăugiri și 4 ștergeri
  1. 4 4
      aci/convert/registry_credentials.go
  2. 18 0
      tests/aci-e2e/e2e-aci_test.go

+ 4 - 4
aci/convert/registry_credentials.go

@@ -150,10 +150,10 @@ func (c cliRegistryHelper) autoLoginAcr(registry string) error {
 	}
 
 	data := url.Values{
-		"grant_type":    {"access_token"},
-		"service":       {registry},
-		"tenant":        {tenantID},
-		"access_token":  {token.AccessToken},
+		"grant_type":   {"access_token"},
+		"service":      {registry},
+		"tenant":       {tenantID},
+		"access_token": {token.AccessToken},
 	}
 	repoAuthURL := fmt.Sprintf("https://%s/oauth2/exchange", registry)
 	res, err := http.Post(repoAuthURL, "application/x-www-form-urlencoded", strings.NewReader(data.Encode()))

+ 18 - 0
tests/aci-e2e/e2e-aci_test.go

@@ -550,6 +550,24 @@ func TestRunEnvVars(t *testing.T) {
 	})
 }
 
+func TestDeployACRImage(t *testing.T) {
+	c := NewParallelE2eCLI(t, binDir)
+	_, _ = setupTestResourceGroup(t, c, "runAcr")
+
+	t.Run("run", func(t *testing.T) {
+		cmd := c.NewDockerCmd("run", "-d", "dockerregistrygta.azurecr.io/hello-aci")
+		res := icmd.RunCmd(cmd)
+		res.Assert(t, icmd.Success)
+		out := strings.Split(strings.TrimSpace(res.Stdout()), "\n")
+		container := strings.TrimSpace(out[len(out)-1])
+		t.Logf("Container name: %q", container)
+		waitForStatus(t, c, container, "Terminated")
+
+		res = c.RunDockerCmd("logs", container)
+		assert.Assert(t, strings.Contains(res.Stdout(), "Hello from Docker!"))
+	})
+}
+
 func setupTestResourceGroup(t *testing.T, c *E2eCLI, tName string) (string, string) {
 	startTime := strconv.Itoa(int(time.Now().Unix()))
 	rg := "E2E-" + tName + "-" + startTime