Thanks for the info On Thursday, December 8, 2022 at 12:49:54 PM UTC+11 [email protected] wrote:
> After some digging today, I see that Ansible's expect module is actually a > hook into the relatively limited python pexpect module, which itself > doesn't support the additional features you need. > > However, the doc for Ansible's shell module includes an example of calling > the "real" expect, and *that* lets you do lots of things, like "sleep 5". > There's also "-s" (slow mode) and "-h" (slow like a human mode). I > *expect* (ahem) that would be a better place to spend your time. > > > On 12/7/22 5:59 AM, Todd Lewis wrote: > > In that case, you should start with the existing expect module and add the > desired delay functionality. That would be far simpler than creating a > worthwhile module from scratch. And you could contribute your changes so we > would all benefit from your efforts. > > As for the different login scenarios, that's a challenge I'm sure someone > has risen to before. I still think expect is your best choice. > > On 12/6/22 10:58 PM, Phillip Wu wrote: > > Thanks to All! > > Yes you're right...I have been using Expect part of Ansible to > interact with IRIS on the remote host previously. > > However there is a timing problem sometimes and with the Expect module of > Ansible you cannot change the delay before sending as far as I can see. > > Also in my case sometimes some of my IRIS servers ask me to sign in and > some use OS authentication and Ansible Expect gets rather difficult when > it's conversation changes > > If anyone is interested when using module you do not need to ssh into the > remote host as this is done for you without adding any configuration or > code changes > > On Wed, Dec 7, 2022 at 4:23 AM Todd Lewis <[email protected]> wrote: > >> I was hoping someone with IRIS DB experience in Ansible would answer by >> now, because I don't want to mislead you. However, it looks to me like >> everything you're doing below could be done through the "expect" module. >> -- >> Todd >> >> On 12/5/22 5:48 PM, phillip.from.oz wrote: >> >> Thanks to all. >> >> This is what I'm doing: >> Playbook: >> --- >> - name: Connect to remote IRIS DB >> hosts: localhost >> tasks: >> - name: using my custom module >> IRIS: <-- New Module >> name: superuser >> password: secret >> instance: SCR >> namespace: WORK >> commands: >> - w !,”Hello” >> - w !,”World” >> register: result >> - name: show output >> debug: >> var: result >> >> This is the logic: >> ssh localhost >> iris session “{{instance}}” -U "{{namespace}}" <- connecting to IRIS DB >> username: "{{name}}" <- send >> variable name when username prompt >> password: "{{password}}" < - send >> variable password when password prompt >> >“{{commands[0]}}” < - send >> variable command when > prompt >> >“{{commands[1]}}” >> H >> >> >> >> >> On Monday, December 5, 2022 at 10:47:21 PM UTC+11 Michael Ströder wrote: >> >>> On 12/5/22 09:23, phillip.from.oz wrote: >>> > When writing Ansible custom module, how is the code (python) connect >>> to >>> > the remote host? >>> > >>> > Is it the code of the Ansible custom module responsible for ssh to the >>> > remote host? >>> >>> No, for most modules. >>> >>> I'd recommend that you describe what you're trying to achieve. >>> >>> Ciao, Michael. >> >> > -- 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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/e010cb18-9a9a-47e9-967c-1660aae14b5en%40googlegroups.com.
