Nailgun does not check nodes roles before the first deployment
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Committed
|
High
|
Georgy Kibardin | ||
Mitaka |
Fix Released
|
High
|
Georgy Kibardin |
Bug Description
It happens because function _check_nodes_roles uses method TaskHelper.
Steps to reproduce:
- create cluster with role 'cinder' on some node;
- define a restriction for role 'cinder', e.g. 'cinder' role should be hidden or disabled according to restriction's condition;
- deploy cluster.
Expected results:
check_
Actual result:
Deployment passed. As a result, we have a cluster with node role that doesn't satisfy roles_metadata.
And further attempts to deploy changes for this cluster will fail with error described in "Expected results" above.
Even if we just add a new node with not-affected role 'compute' and run deploy, function _check_nodes_roles will go through all the nodes and will fail on node that has affected role 'cinder'.
Reproducibility:
100%
Description of the environment:
fuel-web branch is stable/mitaka
Additional information:
commit, where restrictions check was introduced: https:/
commit, where the logic of nodes_to_
Changed in fuel: | |
assignee: | Fuel Sustaining (fuel-sustaining-team) → Georgy Kibardin (gkibardin) |
Changed in fuel: | |
status: | Confirmed → In Progress |
tags: | added: 9.1-proposed |
tags: | added: on-verification |
tags: | removed: on-verification |
tags: | added: on-verification |
tags: |
added: hard-to-verify removed: on-verification |
Let's postpone fixing the bug until end of next week. There is an refactoring in progress in this area that will make the fix easier.