UI is not updated after removing of plugin

Bug #1440046 reported by Anastasia Palkina on 2015-04-03
20
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
High
Vitalii Myhal
6.1.x
High
Fuel Python (Deprecated)
7.0.x
High
Vitalii Myhal

Bug Description

"build_id": "2015-03-31_22-54-44",
"ostf_sha": "1c7f799cb0e159737d1f910b13e4073b16d1eb8c",
"build_number": "260",
"release_versions": {"2014.2-6.1": {"VERSION": {"build_id": "2015-03-31_22-54-44", "ostf_sha": "1c7f799cb0e159737d1f910b13e4073b16d1eb8c", "build_number": "260", "api": "1.0", "nailgun_sha": "51ddbe0a2e379e82af531b1c6d45fd386d2f894e", "production": "docker", "python-fuelclient_sha": "9b0b6ab2f09ff75445550b7210104e21df5d8cd6", "astute_sha": "7292fc2a673cb1c32a688a46fd4836ca0500a957", "feature_groups": ["mirantis"], "release": "6.1", "fuelmain_sha": "178812b1971a900c49a8afc1688afd7475a6ffbb", "fuellib_sha": "27459a89cdac078ec4046a442a11d750c5eccc2e"}}},
"auth_required": true,
"api": "1.0",
"nailgun_sha": "51ddbe0a2e379e82af531b1c6d45fd386d2f894e",
"production": "docker",
"python-fuelclient_sha": "9b0b6ab2f09ff75445550b7210104e21df5d8cd6",
"astute_sha": "7292fc2a673cb1c32a688a46fd4836ca0500a957",
"feature_groups": ["mirantis"],
"release": "6.1",
"fuelmain_sha": "178812b1971a900c49a8afc1688afd7475a6ffbb",
"fuellib_sha": "27459a89cdac078ec4046a442a11d750c5eccc2e"

1. Install plugin
2. Create any new environment
3. Open 'Settings' tab
4. Checkbox for plugin appeared
5. Delete plugin
6. Restart 'Settings' page. Checkbox is still displayed
7. If you create another one environment and open 'Settings' tab - checkbox will not be displayed

Changed in fuel:
status: New → Confirmed
Anastasia Palkina (apalkina) wrote :
Dmitry Pyzhov (dpyzhov) on 2015-04-09
tags: added: feature-plugins
Dmitry Pyzhov (dpyzhov) on 2015-04-14
Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Vladimir Sharshov (vsharshov)
Dmitry Pyzhov (dpyzhov) on 2015-04-14
tags: added: tricky
Changed in fuel:
milestone: 6.1 → 7.0
assignee: Vladimir Sharshov (vsharshov) → Fuel Python Team (fuel-python)
Nastya Urlapova (aurlapova) wrote :

Dima, why you did move this to 7.0?

Evgeniy L (rustyrobot) wrote :

To properly fix the problem it's required to redesign a bit plugins architecture in order to store the data in separate table, not in cluster attributes, so it will be possible to remove plugin specific data when plugin gets deleted.

tags: added: qa-agree-7.0 release-notes
Dmitry Pyzhov (dpyzhov) on 2015-04-23
Changed in fuel:
milestone: 6.1 → 7.0
Nikolay Markov (nmarkov) wrote :

rustyrobot, I once proposed completely working solution, but you didn't like it :) Now it's still somewhere in my requests, not abandoned yet. We can take a look at it and rethink design in such terms.

Vladimir Sharshov (vsharshov) wrote :

Is it still actual?

Evgeniy L (rustyrobot) wrote :

It's still actual, Igor K. is working on it.

Vladimir Sharshov (vsharshov) wrote :

Set to High, because it is very useful fix and also it can fix many problems. Feel free to change it.

Ihor Kalnytskyi (ikalnytskyi) wrote :

I think we run out of time, and fix will be tricky. Set won't fix for 7.0. I'll provide a workaround today.

Change abandoned by Vitalii Myhal (<email address hidden>) on branch: master
Review: https://review.openstack.org/220189
Reason: Need merge with main code.

Dmitry Pyzhov (dpyzhov) on 2015-10-09
no longer affects: fuel/8.0.x
Changed in fuel:
milestone: 7.0 → 8.0
Dmitry Pyzhov (dpyzhov) on 2015-10-12
tags: added: feature
Dmitry Pyzhov (dpyzhov) on 2015-10-22
tags: added: area-python
Changed in fuel:
assignee: Vitalii Myhal (xmig) → Andriy Popovych (popovych-andrey)
Changed in fuel:
assignee: Andriy Popovych (popovych-andrey) → Bulat Gaifullin (bgaifullin)
Changed in fuel:
assignee: Bulat Gaifullin (bgaifullin) → Andriy Popovych (popovych-andrey)
Changed in fuel:
assignee: Andriy Popovych (popovych-andrey) → Vitalii Myhal (xmig)

