From ac5540ec7dc0cdee77168f57c70ad141efd4644f Mon Sep 17 00:00:00 2001
From: Wilson Liu <liuxinguo@huawei.com>
Date: Sat, 23 Jan 2016 10:32:43 +0800
Subject: [PATCH] Huawei: Don't fail when port group does not exist

Currently when we request a port group but the
port group does not exist, an error will be raised.
This is not appropriate, because port group not
exists is a normal case.

Closes-Bug: #1536040
Change-Id: I0614163574dac384167ce2bce8887f674f3a97b5
---
 cinder/tests/unit/test_huawei_drivers.py    | 6 ++++++
 cinder/volume/drivers/huawei/rest_client.py | 2 --
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/cinder/tests/unit/test_huawei_drivers.py b/cinder/tests/unit/test_huawei_drivers.py
index c235dae53..6ea717e6b 100644
--- a/cinder/tests/unit/test_huawei_drivers.py
+++ b/cinder/tests/unit/test_huawei_drivers.py
@@ -3034,6 +3034,12 @@ class HuaweiISCSIDriverTestCase(test.TestCase):
         op.get_replica_info(replica_id)
         op._is_status(None, {'key': 'volue'}, None)
 
+    @mock.patch.object(rest_client.RestClient, 'call',
+                       return_value={"error": {"code": 0}})
+    def test_get_tgt_port_group_no_portg_exist(self, mock_call):
+        portg = self.driver.client.get_tgt_port_group('test_portg')
+        self.assertIsNone(portg)
+
 
 class FCSanLookupService(object):
 
diff --git a/cinder/volume/drivers/huawei/rest_client.py b/cinder/volume/drivers/huawei/rest_client.py
index 7ff674952..5fcc7f8d8 100644
--- a/cinder/volume/drivers/huawei/rest_client.py
+++ b/cinder/volume/drivers/huawei/rest_client.py
@@ -367,8 +367,6 @@ class RestClient(object):
 
         msg = _('Find portgroup error.')
         self._assert_rest_result(result, msg)
-        msg = _('Can not find the portgroup on the array.')
-        self._assert_data_in_result(result, msg)
 
         return self._get_id_from_result(result, tgt_port_group, 'NAME')
 
-- 
2.45.2