Inconsistent role assignment rules
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Fuel for OpenStack |
Fix Released
|
Medium
|
Maciej Kwiek |
Bug Description
Fuel 7.0
There is an inconsistency in role/task assignment rules for 'master' role. These tasks are meant to be executed on Fuel master node.
If 'master' role is supplied as an array value the system does not recognize this task and does not execute it on Fuel master node. Here is an example of a problem task definition in Fuel plugin:
...
- id: generate_
parameters:
cmd: sh /var/www/
cwd: /
timeout: 180
required_for:
- pre_deployment_end
requires:
- pre_deployment_
role:
- master
type: shell
...
Here is an example of an 'out-of-box' 'master' task:
fuel env --env <env_number> --deployment-tasks --download
in deployment_
...
- id: generate_keys
parameters:
cmd: sh /etc/puppet/
-o 'mongodb' -s 'neutron nova mysql' -p /var/lib/fuel/keys/
timeout: 180
required_for:
- copy_keys
requires:
- pre_deployment_
role: master
type: shell
...
note 'master' is a string value here, while non-master tasks have arrays of roles assigned.
If a task is created using Fuel plugin, you can't assign string value to a role - fuel plugin builder does not allow to build plugin with such a task.
As a workaround I had to manually change role definition from array to string after plugin installation and perform plugins sync.
In order to resolve the problem it's needed to either allow fuel plugin builder to build plugins with strings in role definitions or make Fuel to recognize 'master' as an array value in role definitions.
Changed in fuel: | |
milestone: | none → 8.0 |
assignee: | nobody → Fuel Python Team (fuel-python) |
Changed in fuel: | |
importance: | Undecided → Medium |
tags: | added: area-python |
tags: | added: customer-found |
Changed in fuel: | |
status: | New → Confirmed |
Changed in fuel: | |
assignee: | Fuel Python Team (fuel-python) → Maciej Kwiek (maciej-iai) |
Fix proposed to branch: master /review. openstack. org/241165
Review: https:/