Is it just a question of how I frame my inputs or am I missing the point here completely?
I've tried the likes of below but still the same error - name: Setup postcodesiodb expect: echo: yes chdir: "/apps/was/postcodes.io" command: npm run setup timeout: "10" responses: Question: - '[ postgres ]' - '[ postcodesio ]' - '[ secret ]' - '[ localhost ]' - '[ postcodesiodb ]' - '[ 5432 ]' tags: - setup - install - test Error: "Postgresql Superuser (for database creation) [default: postgres]:"]} I am struggling to find any other working solutions for ansible to manage an interactive script such as this so any help much appreciated. On Tuesday, August 25, 2020 at 10:52:44 PM UTC+1 jonin wrote: > Thanks Karol, > > I've given that a go. Initially wasn't working because I didn't have the > pexpect module installed but I think I have that sorted with the > following dependencies installed now: epel, pip and pexpect > version 3.3. > > I have tried running this task but it just hangs for the entire timeout > duration I have set. > > - name: Setup postcodesiodb > expect: > echo: yes > chdir: "/apps/was/postcodes.io" > command: npm run setup > timeout: "10" > responses: > Question: > - > Postgresql Superuser (for database creation) [default':' postgres]: > "postgres" > - > New Database Username (for readonly access) [default':' postcodesio]: > "postcodesio" > - Password for new user [default':' secret]: "secret" > - Postgresql Host [default':' localhost]: "localhost" > - Database Name [default':' postcodesiodb]: "postcodesiodb" > - Postgresql Port [default':' 5432]: "5432" > tags: > - setup > - install > > I have also tried with no space after the final colon but that then > changes the font to all orange which doesn't seem right. Regardless, i > tried it but the error was still exactly the same as below: > > > Fatal: [hostname]: FAILED! => {"changed": true, "cmd": "npm run setup", > "delta": "0:02:00.145566", "end": "2020-08-25 21:33:22.107526", "msg": > "command exceeded timeout", "rc": null, "start": "2020-08-25 > 21:31:21.961960", > ... > "Postgresql Superuser (for database creation) [default: postgres]:"]} > > This is the only error logging I have but it's failed at the first input I > am attempting to populate here the postgres Super user. Any ideas how I > need to pass in these answers and or variables if I don't want to hard > code? Currently it looks like it is picking up a corrupt / blank value as > shown by those chatacters in the green section below. > "Postgresql Superuser (for database creation) [default: postgres]:"]} > > The wording / syntax of the questions when the script is called is exactly > like this: > Postgresql Superuser (for database creation) [default: postgres]: > > Any ideas much appreciated. > > Regards, > > S > > > > On Mon, Aug 24, 2020 at 5:34 PM Karol Czeryna <cze...@gmail.com> wrote: > >> Hi, >> >> I think you can use >> https://docs.ansible.com/ansible/latest/modules/expect_module.html >> >> Best, >> Karol >> >> >> > On 24 Aug 2020, at 5:30 pm, jonin <sebastia...@gmail.com> wrote: >> > >> > Hi, >> > >> > I am looking to automate this task within ansible and have no idea >> really how to do this. >> > >> > I run the set up script manually on the host(s) like this: >> > >> > I call the "setup" script below with npm run options: >> > >> > npm run setup >> > >> > The script then prompts for my user input to provide the following >> details: >> > >> > • Postgresql Superuser (for database creation) [default: >> postgres]:postgres >> > • New Database Username (for readonly access) [default: >> postcodesio]:postcodesio >> > • Password for new user [default: secret]:secret >> > • Postgresql Host [default: localhost]:localhost >> > • Database Name [default: postcodesiodb]:postcodesiodb >> > • Postgresql Port: [default: 5432]:5432 >> > Once these have been provided the script completes. Pleas help in >> advising how I can go about automating this in ansible. >> > >> > Thanks >> > >> > -- >> > You received this message because you are subscribed to the Google >> Groups "Ansible Development" group. >> > To unsubscribe from this group and stop receiving emails from it, send >> an email to ansible-deve...@googlegroups.com. >> > To view this discussion on the web visit >> https://groups.google.com/d/msgid/ansible-devel/07433108-d97b-40e6-b86d-be046df06346n%40googlegroups.com >> . >> >> -- You received this message because you are subscribed to the Google Groups "Ansible Development" group. To unsubscribe from this group and stop receiving emails from it, send an email to ansible-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-devel/f9311a84-81a6-49db-8624-5327c898af83n%40googlegroups.com.