- for client in self.controller_clients:
- self._ceilometer_apply_patches(client, self.cm_restore_script)
-
- def _ceilometer_apply_patches(self, ssh_client, script_name):
- installer_dir = os.path.dirname(os.path.realpath(__file__))
- script_abs_path = '{0}/{1}/{2}'.format(installer_dir, 'common', script_name)
-
- ssh_client.scp(script_abs_path, script_name)
- cmd = 'sudo python %s' % script_name
- ret, output = ssh_client.ssh(cmd)
- if ret:
- raise Exception('Do the ceilometer command in controller node failed....'
- 'ret=%s, cmd=%s, output=%s' % (ret, cmd, output))
- ssh_client.ssh('sudo systemctl restart openstack-ceilometer-notification.service')
-
+ restore_scripts = [self.cm_restore_script]
+
+ if self.use_containers:
+ restart_cmd = (self._set_docker_restart_cmd(
+ "ceilometer-notification"))
+ restore_scripts.append(self.ac_restore_script)
+ else:
+ restart_cmd = 'sudo systemctl restart' \
+ ' openstack-ceilometer-notification.service'
+
+ if self.conf.test_case != 'fault_management':
+ if self.use_containers:
+ restart_cmd += self._set_docker_restart_cmd("nova-scheduler")
+ else:
+ restart_cmd += ' openstack-nova-scheduler.service'
+ restore_scripts.append(self.nc_restore_compute_script)
+
+ if self.conf.inspector.type == Inspector.CONGRESS:
+ if self.use_containers:
+ restart_cmd += self._set_docker_restart_cmd("congress-server")
+ else:
+ restart_cmd += ' openstack-congress-server.service'
+ restore_scripts.append(self.cg_restore_script)
+
+ for client, node_ip in zip(self.controller_clients, self.controllers):
+ retry = 0
+ while retry < 2:
+ try:
+ self._run_apply_patches(client,
+ restart_cmd,
+ restore_scripts,
+ python=self.python)
+ except Exception:
+ if retry > 0:
+ raise Exception("SSHClient to %s feiled" % node_ip)
+ client = SSHClient(node_ip, self.node_user_name,
+ key_filename=self.key_file)
+ retry += 1
+ break
+ if self.conf.test_case != 'fault_management':
+ if self.use_containers:
+ restart_cmd = self._set_docker_restart_cmd("nova-compute")
+ else:
+ restart_cmd = 'sudo systemctl restart' \
+ ' openstack-nova-compute.service'
+ for client, node_ip in zip(self.compute_clients, self.computes):
+ retry = 0
+ while retry < 2:
+ try:
+ self._run_apply_patches(
+ client, restart_cmd,
+ [self.nc_restore_compute_script],
+ python=self.python)
+ except Exception:
+ if retry > 0:
+ raise Exception("SSHClient to %s feiled" % node_ip)
+ client = SSHClient(node_ip, self.node_user_name,
+ key_filename=self.key_file)
+ retry += 1
+ break