Bug 1465590
| Summary: | Embedded ansible role fails to re-initialize after webui update | |||
|---|---|---|---|---|
| Product: | Red Hat CloudForms Management Engine | Reporter: | luke couzens <lcouzens> | |
| Component: | Appliance | Assignee: | Nick Carboni <ncarboni> | |
| Status: | CLOSED CURRENTRELEASE | QA Contact: | luke couzens <lcouzens> | |
| Severity: | high | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 5.8.0 | CC: | abellott, cpelland, jhardy, obarenbo | |
| Target Milestone: | GA | Keywords: | TestOnly, ZStream | |
| Target Release: | 5.9.0 | |||
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ansible_embed:black | |||
| Fixed In Version: | 5.9.0.1 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 1466855 (view as bug list) | Environment: | ||
| Last Closed: | 2018-03-06 14:48:29 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | CFME Core | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 1466855 | |||
|
Description
luke couzens
2017-06-27 17:18:25 UTC
So this is happening because we need to run the ansible-tower setup playbook when they change versions.
This is evidenced by the following error in the /var/log/supervisor/awx-daphne.log:
2017-06-29 15:08:38,089 ERROR Missing or incorrect metadata for Tower version. Ensure Tower was installed using the setup playbook.
Traceback (most recent call last):
File "/var/lib/awx/venv/tower/bin/daphne", line 9, in <module>
load_entry_point('daphne==0.15.0', 'console_scripts', 'daphne')()
File "/var/lib/awx/venv/tower/lib/python2.7/site-packages/daphne/cli.py", line 105, in entrypoint
cls().run(sys.argv[1:])
File "/var/lib/awx/venv/tower/lib/python2.7/site-packages/daphne/cli.py", line 135, in run
channel_layer = importlib.import_module(module_path)
File "/usr/lib64/python2.7/importlib/__init__.py", line 37, in import_module
__import__(name)
File "/lib/python2.7/site-packages/awx/asgi.py", line 31, in <module>
Exception: Missing or incorrect metadata for Tower version. Ensure Tower was installed using the setup playbook.
We removed that from the worker startup in https://github.com/ManageIQ/manageiq/pull/15225 as a fix for bug 1455063
This is being raised because the installed version does not match the contents of the /var/lib/awx/.tower_version file.
My proposed fix is to implement a similar check in our code which will result in us running the setup playbook rather than starting the services directly.
New commit detected on ManageIQ/manageiq/master: https://github.com/ManageIQ/manageiq/commit/72320a3dfffb2196541b90d720d811f2c706f00f commit 72320a3dfffb2196541b90d720d811f2c706f00f Author: Nick Carboni <ncarboni> AuthorDate: Thu Jun 29 17:23:21 2017 -0400 Commit: Nick Carboni <ncarboni> CommitDate: Thu Jun 29 17:23:21 2017 -0400 Run the setup playbook if we see that an upgrade has happened The playbook needs to run on upgrades and ansible tower will refuse to start if it isn't. https://bugzilla.redhat.com/show_bug.cgi?id=1465590 lib/embedded_ansible.rb | 17 ++++++++++++++++- spec/lib/embedded_ansible_spec.rb | 34 +++++++++++++++++++++++++++++++++- 2 files changed, 49 insertions(+), 2 deletions(-) Verified in 5.9.0.11 |