diff --git a/stress/driver.py b/stress/driver.py
index 9ab6fb8..35004bb 100644
--- a/stress/driver.py
+++ b/stress/driver.py
@@ -180,13 +180,13 @@
     cases = _create_cases(choice_spec)
     state = ClusterState(max_vms=max_vms)
     create_initial_keypairs(manager, state,
-                             int(kwargs.get('initial_keypairs', 0)))
+                            int(kwargs.get('initial_keypairs', 0)))
     create_initial_vms(manager, state,
                        int(kwargs.get('initial_vms', 0)))
     create_initial_floating_ips(manager, state,
                                 int(kwargs.get('initial_floating_ips', 0)))
     create_initial_volumes(manager, state,
-                                int(kwargs.get('initial_volumes', 0)))
+                           int(kwargs.get('initial_volumes', 0)))
     test_end_time = time.time() + duration.seconds
 
     retry_list = []
diff --git a/stress/test_server_actions.py b/stress/test_server_actions.py
index 6b4f462..87b1067 100644
--- a/stress/test_server_actions.py
+++ b/stress/test_server_actions.py
@@ -129,7 +129,7 @@
                 return False
         target = self._target
         self._logger.info('machine %s %s -> ACTIVE [%.1f secs elapsed]' %
-                              (target['id'], reboot_state, self.elapsed()))
+                          (target['id'], reboot_state, self.elapsed()))
         self._state.set_instance_state(target['id'],
                                       (target, 'ACTIVE'))
 
diff --git a/stress/test_servers.py b/stress/test_servers.py
index 57c923a..3075045 100644
--- a/stress/test_servers.py
+++ b/stress/test_servers.py
@@ -123,7 +123,7 @@
             self._state.get_instances()[self._target['id']][1] ==
             'TERMINATING'):
             self._logger.info('machine %s is deleted or TERMINATING' %
-                               self._target['id'])
+                              self._target['id'])
             return True
 
         admin_pass = self._target['adminPass']
@@ -273,7 +273,7 @@
         new_name = update_target['name'] + '_updated'
         (response, body) = \
             manager.servers_client.update_server(update_target['id'],
-                                                    name=new_name)
+                                                 name=new_name)
         if (response.status != 200):
             self._logger.error("response: %s " % response)
             self._logger.error("body: %s " % body)
