I'm trying to get a Red Hat server (RHEL7) to join a Windows Active 
Directory domain and I can't seem to get the expect command to send a 
password.

The playbook asks for the username and password and should then put the 
username at the end of the adcl command
    adcli join example.com -U administratorName
This returns a prompt of  
    Password for administratorn...@example.com: 
The expect portion 'should'  see this and send the password
The ansible example is here    
 https://docs.ansible.com/ansible/latest/modules/shell_module.html#shell-module 
 
   (# You can use shell to run other executables to perform actions inline)

I've added -v to the adcli command to try and check whats happening, but it 
didn't really shed any light.
Neither did ansible-playbook -vvv filename.yml, but maybe I just can't read 
it well. 
The example below has example.com instead of my actual domain but otherwise 
is identical.
Does anyone have any suggestions on why the expect/send portion isn't 
working?:

---
 - hosts: 127.0.0.1
   vars_prompt:
     - name: username
       prompt: "What is your Active Directory administrator username?"
       private: no
      
     - name: password
       prompt: "What is your administrator password?"
       private: yes    
       
   tasks:
    - name: join the domain
      shell: | 
        set timeout 300
        spawn /usr/sbin/adcli -v join example.com -U {{username}}
        expect "Password for {{username}}@EXAMPLE.COM: "  
        send "{{password}}\r"
        interact
        exit 0
      args:
        executable: /usr/bin/expect
      delegate_to: localhost



-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to ansible-project+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/578468a1-77aa-482e-be9f-9220a36b1e33%40googlegroups.com.

Reply via email to