title: Ansible- expect module for the Windows host
body: <p>I was using ansible to configure the remote Windows host. I tried to configure a VSTS agent through ansible and during this setup there are some prompts that should be  responded .  I found a command called 'expect' for doing it and my playbook is given below.</p>
  
  <pre><code>---
  - hosts: windows
    tasks:
    - name: unarchive
      win_unzip:
        dest='C:\\agent1'
        src='C:\\devops\\agent.zip'
    - name: Configure Agnt
      expect:
         chdir: 'C:\\agent1'
         command: 'ConfigureAgent.cmd'
         echo: true
         responses:
           Accept the License: "Y"
           Enter the name for this agent (default is Agent-WindowsAgent): 'windowagent'
           Enter the URL for the Team Foundation Server: 'http://tfs.test.com:8080/tfs/testCollection$
           Configure this agent against which agent pool: 'testpool'
           Enter the path of the work folder for this agent: 'C:\\agent1\\_work'
  </code></pre>
  
  <p>But i am getting  an error as given below.</p>
  
  <pre><code> [WARNING]: No python interpreters found for host 52.230.224.117 (tried
   ['/usr/bin/python', 'python3.7', 'python3.6', 'python3.5', 'python2.7',
   'python2.6', '/usr/libexec/platform-python', '/usr/bin/python3', 'python'])
  
   fatal: [52.230.224.117]: FAILED! =&gt; {
  "ansible_facts": {
      "discovered_interpreter_python": "/usr/bin/python"
  },
  "changed": false,
  "module_stderr": "Exception calling \"Create\" with \"1\" argument(s): \"At line:4 char:21\r\n+ def _ansiballz_main():\r\n+                     ~\r\nAn expression was expected after '('.\r\nAt line:13 char:27\r\n+     except (AttributeError, OSError):\r\n+                           ~\r\nMissing argument in parameter list.\r\nAt line:15 char:7\r\n+     if scriptdir is not None:\r\n+       ~\r\nMissing '(' after 'if' in if statement.\r\nAt line:22 char:7\r\n+     if sys.version_info &lt; (3,):\r\n+       ~\r\nMissing '(' after 'if' in if statement.\r\nAt line:22 char:30\r\n+     if sys.version_info &lt; (3,):\r\n+                              ~\r\nMissing expression after ','.\r\nAt line:22 char:25\r\n+     if sys.version_info &lt; (3,):\r\n+                         ~\r\nThe '&lt;' operator is reserved for future use.\r\nAt line:24 char:32\r\n+         MOD_DESC = ('.py', 'U', imp.PY_SOURCE)\r\n+                                ~\r\nMissing expression after ','.\r\nAt line:24 char:33\r\n+         MOD_DESC = ('.py', 'U', imp.PY_SOURCE)\r\n+                                 ~~~~~~~~~~~~~\r\nUnexpected token 'imp.PY_SOURCE' in expression or statement.\r\nAt line:24 char:32\r\n+         MOD_DESC = ('.py', 'U', imp.PY_SOURCE)\r\n+                                ~\r\nMissing closing ')' in expression.\r\nAt line:24 char:46\r\n+         MOD_DESC = ('.py', 'U', imp.PY_SOURCE)\r\n+                                              ~\r\nUnexpected token ')' in expression or statement.\r\nNot all parse errors were reported.  Correct the reported errors and try again.\"\r\nAt line:6 char:1\r\n+ $exec_wrapper = [ScriptBlock]::Create($split_parts[0])\r\n+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\r\n    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException\r\n    + FullyQualifiedErrorId : ParseException\r\n \r\nThe expression after '&amp;' in a pipeline element produced an object that was not valid. It must result in a command \r\nname, a script block, or a CommandInfo object.\r\nAt line:7 char:2\r\n+ &amp;$exec_wrapper\r\n+  ~~~~~~~~~~~~~\r\n    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException\r\n    + FullyQualifiedErrorId : BadExpression\r\n ",
  "module_stdout": "",
  "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
  "rc": 1
  </code></pre>
  
  <p>The 'expect' module is not given in this list <a href="https://docs.ansible.com/ansible/latest/modules/list_of_windows_modules.html" rel="noreferrer">https://docs.ansible.com/ansible/latest/modules/list_of_windows_modules.html</a></p>
  
  <p>So my question is does expect command available for Windows host also?? If not what is the equivalent command for this purpose??</p>