[identity] create_endpoint and create_service are not idempotent
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack + Chef |
Fix Released
|
Medium
|
Kasey Alusi |
Bug Description
When calling the create_endpoint function in the register lwrp, it's actions are not idempotent.
If an endpoint for a service exists already, it is not recreated even though the desired endpoint details may be different from the current endpoint details. This is because the check only grabs the uuid of the endpoint and skips if one exists.
The create_endpoint and create_service functions need to actually get the current endpoint details, and compare them to the desired endpoint details, and delete/recreate if different.
Something like this:
https:/
One workaround for this is to use fully qualified host names instead of ip addresses. Then update the /etc/hosts file as needed using the hostfile
cookbook: http://
tags: | added: identity |
Changed in openstack-chef: | |
importance: | Undecided → High |
importance: | High → Medium |
status: | New → Confirmed |
description: | updated |
Changed in openstack-chef: | |
milestone: | none → juno-rc1 |
Changed in openstack-chef: | |
milestone: | juno-rc1 → kilo-rc1 |
Changed in openstack-chef: | |
assignee: | nobody → Kasey Alusi (kasey-alusi) |
It seems like the endpoint create does check to see if the values are the same, based on this: https:/ /github. com/stackforge/ cookbook- openstack- identity/ blob/master/ providers/ register. rb#L117- L126 Should this bug just be to add that same functionality to the service creation?