Activity log for bug #1565883

Date Who What changed Old value New value Message
2016-04-04 16:35:57 Carlos Novo bug added bug
2016-04-04 16:43:44 Carlos Novo description Detailed bug description: If a plugin in the version 1.0 is tried to be installed and it doesn't update an already installed plugin, when the user specifies the option -f in order to force the reinstallation, a python error is raised: [root@fuel objects]# fuel plugins --install /tmp/lbaas-1.0.0.fp -f DEPRECATION WARNING: The plugin has old 1.0 package format, this format does not support many features, such as plugins updates, find plugin in new format or migrate and rebuild this one. Traceback (most recent call last): File "/usr/bin/fuel", line 10, in <module> sys.exit(main()) File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main parser.parse() File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse actions[parsed_params.action].action_func(parsed_params) File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func method(params) File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install results = Plugins.install(file_path, force=params.force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install response = cls.register(name, version, force=force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register return cls.update_or_create(metadata, force=force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Steps to reproduce: - Log into the fuel server - Download any v1.0 plugin, eg wget http://plugins.mirantis.com/repository/l/b/lbaas/lbaas-1.0.0.fp - Install the plugin fuel plugins --install /tmp/lbaas-1.0.0.fp - Install the plugin again with -f fuel plugins --install /tmp/lbaas-1.0.0.fp -f Expected results: The plugin is reinstalled Actual result: Traceback (most recent call last): File "/usr/bin/fuel", line 10, in <module> sys.exit(main()) File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper return func(*args, **kwargs) File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main parser.parse() File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse actions[parsed_params.action].action_func(parsed_params) File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func method(params) File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install results = Plugins.install(file_path, force=params.force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install response = cls.register(name, version, force=force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register return cls.update_or_create(metadata, force=force) File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Reproducibility: Allways Workaround: Doesn't exist Impact: The user can not force the reinstallation of a v1.0 plugin Description of the environment: Operation system: Linux fuel.domain.tld 3.10.0-229.20.1.el7.x86_64 #1 SMP Tue Nov 3 19:10:07 Version of components: fuel 8.0.0 Aditional information: In /usr/lib/python2.7/site-packages/fuelclient/objects/plugin.py, method update_or_create(), when resp status code is 409 ( Conflict ) and force flat is set, the put url is trying to be achieved using resp['id'] The problem is that, in that case, the resp has not such key. The 'id' key is in resp['message'] . Proposed fix: json.load(resp['message']) and get the 'id' from the resulting dictionary. Detailed bug description: If a plugin in the version 1.0 is tried to be installed and it doesn't update an already installed plugin, when the user specifies the option -f in order to force the reinstallation, a python error is raised: [root@fuel objects]# fuel plugins --install /tmp/lbaas-1.0.0.fp -f DEPRECATION WARNING: The plugin has old 1.0 package format, this format does not support many features, such as plugins updates, find plugin in new format or migrate and rebuild this one. Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Steps to reproduce: - Log into the fuel server - Download any v1.0 plugin, eg   wget http://plugins.mirantis.com/repository/l/b/lbaas/lbaas-1.0.0.fp - Install the plugin   fuel plugins --install /tmp/lbaas-1.0.0.fp - Install the plugin again with -f   fuel plugins --install /tmp/lbaas-1.0.0.fp -f Expected results:   The plugin is reinstalled Actual result: Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Reproducibility:   Allways Workaround:   Doesn't exist Impact:   The user can not force the reinstallation of a v1.0 plugin Description of the environment:   Operation system: Linux fuel.domain.tld 3.10.0-229.20.1.el7.x86_64 #1 SMP Tue Nov 3 19:10:07   Version of components: fuel 8.0.0 Aditional information: In /usr/lib/python2.7/site-packages/fuelclient/objects/plugin.py, method update_or_create(), when resp status code is 409 ( Conflict ) and force flag is set, the put url is trying to be achieved using resp['id'] The problem is that, in that case, the resp has not such key. The 'id' key is in resp['message'] . Proposed fix: json.load(resp['message']) and get the 'id' from the resulting dictionary.
2016-04-04 19:39:55 Carlos Novo description Detailed bug description: If a plugin in the version 1.0 is tried to be installed and it doesn't update an already installed plugin, when the user specifies the option -f in order to force the reinstallation, a python error is raised: [root@fuel objects]# fuel plugins --install /tmp/lbaas-1.0.0.fp -f DEPRECATION WARNING: The plugin has old 1.0 package format, this format does not support many features, such as plugins updates, find plugin in new format or migrate and rebuild this one. Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Steps to reproduce: - Log into the fuel server - Download any v1.0 plugin, eg   wget http://plugins.mirantis.com/repository/l/b/lbaas/lbaas-1.0.0.fp - Install the plugin   fuel plugins --install /tmp/lbaas-1.0.0.fp - Install the plugin again with -f   fuel plugins --install /tmp/lbaas-1.0.0.fp -f Expected results:   The plugin is reinstalled Actual result: Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Reproducibility:   Allways Workaround:   Doesn't exist Impact:   The user can not force the reinstallation of a v1.0 plugin Description of the environment:   Operation system: Linux fuel.domain.tld 3.10.0-229.20.1.el7.x86_64 #1 SMP Tue Nov 3 19:10:07   Version of components: fuel 8.0.0 Aditional information: In /usr/lib/python2.7/site-packages/fuelclient/objects/plugin.py, method update_or_create(), when resp status code is 409 ( Conflict ) and force flag is set, the put url is trying to be achieved using resp['id'] The problem is that, in that case, the resp has not such key. The 'id' key is in resp['message'] . Proposed fix: json.load(resp['message']) and get the 'id' from the resulting dictionary. Detailed bug description: If a plugin in the version 1.0 is tried to be installed and it doesn't update an already installed plugin, when the user specifies the option -f in order to force the reinstallation, a python error is raised: ``` [root@fuel objects]# fuel plugins --install /tmp/lbaas-1.0.0.fp -f DEPRECATION WARNING: The plugin has old 1.0 package format, this format does not support many features, such as plugins updates, find plugin in new format or migrate and rebuild this one. Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' ``` Steps to reproduce: - Log into the fuel server - Download any v1.0 plugin, eg   wget http://plugins.mirantis.com/repository/l/b/lbaas/lbaas-1.0.0.fp - Install the plugin   fuel plugins --install /tmp/lbaas-1.0.0.fp - Install the plugin again with -f   fuel plugins --install /tmp/lbaas-1.0.0.fp -f Expected results:   The plugin is reinstalled Actual result: Traceback (most recent call last):   File "/usr/bin/fuel", line 10, in <module>     sys.exit(main())   File "/usr/lib/python2.7/site-packages/fuelclient/cli/error.py", line 115, in wrapper     return func(*args, **kwargs)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 266, in main     parser.parse()   File "/usr/lib/python2.7/site-packages/fuelclient/cli/parser.py", line 143, in parse     actions[parsed_params.action].action_func(parsed_params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/base.py", line 62, in action_func     method(params)   File "/usr/lib/python2.7/site-packages/fuelclient/cli/actions/plugins.py", line 88, in install     results = Plugins.install(file_path, force=params.force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 344, in install     response = cls.register(name, version, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 299, in register     return cls.update_or_create(metadata, force=force)   File "/usr/lib/python2.7/site-packages/fuelclient/objects/plugins.py", line 454, in update_or_create     url = cls.class_instance_path.format(id=resp['id']) KeyError: 'id' Reproducibility:   Allways Workaround:   Doesn't exist Impact:   The user can not force the reinstallation of a v1.0 plugin Description of the environment:   Operation system: Linux fuel.domain.tld 3.10.0-229.20.1.el7.x86_64 #1 SMP Tue Nov 3 19:10:07   Version of components: fuel 8.0.0 Aditional information: In /usr/lib/python2.7/site-packages/fuelclient/objects/plugin.py, method update_or_create(), when resp status code is 409 ( Conflict ) and force flag is set, the put url is trying to be achieved using resp['id'] The problem is that, in that case, the resp has not such key. The 'id' key is in resp['message'] . Proposed fix: json.load(resp['message']) and get the 'id' from the resulting dictionary.
2016-04-05 09:12:41 Oleksiy Molchanov fuel: milestone 8.0-updates
2016-04-05 09:12:52 Oleksiy Molchanov nominated for series fuel/mitaka
2016-04-05 09:12:52 Oleksiy Molchanov bug task added fuel/mitaka
2016-04-05 09:13:12 Oleksiy Molchanov fuel/mitaka: milestone 8.0-updates 9.0
2016-04-05 09:13:21 Oleksiy Molchanov fuel/mitaka: assignee Fuel Python Team (fuel-python)
2016-04-05 09:13:24 Oleksiy Molchanov fuel/mitaka: importance Undecided Medium
2016-04-05 09:13:27 Oleksiy Molchanov fuel/mitaka: status New Confirmed
2016-04-05 09:13:38 Oleksiy Molchanov tags area-python
2016-04-05 09:38:56 Ovidiu Miron fuel/mitaka: assignee Fuel Python Team (fuel-python) Ovidiu Miron (omiron)
2016-04-06 16:52:08 OpenStack Infra fuel: status Confirmed In Progress
2016-04-06 16:53:47 Ovidiu Miron fuel/mitaka: status In Progress Fix Committed
2016-04-08 04:16:27 Vitalii Kulanov tags area-python area-python module-client
2016-04-13 14:41:21 Ihor Kalnytskyi fuel/mitaka: status Fix Committed In Progress
2016-04-13 14:57:49 Dmitry Pyzhov fuel: status Fix Committed In Progress
2016-04-13 14:57:50 Dmitry Pyzhov fuel: milestone 9.0 10.0
2016-04-13 14:57:54 Dmitry Pyzhov fuel/mitaka: status In Progress Won't Fix
2016-04-19 09:17:59 OpenStack Infra fuel: status In Progress Fix Committed