Node assignment always updates the 'overcloud' node count, no matter the current plan

Bug #1642342 reported by Julie Pichon on 2016-11-16
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
tripleo
High
Julie Pichon

Bug Description

When I try to assign nodes on a non-default plan, the profile gets added to the node correctly but the node count wrongly gets updated for the 'overcloud' default plan, *not* the plan currently activated.

The deployment may still succeed but only the default of 1 controller and 1 compute will ever be deployed for non-default plans. This may also cause issues later on if people use the CLI to scale up/down the default plan.

Steps to reproduce:
-------------------
1. Create a new plan, e.g. test
2. Click on the new plan to "activate" it and got to the "Deployment Plan" page
3. On the CLI, look at the mistral environments for both 'overcloud' and 'test', confirm nothing is set in the parameters_defaults ($ mistral environment-get <plan_name>)
4. On the UI, assign a node to 'Ceph storage'

Expected result:
---------------
5. The CephStorageCount for 'test' got updated in the Mistral environment.

Actual result:
--------------
5. The CephStorageCount for 'overcloud' was updated to 1, the 'test' environment didn't change.

Workaround
----------
On the deployment page in the UI, editing the overall Deployment Configuration and navigating to the Parameters, it is possible to manually update the node count for the main roles (CephStoragecCount, ControllerCount, etc).

Additional information
----------------------
Possibly related to the node assignment/tagging splitting (bug 1640103) though it'd be good to get a band-aid for this.

Julie Pichon (jpichon) on 2016-11-16
summary: - Node assignment always updates the 'overcloud' node count
+ Node assignment always updates the 'overcloud' node count, no matter the
+ current plan
Julie Pichon (jpichon) on 2016-11-16
tags: added: newton-backport-potential
Julie Pichon (jpichon) on 2016-11-16
description: updated
Jiri Tomasek (jtomasek) wrote :

Error happens because container (plan) is not passed here https://github.com/openstack/tripleo-common/blob/master/workbooks/baremetal.yaml#L481

UpdateRoleParametersAction then calls super -> UpdateParametersAction without container specified so it uses default one https://github.com/openstack/tripleo-common/blob/master/tripleo_common/actions/parameters.py#L101

Julie Pichon (jpichon) on 2016-11-17
Changed in tripleo:
assignee: nobody → Julie Pichon (jpichon)

Fix proposed to branch: master
Review: https://review.openstack.org/398967

Changed in tripleo:
status: Triaged → In Progress

Reviewed: https://review.openstack.org/398967
Committed: https://git.openstack.org/cgit/openstack/tripleo-common/commit/?id=bdef2f7ee9a753091978c247b4085d5615712881
Submitter: Jenkins
Branch: master

commit bdef2f7ee9a753091978c247b4085d5615712881
Author: Julie Pichon <email address hidden>
Date: Thu Nov 17 12:01:08 2016 +0000

    Pass the plan name when tagging nodes

    Right now, tagging a node also updates the number of nodes assigned to
    that role. However because the plan/container name wasn't being passed,
    only the Mistral environment for the default 'overcloud' plan would
    ever be updated with these new values, sometimes mistakenly.

    Change-Id: Ifaeb9df96dbd7ca6a5553ecdc22c6ab8c56b7365
    Partial-Bug: #1642342

Reviewed: https://review.openstack.org/400263
Committed: https://git.openstack.org/cgit/openstack/tripleo-common/commit/?id=20bb19dcd7dec07c8d03e14df6097a9881b08bee
Submitter: Jenkins
Branch: stable/newton

commit 20bb19dcd7dec07c8d03e14df6097a9881b08bee
Author: Julie Pichon <email address hidden>
Date: Thu Nov 17 12:01:08 2016 +0000

    Pass the plan name when tagging nodes

    Right now, tagging a node also updates the number of nodes assigned to
    that role. However because the plan/container name wasn't being passed,
    only the Mistral environment for the default 'overcloud' plan would
    ever be updated with these new values, sometimes mistakenly.

    Change-Id: Ifaeb9df96dbd7ca6a5553ecdc22c6ab8c56b7365
    Partial-Bug: #1642342
    (cherry picked from commit bdef2f7ee9a753091978c247b4085d5615712881)

tags: added: in-stable-newton
Changed in tripleo:
status: In Progress → Fix Released

Reviewed: https://review.openstack.org/398979
Committed: https://git.openstack.org/cgit/openstack/tripleo-ui/commit/?id=93d2e6beb55b15a2658ac52eb57fe306bdbe77b0
Submitter: Jenkins
Branch: master

commit 93d2e6beb55b15a2658ac52eb57fe306bdbe77b0
Author: Julie Pichon <email address hidden>
Date: Thu Nov 17 12:21:32 2016 +0000

    Include the plan name on node assignment

    Only the 'overcloud' default plan node counts would get updated
    otherwise.

    Change-Id: Ib497e0c6258befdd8734019fa0d8354ff9d6d56c
    Depends-On: Ifaeb9df96dbd7ca6a5553ecdc22c6ab8c56b7365
    Closes-Bug: #1642342

Reviewed: https://review.openstack.org/400949
Committed: https://git.openstack.org/cgit/openstack/tripleo-ui/commit/?id=774ea30decf28f15964aaef16169549594018cab
Submitter: Jenkins
Branch: stable/newton

commit 774ea30decf28f15964aaef16169549594018cab
Author: Julie Pichon <email address hidden>
Date: Thu Nov 17 12:21:32 2016 +0000

    Include the plan name on node assignment

    Only the 'overcloud' default plan node counts would get updated
    otherwise.

    Conflicts:
     src/js/actions/NodesActions.js

    Change-Id: Ib497e0c6258befdd8734019fa0d8354ff9d6d56c
    Depends-On: Ifaeb9df96dbd7ca6a5553ecdc22c6ab8c56b7365
    Closes-Bug: #1642342
    (cherry picked from commit 93d2e6beb55b15a2658ac52eb57fe306bdbe77b0)

This issue was fixed in the openstack/tripleo-ui 2.0.1 release.

This issue was fixed in the openstack/tripleo-ui 1.1.0 release.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers