Before the code in the extra.d plugins was removed from the devstack
tree they could define the order they ran. When this code is decomposed
into a plugin, there is still a need to do some form of ordering. This
caused problems with the Ironic devstack plugin and Tempest because the
code is run in this order:
1. The tempest configuration is run from extra.d, processing
DEFAULT_INSTANCE_TYPE, and writing the flavor_ref to tempest.conf
2. The Ironic devstack plugin is run, creating the flavor needed for
DEFAULT_INSTANCE_TYPE
This leads to build failures as tempest can not find the required
flavor, so it writes which ever flavor it can find at the time into
flavor_ref. Ironic now has code it its devstack plugin duplicated from
the tempest plugin to work around this problem until this is merged.
This patch fixes this by using the test-config phase to move the tempest
plugin as late as possible in the devstack process.
Change-Id: I3d98692e69d94756e0034c83a247e05d85177f02
| ... | ... |
@@ -11,13 +11,16 @@ if is_service_enabled tempest; then |
| 11 | 11 |
# Tempest config must come after layer 2 services are running |
| 12 | 12 |
: |
| 13 | 13 |
elif [[ "$1" == "stack" && "$2" == "extra" ]]; then |
| 14 |
+ # Tempest config must come after all other plugins are run |
|
| 15 |
+ : |
|
| 16 |
+ elif [[ "$1" == "stack" && "$2" == "post-extra" ]]; then |
|
| 17 |
+ # local.conf Tempest option overrides |
|
| 18 |
+ : |
|
| 19 |
+ elif [[ "$1" == "stack" && "$2" == "test-config" ]]; then |
|
| 14 | 20 |
echo_summary "Initializing Tempest" |
| 15 | 21 |
configure_tempest |
| 16 | 22 |
echo_summary "Installing Tempest Plugins" |
| 17 | 23 |
install_tempest_plugins |
| 18 |
- elif [[ "$1" == "stack" && "$2" == "post-extra" ]]; then |
|
| 19 |
- # local.conf Tempest option overrides |
|
| 20 |
- : |
|
| 21 | 24 |
fi |
| 22 | 25 |
|
| 23 | 26 |
if [[ "$1" == "unstack" ]]; then |