Merge "tempest-api: Skip test if deployment has not enough agents"
diff --git a/neutron/tests/tempest/api/admin/test_agent_management.py b/neutron/tests/tempest/api/admin/test_agent_management.py
index a46721f..ceda460 100644
--- a/neutron/tests/tempest/api/admin/test_agent_management.py
+++ b/neutron/tests/tempest/api/admin/test_agent_management.py
@@ -28,7 +28,6 @@
         body = cls.admin_client.list_agents()
         agents = body['agents']
         cls.agent = agents[0]  # don't modify this agent
-        cls.dyn_agent = agents[1]
 
     @decorators.idempotent_id('9c80f04d-11f3-44a4-8738-ed2f879b0ff4')
     def test_list_agent(self):
@@ -66,20 +65,26 @@
 
     @decorators.idempotent_id('68a94a14-1243-46e6-83bf-157627e31556')
     def test_update_agent_description(self):
+        agents = self.admin_client.list_agents()['agents']
+        try:
+            dyn_agent = agents[1]
+        except IndexError:
+            raise self.skipException("This test requires at least two agents.")
+
         self.useFixture(tempest_fixtures.LockFixture('agent_description'))
         description = 'description for update agent.'
         agent_description = {'description': description}
-        body = self.admin_client.update_agent(agent_id=self.dyn_agent['id'],
+        body = self.admin_client.update_agent(agent_id=dyn_agent['id'],
                                               agent_info=agent_description)
-        self.addCleanup(self._restore_agent)
+        self.addCleanup(self._restore_agent, dyn_agent)
         updated_description = body['agent']['description']
         self.assertEqual(updated_description, description)
 
-    def _restore_agent(self):
+    def _restore_agent(self, dyn_agent):
         """
         Restore the agent description after update test.
         """
-        description = self.dyn_agent['description']
+        description = dyn_agent['description']
         origin_agent = {'description': description}
-        self.admin_client.update_agent(agent_id=self.dyn_agent['id'],
+        self.admin_client.update_agent(agent_id=dyn_agent['id'],
                                        agent_info=origin_agent)