title: ansible "unarchive" module is not working as expected
body: <p>my aim is that extract the .zip file in the controller to the specific folder in application servers (because i have another script with this path specified for calling the package).</p>
  
  <p>i was trying for 2 conditions </p>
  
  <p>1)  check the target servers directory present or not (eg: /opt/mypack). if it present skip else create directory.</p>
  
  <p>2) check the above directory already have the extracted file or not. if no extract, if yes skip extract.</p>
  
  <p>I tried with below playbook where i want to extract 2 .zip packages to all target servers specific location (/opt/mypack and /opt/mypack2)</p>
  
  <pre><code> ---
  
     - name: Extract CLM-Web Package into /opt/mypack
       hosts: localhost,IHS,CCM,RM
       vars:
         source_dir: /etc/ansible/roles/IBM2/files/mypack.zip
         dest_dir: /opt/mypack
       tasks:
         - name: check the folder existance
           stat: path=/opt/mypack
           register: folder_exist
  
         - name: create directory
           command: mkdir /opt/mypack
           when: folder_exist.stat.exists == False
  
         - name: extract the .zip file
           unarchive:
             src: "{{ source_dir }}"
             dest: "{{ dest_dir }}/"
           when: folder_exist.stat.exists == True
  
      - name: Extract CLM Installation Package to /opt/mypack
        hosts: localhost,CCM,RM
        vars:
          source_dir: /etc/ansible/roles/IBM2/files/mypack2.zip
           dest_dir: /opt/mypack2
        tasks:
          - name: check the folder existance
            stat: path=/opt/mypack2
            register: folder_exist
  
         - name: create directory
           command: mkdir /opt/mypack2
           When: folder_exist.stat.exists == False
  
         - name: extract the .zip file
           unarchive:
              src: "{{ source_dir }}"
              dest: "{{ dest_dir }}/"
           when: folder_exist.stat.exists == True
  </code></pre>