Reviewed: https://review.openstack.org/220188
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=a25db9a2c61590c2fd0e3946c594bff9b61dee40
Submitter: Jenkins
Branch: master

commit a25db9a2c61590c2fd0e3946c594bff9b61dee40
Author: Vitaliy Mygal <email address hidden>
Date: Thu Sep 3 14:18:20 2015 +0300

    Store attributes of plugins in a separate table

    This is redesign of plugins architecture in order to store
    the plugin's attributes in a separate table, not in cluster
    attributes, so it will be possible to remove connection between
    plugin and cluster when a plugin gets deleted.

    Added ability to work with different versions of a plugin.
    User can choose the preferred version in UI.

    The test "test_plugin_generator" was removed because no longer
    relevant.

    Closes-Bug: #1440046
    Implements: blueprint store-plugins-attributes

    Change-Id: I52115f130bf1c7c80c66e18d0bf9f7acb16dd56c

Changed in fuel:
status: In Progress → Fix Committed
tags: added: on-verification

Fix doesn't solve the main problem.

Test cases that I did:
Case 1:
1) Install master
2) Create new plugin with version 1.0.0
3) Install plugin at the master node
4) Create new env
5) Navigate to the Other Settings tab
6) DO NOT enable plugin at the cluster
7) Remove plugin from the master node

Expected result:
Plugin is successfully removed.
Actual result:
An error message is shown:
[root@nailgun ~]# fuel plugins --remove vip_plugin==1.0.0
400 Client Error: Bad Request (Can't delete plugin which is enabled for some environment.)

Case 2:
1) Perform steps 1-4 from case 1
2) Create another plugin with the same name but with higher version, for example: 2.0.0
3) Install new plugin at the master node
4) Navigate to the Other Settings tab
6) Enable plugin at the cluster (here we have a choice plugin with which version we need to enable, let's enable 1.0.0)
7) Remove plugin 2.0.0 from the master node
8) Enable plugin 2.0.0 at the cluster
9) Remove plugin 1.0.0 from the master node

Expected result:
If we enable some version of plugin at the UI we can delete another version from master node.

Actual result:
Plugin could't be deleted even we choose another version of that plugin at UI:
[root@nailgun ~]# fuel plugins --remove vip_plugin==2.0.0
400 Client Error: Bad Request (Can't delete plugin which is enabled for some environment.)
[root@nailgun ~]# fuel plugins --remove vip_plugin==1.0.0
400 Client Error: Bad Request (Can't delete plugin which is enabled for some environment.)

Fuel iso #203 was used

Changed in fuel:
status: Fix Committed → Triaged
tags: removed: on-verification
Vitalii Myhal (xmig) on 2015-11-30
Changed in fuel:
status: Triaged → In Progress

Reviewed: https://review.openstack.org/251194
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=f83c4ea23b903e7e7d52bdfd367c82b17afe164d
Submitter: Jenkins
Branch: master

commit f83c4ea23b903e7e7d52bdfd367c82b17afe164d
Author: Vitalii Myhal <email address hidden>
Date: Sat Nov 28 15:13:47 2015 -0600

    Versions of a plugin have been placed in a separate container

    Closes-Bug: #1440046
    Closes-Bug: #1518993

    Change-Id: I76655541fd7c00cdd863e145b28fba804b4ed801

Changed in fuel:
status: In Progress → Fix Committed

Reviewed: https://review.openstack.org/262037
Committed: https://git.openstack.org/cgit/openstack/fuel-web/commit/?id=fe13a3286320580e121b9bc24685dde21138d097
Submitter: Jenkins
Branch: stable/8.0

commit fe13a3286320580e121b9bc24685dde21138d097
Author: Vitalii Myhal <email address hidden>
Date: Sat Nov 28 15:13:47 2015 -0600

    Versions of a plugin have been placed in a separate container

    Closes-Bug: #1440046
    Closes-Bug: #1518993

    Change-Id: I76655541fd7c00cdd863e145b28fba804b4ed801
    (cherry picked from commit f83c4ea23b903e7e7d52bdfd367c82b17afe164d)

tags: added: on-verification

All tests from the comment #13 are passed. Thus moved this bug to the Fix Released State

Changed in fuel:
status: Fix Committed → Fix Released
tags: removed: on-verification
tags: added: 8.0 release-notes-done
removed: release-notes
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Duplicates of this bug

Other bug subscribers