I would prefer to not use the shell module, thats why Im asking if anyone has any other way around it.
Thanks, On Wednesday, 13 December 2017 20:27:16 UTC-5, Toshio Kuratomi wrote: > > If you don't need idempotence (I assume you don't since the shell module > doesn't have idempotence either) I'd use the script module with your > existing bash script. > > -toshio > > On Dec 13, 2017 7:39 AM, "Justin Seiser" <[email protected] > <javascript:>> wrote: > >> I see there was a feature >> <https://github.com/ansible/ansible/issues/24278> request for this, but >> they do not note how they actually worked around it. In a nutshell, we >> download a groovy archive, unzip it, and create slaves for every file in >> the archive that is not the groovy executable, and doesnt end with .bat. We >> then do a update-alternatives for groovy. >> >> >> >> GROOVY_ALT_SLAVES="" >> for f in $(ls /opt/groovy-${GROOVY_VERSION}/bin | fgrep -v .bat | >> grep -v '^groovy$'); do >> GROOVY_ALT_SLAVES=" ${GROOVY_ALT_SLAVES} --slave /usr/bin/${f} >> ${f} /opt/groovy-${GROOVY_VERSION}/bin/${f}" >> done >> >> update-alternatives --install /usr/bin/groovy groovy >> /opt/groovy-${GROOVY_VERSION}/bin/groovy 2000 ${GROOVY_ALT_SLAVES} >> update-alternatives --set groovy >> /opt/groovy-${GROOVY_VERSION}/bin/groovy >> >> I cant really wrap my head around the best way to dupe this, that isnt >> just running the shell module. Once I resigned myself to using the shell >> module, I then read that doing something like >> >> >> - shell: GROOVY_ALT_SLAVES=" ${GROOVY_ALT_SLAVES} --slave /usr/bin/{{ item >> }} {{ item }} /opt/groovy-{{ groovy_version }}/bin/{{ item }}" >> with_items: ['file1', 'file2'] >> >> >> >> >> Wouldn't work, since each shell run is a separate connection, so Im not >> really building up a long string to then append to the update-alternatives >> command. There is also the fact I have to manually specify a list of >> items, since I cant use glob because i need to match files that do not >> match a certain set of expressions. >> >> >> Im sure Im missing something obvious, but I haven't made any progress on >> this one and any help would be great. >> >> -- >> 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] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/ansible-project/155465dd-7461-486c-9351-5a386c6c5f15%40googlegroups.com >> >> <https://groups.google.com/d/msgid/ansible-project/155465dd-7461-486c-9351-5a386c6c5f15%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> For more options, visit https://groups.google.com/d/optout. >> > -- 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 post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/3d36cfcd-1621-4755-8d7c-12220992070f%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
