If console scripts are generated via entry-points, they will go into
/usr/local/bin on python setup.py develop and they will not be found in
/opt/stack/$PROJECT/bin any more. This patch supports a transition to
entry-points console scripts, but should still allow the old thing too.
Change-Id: I816f5f796ad00ac55a8352743ba01723df140072
| ... | ... |
@@ -75,7 +75,10 @@ OVS_HOSTS=${DEFAULT_OVS_HOSTS:-"localhost"}
|
| 75 | 75 |
#------------------------------------------------------------------------------ |
| 76 | 76 |
# Nova settings. |
| 77 | 77 |
#------------------------------------------------------------------------------ |
| 78 |
-NOVA_MANAGE=/opt/stack/nova/bin/nova-manage |
|
| 78 |
+if [ -f /opt/stack/nova/bin/nova-manage ] ; then |
|
| 79 |
+ NOVA_MANAGE=/opt/stack/nova/bin/nova-manage |
|
| 80 |
+else |
|
| 81 |
+ NOVA_MANAGE=/usr/local/bin/nova-manage |
|
| 79 | 82 |
NOVA=/usr/local/bin/nova |
| 80 | 83 |
NOVA_CONF=/etc/nova/nova.conf |
| 81 | 84 |
|
| ... | ... |
@@ -23,6 +23,12 @@ set -o xtrace |
| 23 | 23 |
|
| 24 | 24 |
# set up default directories |
| 25 | 25 |
CEILOMETER_DIR=$DEST/ceilometer |
| 26 |
+# Support potential entry-points console scripts |
|
| 27 |
+if [ -d $CEILOMETER_DIR/bin ] ; then |
|
| 28 |
+ CEILOMETER_BIN_DIR=$CEILOMETER_DIR/bin |
|
| 29 |
+else |
|
| 30 |
+ CEILOMETER_BIN_DIR=/usr/local/bin |
|
| 31 |
+fi |
|
| 26 | 32 |
CEILOMETER_CONF_DIR=/etc/ceilometer |
| 27 | 33 |
CEILOMETER_AGENT_CONF=$CEILOMETER_CONF_DIR/ceilometer-agent.conf |
| 28 | 34 |
CEILOMETER_COLLECTOR_CONF=$CEILOMETER_CONF_DIR/ceilometer-collector.conf |
| ... | ... |
@@ -54,7 +60,7 @@ function install_ceilometer() {
|
| 54 | 54 |
|
| 55 | 55 |
# start_ceilometer() - Start running processes, including screen |
| 56 | 56 |
function start_ceilometer() {
|
| 57 |
- screen_it ceilometer-acompute "cd $CEILOMETER_DIR && $CEILOMETER_DIR/bin/ceilometer-agent-compute --config-file $CEILOMETER_AGENT_CONF" |
|
| 58 |
- screen_it ceilometer-acentral "cd $CEILOMETER_DIR && $CEILOMETER_DIR/bin/ceilometer-agent-central --config-file $CEILOMETER_AGENT_CONF" |
|
| 59 |
- screen_it ceilometer-collector "cd $CEILOMETER_DIR && $CEILOMETER_DIR/bin/ceilometer-collector --config-file $CEILOMETER_COLLECTOR_CONF" |
|
| 57 |
+ screen_it ceilometer-acompute "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-agent-compute --config-file $CEILOMETER_AGENT_CONF" |
|
| 58 |
+ screen_it ceilometer-acentral "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-agent-central --config-file $CEILOMETER_AGENT_CONF" |
|
| 59 |
+ screen_it ceilometer-collector "cd $CEILOMETER_DIR && $CEILOMETER_BIN_DIR/ceilometer-collector --config-file $CEILOMETER_COLLECTOR_CONF" |
|
| 60 | 60 |
} |
| ... | ... |
@@ -25,6 +25,11 @@ set -o xtrace |
| 25 | 25 |
|
| 26 | 26 |
# set up default directories |
| 27 | 27 |
CINDER_DIR=$DEST/cinder |
| 28 |
+if [ -d $CINDER_DIR/bin ] ; then |
|
| 29 |
+ CINDER_BIN_DIR=$CINDER_DIR/bin |
|
| 30 |
+else |
|
| 31 |
+ CINDER_BIN_DIR=/usr/local/bin |
|
| 32 |
+fi |
|
| 28 | 33 |
CINDERCLIENT_DIR=$DEST/python-cinderclient |
| 29 | 34 |
CINDER_CONF_DIR=/etc/cinder |
| 30 | 35 |
CINDER_CONF=$CINDER_CONF_DIR/cinder.conf |
| ... | ... |
@@ -134,7 +139,7 @@ function init_cinder() {
|
| 134 | 134 |
mysql -u$MYSQL_USER -p$MYSQL_PASSWORD -e 'CREATE DATABASE cinder;' |
| 135 | 135 |
|
| 136 | 136 |
# (re)create cinder database |
| 137 |
- $CINDER_DIR/bin/cinder-manage db sync |
|
| 137 |
+ $CINDER_BIN_DIR/cinder-manage db sync |
|
| 138 | 138 |
fi |
| 139 | 139 |
|
| 140 | 140 |
if is_service_enabled c-vol; then |
| ... | ... |
@@ -198,9 +203,9 @@ function start_cinder() {
|
| 198 | 198 |
fi |
| 199 | 199 |
fi |
| 200 | 200 |
|
| 201 |
- screen_it c-api "cd $CINDER_DIR && $CINDER_DIR/bin/cinder-api --config-file $CINDER_CONF" |
|
| 202 |
- screen_it c-vol "cd $CINDER_DIR && $CINDER_DIR/bin/cinder-volume --config-file $CINDER_CONF" |
|
| 203 |
- screen_it c-sch "cd $CINDER_DIR && $CINDER_DIR/bin/cinder-scheduler --config-file $CINDER_CONF" |
|
| 201 |
+ screen_it c-api "cd $CINDER_DIR && $CINDER_BIN_DIR/cinder-api --config-file $CINDER_CONF" |
|
| 202 |
+ screen_it c-vol "cd $CINDER_DIR && $CINDER_BIN_DIR/cinder-volume --config-file $CINDER_CONF" |
|
| 203 |
+ screen_it c-sch "cd $CINDER_DIR && $CINDER_BIN_DIR/cinder-scheduler --config-file $CINDER_CONF" |
|
| 204 | 204 |
} |
| 205 | 205 |
|
| 206 | 206 |
# stop_cinder() - Stop running processes (non-screen) |
| ... | ... |
@@ -1760,6 +1760,13 @@ elif is_service_enabled n-vol; then |
| 1760 | 1760 |
fi |
| 1761 | 1761 |
fi |
| 1762 | 1762 |
|
| 1763 |
+# Support entry points installation of console scripts |
|
| 1764 |
+if [ -d $NOVA_DIR/bin ] ; then |
|
| 1765 |
+ NOVA_BIN_DIR=$NOVA_DIR/bin |
|
| 1766 |
+else |
|
| 1767 |
+ NOVA_BIN_DIR=/usr/local/bin |
|
| 1768 |
+fi |
|
| 1769 |
+ |
|
| 1763 | 1770 |
NOVA_CONF=nova.conf |
| 1764 | 1771 |
function add_nova_opt {
|
| 1765 | 1772 |
echo "$1" >> $NOVA_CONF_DIR/$NOVA_CONF |
| ... | ... |
@@ -1935,7 +1942,7 @@ if is_service_enabled mysql && is_service_enabled nova; then |
| 1935 | 1935 |
mysql -u$MYSQL_USER -p$MYSQL_PASSWORD -e 'CREATE DATABASE nova CHARACTER SET latin1;' |
| 1936 | 1936 |
|
| 1937 | 1937 |
# (re)create nova database |
| 1938 |
- $NOVA_DIR/bin/nova-manage db sync |
|
| 1938 |
+ $NOVA_BIN_DIR/nova-manage db sync |
|
| 1939 | 1939 |
fi |
| 1940 | 1940 |
|
| 1941 | 1941 |
|
| ... | ... |
@@ -2077,7 +2084,7 @@ fi |
| 2077 | 2077 |
# Launch the nova-api and wait for it to answer before continuing |
| 2078 | 2078 |
if is_service_enabled n-api; then |
| 2079 | 2079 |
add_nova_opt "enabled_apis=$NOVA_ENABLED_APIS" |
| 2080 |
- screen_it n-api "cd $NOVA_DIR && $NOVA_DIR/bin/nova-api" |
|
| 2080 |
+ screen_it n-api "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-api" |
|
| 2081 | 2081 |
echo "Waiting for nova-api to start..." |
| 2082 | 2082 |
if ! timeout $SERVICE_TIMEOUT sh -c "while ! http_proxy= wget -q -O- http://127.0.0.1:8774; do sleep 1; done"; then |
| 2083 | 2083 |
echo "nova-api did not start" |
| ... | ... |
@@ -2097,13 +2104,13 @@ if is_service_enabled q-svc; then |
| 2097 | 2097 |
quantum subnet-create --tenant_id $TENANT_ID --ip_version 4 --gateway $NETWORK_GATEWAY $NET_ID $FIXED_RANGE |
| 2098 | 2098 |
elif is_service_enabled mysql && is_service_enabled nova; then |
| 2099 | 2099 |
# Create a small network |
| 2100 |
- $NOVA_DIR/bin/nova-manage network create private $FIXED_RANGE 1 $FIXED_NETWORK_SIZE $NETWORK_CREATE_ARGS |
|
| 2100 |
+ $NOVA_BIN_DIR/nova-manage network create private $FIXED_RANGE 1 $FIXED_NETWORK_SIZE $NETWORK_CREATE_ARGS |
|
| 2101 | 2101 |
|
| 2102 | 2102 |
# Create some floating ips |
| 2103 |
- $NOVA_DIR/bin/nova-manage floating create $FLOATING_RANGE |
|
| 2103 |
+ $NOVA_BIN_DIR/nova-manage floating create $FLOATING_RANGE |
|
| 2104 | 2104 |
|
| 2105 | 2105 |
# Create a second pool |
| 2106 |
- $NOVA_DIR/bin/nova-manage floating create --ip_range=$TEST_FLOATING_RANGE --pool=$TEST_FLOATING_POOL |
|
| 2106 |
+ $NOVA_BIN_DIR/nova-manage floating create --ip_range=$TEST_FLOATING_RANGE --pool=$TEST_FLOATING_POOL |
|
| 2107 | 2107 |
fi |
| 2108 | 2108 |
|
| 2109 | 2109 |
# Launching nova-compute should be as simple as running ``nova-compute`` but |
| ... | ... |
@@ -2112,11 +2119,11 @@ fi |
| 2112 | 2112 |
# within the context of our original shell (so our groups won't be updated). |
| 2113 | 2113 |
# Use 'sg' to execute nova-compute as a member of the libvirtd group. |
| 2114 | 2114 |
# We don't check for is_service_enable as screen_it does it for us |
| 2115 |
-screen_it n-cpu "cd $NOVA_DIR && sg libvirtd $NOVA_DIR/bin/nova-compute" |
|
| 2116 |
-screen_it n-crt "cd $NOVA_DIR && $NOVA_DIR/bin/nova-cert" |
|
| 2117 |
-screen_it n-vol "cd $NOVA_DIR && $NOVA_DIR/bin/nova-volume" |
|
| 2118 |
-screen_it n-net "cd $NOVA_DIR && $NOVA_DIR/bin/nova-network" |
|
| 2119 |
-screen_it n-sch "cd $NOVA_DIR && $NOVA_DIR/bin/nova-scheduler" |
|
| 2115 |
+screen_it n-cpu "cd $NOVA_DIR && sg libvirtd $NOVA_BIN_DIR/nova-compute" |
|
| 2116 |
+screen_it n-crt "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-cert" |
|
| 2117 |
+screen_it n-vol "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-volume" |
|
| 2118 |
+screen_it n-net "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-network" |
|
| 2119 |
+screen_it n-sch "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-scheduler" |
|
| 2120 | 2120 |
screen_it n-novnc "cd $NOVNC_DIR && ./utils/nova-novncproxy --config-file $NOVA_CONF_DIR/$NOVA_CONF --web ." |
| 2121 | 2121 |
screen_it n-xvnc "cd $NOVA_DIR && ./bin/nova-xvpvncproxy --config-file $NOVA_CONF_DIR/$NOVA_CONF" |
| 2122 | 2122 |
screen_it n-cauth "cd $NOVA_DIR && ./bin/nova-consoleauth" |
| ... | ... |
@@ -2133,7 +2140,7 @@ screen_it swift "cd $SWIFT_DIR && $SWIFT_DIR/bin/swift-proxy-server ${SWIFT_CONF
|
| 2133 | 2133 |
# Starting the nova-objectstore only if swift3 service is not enabled. |
| 2134 | 2134 |
# Swift will act as s3 objectstore. |
| 2135 | 2135 |
is_service_enabled swift3 || \ |
| 2136 |
- screen_it n-obj "cd $NOVA_DIR && $NOVA_DIR/bin/nova-objectstore" |
|
| 2136 |
+ screen_it n-obj "cd $NOVA_DIR && $NOVA_BIN_DIR/nova-objectstore" |
|
| 2137 | 2137 |
|
| 2138 | 2138 |
|
| 2139 | 2139 |
# Install Images |