---
# This util can handle 'power on' and 'power off' operations on VMware based virtual machines.
# The parameters required by this util are
#    - ESX IP
#    - ESX root Password
#    - The target virtual machine name
#    - Operation, either 'on' or 'off'
#
- name: Obtain the VM ID
  shell: sshpass -p {{ esx_pwd }} ssh -o StrictHostKeyChecking=no root@{{ esx_ip }} vim-cmd vmsvc/getallvms | awk '{print $1 " " $2}' | grep {{ target_node }} | awk '{print $1}'
  args:
    executable: /bin/bash
  register: id

- name: Perform operation on the target vm
  shell: sshpass -p {{ esx_pwd }} ssh -o StrictHostKeyChecking=no root@{{ esx_ip }} vim-cmd vmsvc/power.{{operation}} {{ id.stdout }}
  args:
    executable: /bin/bash
  register: result
  failed_when: "result.rc != 0"