diff --git a/aci/volumes.go b/aci/volumes.go index a07af69f7..8eb804deb 100644 --- a/aci/volumes.go +++ b/aci/volumes.go @@ -92,10 +92,9 @@ func (cs *aciVolumeService) Create(ctx context.Context, options interface{}) (vo account, err := accountClient.GetProperties(ctx, cs.aciContext.ResourceGroup, opts.Account, "") if err == nil { w.Event(event(opts.Account, progress.Done, "Use existing")) + } else if !account.HasHTTPStatus(http.StatusNotFound) { + return volumes.Volume{}, err } else { - if account.StatusCode != http.StatusNotFound { - return volumes.Volume{}, err - } result, err := accountClient.CheckNameAvailability(ctx, storage.AccountCheckNameAvailabilityParameters{ Name: to.StringPtr(opts.Account), Type: to.StringPtr("Microsoft.Storage/storageAccounts"), @@ -137,7 +136,7 @@ func (cs *aciVolumeService) Create(ctx context.Context, options interface{}) (vo w.Event(errorEvent(opts.Fileshare)) return volumes.Volume{}, errors.Wrapf(errdefs.ErrAlreadyExists, "Azure fileshare %q already exists", opts.Fileshare) } - if fileShare.StatusCode != http.StatusNotFound { + if !fileShare.HasHTTPStatus(http.StatusNotFound) { w.Event(errorEvent(opts.Fileshare)) return volumes.Volume{}, err } diff --git a/tests/aci-e2e/e2e-aci_test.go b/tests/aci-e2e/e2e-aci_test.go index 3456ffc6e..3f6c2ff0b 100644 --- a/tests/aci-e2e/e2e-aci_test.go +++ b/tests/aci-e2e/e2e-aci_test.go @@ -150,6 +150,15 @@ func TestContainerRunVolume(t *testing.T) { accountName = "e2e" + strconv.Itoa(int(time.Now().UnixNano())) ) + t.Run("check empty volume name validity", func(t *testing.T) { + invalidName := "" + res := c.RunDockerOrExitError("volume", "create", "--storage-account", invalidName, "--fileshare", fileshareName) + res.Assert(t, icmd.Expected{ + ExitCode: 1, + Err: `parameter=accountName constraint=MinLength value="" details: value length must be greater than or equal to 3`, + }) + }) + t.Run("check volume name validity", func(t *testing.T) { invalidName := "some-storage-123" res := c.RunDockerOrExitError("volume", "create", "--storage-account", invalidName, "--fileshare", fileshareName)