Hi, Any clarification possible on this question?
- Darren On Fri, Jan 6, 2017 at 3:33 PM, Darren S. <[email protected]> wrote: > Greetings, > > Attempting to understand why this difference exists installing a > package on OpenBSD 6.0 using the more general 'package' module vs. the > underlying installer module 'openbsd_pkg'. The package is given in > format supported for recent version of OpenBSD's package tools where > the branch can be specified using a '%' as the delimiter after package > name, hence below I use 'php%5.6' to install the PHP 5.6 branch from > package repo. > > OS: OpenBSD 6.0 amd64 > Python: 2.7.12 cpython > Ansible: 2.2.0.0 > > > Value of variable used in tasks: > > php_ver: "5.6" > > Failure case task: > > - name: install php > package: > name: "{{ item }}" > state: present > with_items: > - "php%{{ php_ver }}" > tags: [httpd, web_stack, php] > > Result: > > TASK [openbsd_httpd : install php] > ********************************************* > > [119/309] > task path: /etc/ansible/roles/openbsd_httpd/tasks/php.yml:3 > Using module file > /usr/local/lib/python2.7/site-packages/ansible/modules/extras/packaging/os/openbsd_pkg.py > <molodetz> ESTABLISH LOCAL CONNECTION FOR USER: dspruell > <molodetz> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo > $HOME/.ansible/tmp/ansible-tmp-1483740555.18-20269133733439 `" && echo > ansible-tmp-1483740555.18-20269133733439="` echo > $HOME/.ansible/tmp/ansible-tmp-1 > 483740555.18-20269133733439 `" ) && sleep 0' > <molodetz> PUT /tmp/tmpKt3WwN TO > /home/dspruell/.ansible/tmp/ansible-tmp-1483740555.18-20269133733439/openbsd_pkg.py > <molodetz> EXEC /bin/sh -c 'chmod u+x > /home/dspruell/.ansible/tmp/ansible-tmp-1483740555.18-20269133733439/ > /home/dspruell/.ansible/tmp/ansible-tmp-1483740555.18-20269133733439/openbsd_pkg.py > && sleep 0' > <molodetz> EXEC /bin/sh -c 'doas -n -u root echo > BECOME-SUCCESS-vuyrqbdqyzccnaxpataiauojdpsybnuw && doas -n -u root > env ANSIBLE=true /usr/local/bin/python > /home/dspruell/.ansible/tmp/ansible-tmp-1483740555 > .18-20269133733439/openbsd_pkg.py; rm -rf > "/home/dspruell/.ansible/tmp/ansible-tmp-1483740555.18-20269133733439/" >> /dev/null 2>&1 && sleep 0' > An exception occurred during task execution. The full traceback is: > Traceback (most recent call last): > File "/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg.py", line 529, > in <module> > main() > File "/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg.py", line 511, in main > (rc, stdout, stderr, changed) = package_present(name, > installed_state, pkg_spec, module) > File "/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg.py", line 180, > in package_present > match = re.search("\W%s-[^:]+: ok\W" % pkg_spec['pkgname'], stdout) > File "/usr/local/lib/python2.7/re.py", line 146, in search > return _compile(pattern, flags).search(string) > File "/usr/local/lib/python2.7/re.py", line 251, in _compile > raise error, v # invalid expression > sre_constants.error: bad character range > > failed: [molodetz] (item=[u'php%5.6']) => { > "failed": true, > "invocation": { > "module_args": { > "name": [ > "php%5.6" > ], > "state": "present" > }, > "module_name": "package" > }, > "item": [ > "php%5.6" > ], > "module_stderr": "Traceback (most recent call last):\n File > \"/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg.py\", line 529, in > <module>\n main()\n File > \"/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg$ > py\", line 511, in main\n (rc, stdout, stderr, changed) = > package_present(name, installed_state, pkg_spec, module)\n File > \"/tmp/ansible_gFhctJ/ansible_module_openbsd_pkg.py\", line 180, in > package_present\$ > match = re.search(\"\\W%s-[^:]+: ok\\W\" % pkg_spec['pkgname'], > stdout)\n File \"/usr/local/lib/python2.7/re.py\", line 146, in > search\n return _compile(pattern, flags).search(string)\n File > \"/usr/loc$ > l/lib/python2.7/re.py\", line 251, in _compile\n raise error, v # > invalid expression\nsre_constants.error: bad character range\n", > "module_stdout": "", > "msg": "MODULE FAILURE" > } > > > Success case task: > > - name: install php > openbsd_pkg: > name: "{{ item }}" > state: present > with_items: > - "php%{{ php_ver }}" > tags: [httpd, web_stack, php] > > Result: > > TASK [openbsd_httpd : install php] > ********************************************* > task path: /etc/ansible/roles/openbsd_httpd/tasks/php.yml:10 > Using module file > /usr/local/lib/python2.7/site-packages/ansible/modules/extras/packaging/os/openbsd_pkg.py > <molodetz> ESTABLISH LOCAL CONNECTION FOR USER: dspruell > <molodetz> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo > $HOME/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090 `" && > echo ansible-tmp-1483740920.56-228683905932090="` echo > $HOME/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090 `" ) && > sleep 0' > <molodetz> PUT /tmp/tmpC7ojNJ TO > /home/dspruell/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090/openbsd_pkg.py > <molodetz> EXEC /bin/sh -c 'chmod u+x > /home/dspruell/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090/ > /home/dspruell/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090/openbsd_pkg.py > && sleep 0' > <molodetz> EXEC /bin/sh -c 'doas -n -u root echo > BECOME-SUCCESS-kvaawdyqduryzxrfqymiuyjlxckasuuy && doas -n -u root > env ANSIBLE=true /usr/local/bin/python > /home/dspruell/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090/openbsd_pkg.py; > rm -rf > "/home/dspruell/.ansible/tmp/ansible-tmp-1483740920.56-228683905932090/" >> /dev/null 2>&1 && sleep 0' > changed: [molodetz] => (item=php%5.6) => { > "build": false, > "changed": true, > "invocation": { > "module_args": { > "build": false, > "name": "php%5.6", > "ports_dir": "/usr/ports", > "state": "present" > }, > "module_name": "openbsd_pkg" > }, > "item": "php%5.6", > "name": "php%5.6", > "state": "present" > } > > > I understand from documentation on the 'package' module that it calls > the underlying OS package module anyway (can see openbsd_pkg.py in > output above) so curious why this fails when using the 'package' > module in the task? > > -- > Darren Spruell > [email protected] -- Darren Spruell [email protected] -- 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/CAKVSOJW-tFf70qJZ-58Q6Bzn2ZxaOZgKZoa%2BR4Wj_KSUVBBU5Q%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
