Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 1510722

Summary: "undercloud fits the disk space requirements to perform an upgrade" validation did not run on any host
Product: Red Hat OpenStack Reporter: Ola Pavlenko <opavlenk>
Component: openstack-tripleo-validationsAssignee: Ana Krivokapic <akrivoka>
Status: CLOSED WORKSFORME QA Contact: nlevinki <nlevinki>
Severity: high Docs Contact:
Priority: high    
Version: 12.0 (Pike)CC: akrivoka, beth.white, gchamoul, jjoyce, jschluet, slinaber, tvignaud
Target Milestone: ---Keywords: TestBlocker, Triaged
Target Release: 12.0 (Pike)   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-11-10 22:47:29 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1368512    

Comment 1 Ola Pavlenko 2017-11-08 05:29:42 UTC
same behavior for undercloud fits the RAM requirements validation

from mistral/executor.log for ram validation:
2017-11-08 07:21:42.345 29288 INFO mistral.executors.executor_server [req-71273400-c8ff-428b-8bb8-9a8699eea097 b62ffe674e4645cd949aedc88bb14a70 e9ec4e74174f42f384e27ac643e0eb32 - - -] Received RPC request 'run_action'[action_ex_id=c308f8e6-c803-4a8c-9645-2d26a2ddb84c, action_cls_str=tripleo_common.actions.validations.RunValidationAction, action_cls_attrs={}, params={validation: undercloud-ram, plan: overcloud}]
2017-11-08 07:21:50.639 29288 INFO mistral.executors.executor_server [req-2e8ff6ca-c7cc-4dea-aa94-9137c82ae506 b62ffe674e4645cd949aedc88bb14a70 e9ec4e74174f42f384e27ac643e0eb32 - default default] Received RPC request 'run_action'[action_ex_id=cc9ae679-49ca-47a4-bf8b-711f4839c8f5, action_cls_str=mistral.actions.openstack.actions.ZaqarAction, action_cls_attrs={u'client_method_name': u'queue_post'}, params={queue_name: tripleo, messages: {u'body': {u'type': u'tripleo.validations.v1.run_validation', u'payload': {u'status': u'SUCCESS', u'stdout': u'Warning! The validation did not run on any host.\n', u'plan': u'overcloud', u'stderr': u'[DEPRECATION WARNING]: DEFAULT_SUDO_FLAGS option, In favor of become which is a\n generic framework . This feature will be removed in version 2.8. Deprecation \nwarnings can be disabled by setting deprecation_warnings=False in ansible.cfg.\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with script\nplugin: Inventory script (/bin/tripleo-ansible-inventory) had an execution\nerror: Error creating inventory: \'NoneType\' object is not iterable\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with yaml plugin:\nSyntax Error while loading YAML.   The error appears to have been in \'/bin\n/tripleo-ansible-inventory\': line 54, column 20, but may be elsewhere in the\nfile depending on the exact syntax problem.  The offending line appears to be:\ndef _parse_config():                    ^ here  exception type: <class\n\'yaml.scanner.ScannerError\'> exception: mapping values are not allowed in this\ncontext   in "<unicode string>", line 54, column 20\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with ini plugin:\n/bin/tripleo-ansible-inventory:22: Expected key=value host variable assignment,\ngot: __future__\n [WARNING]: Unable to parse /bin/tripleo-ansible-inventory as an inventory\nsource\n [WARNING]: No inventory was parsed, only implicit localhost is available\n [WARNING]: Could not match supplied host pattern, ignoring: all\n [WARNING]: provided hosts list is empty, only localhost is available\n [WARNING]: Could not match supplied host pattern, ignoring: undercloud\n', u'validation_name': u'undercloud-ram', u'execution': {u'name': u'tripleo.validations.v1.run_validation', u'created_at': u'2017-11-08 05:21:41', u'id': u'7a2cfbf7-89bb-45a4-81a2-50334a8c4b2b', u'params': {u'namespace': u''}, u'input': {u'validation_name': u'undercloud-ram', u'queue_name': u'tripleo', u'plan': u'overcloud'}, u'spec': {u'input': [u'validation_name', {u'plan': u'overcloud'}, {u'queue_name': u'tripleo'}], u'tasks': {u'run_validation': {u'name': u'run_validation', u'on-error': u'set_status_failed', u'on-success': u'send_message', u'publish': {u'status': u'SUCCESS', u'stderr': u'<% task(run_validation).result.stderr %>', u'stdout': u'<% task(run_validation).result.stdout %>'}, u'version': u'2.0', u'action': u'tripleo.validations.run_validation validation=<% $.validation_name %> plan=<% $.plan %>', u'type': u'direct'}, u'send_message': {u'retry': u'count=5 delay=1', u'name': u'send_message', u'on-success': [{u'fail': u'<% $.get(\'status\') = "FAILED" %>'}], u'version': u'2.0', u'action': u'zaqar.queue_post', u'input': {u'queue_name': u'<% $.queue_name %>', u'messages': {u'body': {u'type': u'tripleo.validations.v1.run_validation', u'payload': {u'status': u"<% $.get('status', 'SUCCESS') %>", u'stdout': u'<% $.stdout %>', u'plan': u'<% $.plan %>', u'stderr': u'<% $.stderr %>', u'validation_name': u'<% $.validation_name %>', u'execution': u'<% execution() %>'}}}}, u'type': u'direct'}, u'notify_running': {u'retry': u'count=5 delay=1', u'name': u'notify_running', u'version': u'2.0', u'action': u'zaqar.queue_post', u'input': {u'queue_name': u'<% $.queue_name %>', u'messages': {u'body': {u'type': u'tripleo.validations.v1.run_validation', u'payload': {u'status': u'RUNNING', u'validation_name': u'<% $.validation_name %>', u'execution': u'<% execution() %>', u'plan': u'<% $.plan %>'}}}}, u'on-complete': u'run_validation', u'type': u'direct'}, u'set_status_failed': {u'on-complete': u'send_message', u'version': u'2.0', u'type': u'direct', u'name': u'set_status_failed', u'publish': {u'status': u'FAILED', u'stderr': u'<% task(run_validation).result.stderr %>', u'stdout': u'<% task(run_validation).result.stdout %>'}}}, u'name': u'run_validation', u'version': u'2.0', u'tags': [u'tripleo-common-managed']}}}}}...]




and for disk space prior upgrade:

2017-11-08 07:02:02.982 29288 INFO mistral.executors.executor_server [req-ec78d584-d7d7-4135-974b-8861e248949f b62ffe674e4645cd949aedc88bb14a70 e9ec4e74174f42f384e27ac643e0eb32 - - -] Received RPC request 'run_action'[action_ex_id=f07f4449-9a90-4b98-8dde-5cdde7f0430d, action_cls_str=tripleo_common.actions.logging_to_swift.PublishUILogToSwiftAction, action_cls_attrs={}, params={logging_data: 2017-11-08 04:12:14 info ["action", {"type": "ADD_WORKFLOW_EXECUTION", "payload": {"workflow_name": "tripleo.validations.v1.run_validation", "state": "SUCCESS", "params": {"namespace": ""}, "output": {"status": "SUCCESS", "validation_name": "undercloud-disk-space-pre-upgrade", "plan": "overcloud", "stderr": "[DEPRECATION WARNING]: DEFAULT_SUDO_FLAGS option, In favor of become which is a\n generic framework . This feature will be removed in version 2.8. Deprecation \nwarnings can be disabled by setting deprecation_warnings=False in ansible.cfg.\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with script\nplugin: Inventory script (/bin/tripleo-ansible-inventory) had an execution\nerror: Error creating inventory: 'NoneType' object is not iterable\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with yaml plugin:\nSyntax Error while loading YAML.   The error appears to have been in '/bin\n/tripleo-ansible-inventory': line 54, column 20, but may be elsewhere in the\nfile depending on the exact syntax problem.  The offending line appears to be:\ndef _parse_config():                    ^ here  exception type: <class\n'yaml.scanner.ScannerError'> exception: mapping values are not allowed in this\ncontext   in \"<unicode string>\", line 54, column 20\n [WARNING]:  * Failed to parse /bin/tripleo-ansible-inventory with ini plugin:\n/bin/tripleo-ansible-inventory:22: Expected key=value host variable assignment,\ngot: __future__\n [WARNING]: Unable to parse /bin/tripleo-ansible-inventory as an inventory\nsource\n [WARNING]: No inventory was parsed, only implicit localhost is available\n [WARNING]: Could not match supplied host pattern, ignoring: all\n [WARNING]: provided hosts list is empty, only localhost is available\n[DEPRECATION WARNING]: The use of 'include' for tasks has been deprecated. Use \n'import_tasks' for static inclusions or 'include_tasks' for dynamic inclusions.\n This feature will be removed in a future release. Deprecation warnings can be \ndisabled by setting deprecation_warnings=False in ansible.cfg.\n[DEPRECATION WARNING]: include is kept for backwards compatibility but usage is\n discouraged. The module documentation details page may explain more about this\n rationale.. This feature will be removed in a future release. Deprecation \nwarnings can be disabled by setting deprecation_warnings=False in ansible.cfg.\n [WARNING]: Could not match supplied host pattern, ignoring: undercloud\n", "stdout": "Warning! The validation did not run on any host.\n"}, "input": {"validation_name": "undercloud-disk-space-pre-upgrade", "queue_name": "tripleo", "plan": "overcloud"}, "id": "97f51a6c-0f3a-4530-880f-3213b464fe7f"}}]

Comment 2 Gaƫl Chamoulaud 2017-11-09 10:19:17 UTC
Looks like something going wrong with the tripleo-ansible-inventory script which could be caused by the failed overcloud deployment.

Comment 4 Ana Krivokapic 2017-11-10 22:47:29 UTC
I tried to reproduce this on two separate setups and couldn't. Closing the bug but please feel free to reopen if it actually reproduces. Also please note that if this only reproduces on failed deployments, it isn't actually a (test)blocker.