def rabbit_unit_status(unit): cmd = 'rabbitmqctl -q cluster_status' output = juju_utils.remote_run(unit, remote_cmd=cmd) output = output.replace('\n', '') matchObj = re.search(r'running_nodes,(.*)}, {partitions', output) machine_numbers = [] for machine in ast.literal_eval(matchObj.group(1)): machine_numbers.append(int(machine.split('-')[-1])) return machine_numbers
def main(argv): # Mount the storage volume juju_utils.remote_run( 'gluster/0', remote_cmd=('mkdir /mnt/gluster && mount -t glusterfs localhost:test ' '/mnt/gluster')) juju_utils.remote_run( 'gluster/1', remote_cmd=('mkdir /mnt/gluster && mount -t glusterfs localhost:test ' '/mnt/gluster')) juju_utils.remote_run( 'gluster/2', remote_cmd=('mkdir /mnt/gluster && mount -t glusterfs localhost:test ' '/mnt/gluster')) # Check juju_utils.remote_run( 'gluster/0', remote_cmd='echo 123456789 > /mnt/gluster/test_input') # Check output = juju_utils.remote_run( 'gluster/1', remote_cmd='cat /mnt/gluster/test_input') # Cleanup juju_utils.remote_run( 'gluster/2', remote_cmd='rm /mnt/gluster/test_input') if output.strip() != "123456789": sys.exit(1)
def remote_runs(units): for unit in units: if not juju_utils.remote_run(unit, remote_cmd='uname -a'): raise Exception('Juju run failed on ' + unit)