Merge "Adds elasticsearch support as a pre-req for the glance-index."
diff --git a/doc/source/index.rst b/doc/source/index.rst
index 0790d1e..be77dc1 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -167,7 +167,6 @@
* `lib/oslo <lib/oslo.html>`__
* `lib/rpc\_backend <lib/rpc_backend.html>`__
* `lib/sahara <lib/sahara.html>`__
-* `lib/stackforge <lib/stackforge.html>`__
* `lib/swift <lib/swift.html>`__
* `lib/tempest <lib/tempest.html>`__
* `lib/tls <lib/tls.html>`__
diff --git a/doc/source/plugins.rst b/doc/source/plugins.rst
index 8bb92ed..5d6d3f1 100644
--- a/doc/source/plugins.rst
+++ b/doc/source/plugins.rst
@@ -107,19 +107,24 @@
sourced very early in the process. This is helpful if other plugins
might depend on this one, and need access to global variables to do
their work.
+
+ Your settings should include any ``enable_service`` lines required
+ by your plugin. This is especially important if you are kicking off
+ services using ``run_process`` as it only works with enabled
+ services.
+
- ``plugin.sh`` - the actual plugin. It will be executed by devstack
during it's run. The run order will be done in the registration
order for these plugins, and will occur immediately after all in
tree extras.d dispatch at the phase in question. The plugin.sh
- looks like the extras.d dispatcher above **except** it should not
- include the is_service_enabled conditional. All external plugins are
- always assumed to be enabled.
+ looks like the extras.d dispatcher above.
Plugins are registered by adding the following to the localrc section
of ``local.conf``.
They are added in the following format::
+ [[local|localrc]]
enable_plugin <NAME> <GITURL> [GITREF]
- ``name`` - an arbitrary name. (ex: glustfs, docker, zaqar, congress)
@@ -129,7 +134,7 @@
An example would be as follows::
- enable_plugin glusterfs https://github.com/sdague/devstack-plugins glusterfs
+ enable_plugin ec2api git://git.openstack.org/stackforge/ec2api
Hypervisor
==========
diff --git a/extras.d/70-gantt.sh b/extras.d/70-gantt.sh
deleted file mode 100644
index ac1efba..0000000
--- a/extras.d/70-gantt.sh
+++ /dev/null
@@ -1,31 +0,0 @@
-# gantt.sh - Devstack extras script to install Gantt
-
-if is_service_enabled n-sch; then
- disable_service gantt
-fi
-
-if is_service_enabled gantt; then
- if [[ "$1" == "source" ]]; then
- # Initial source
- source $TOP_DIR/lib/gantt
- elif [[ "$1" == "stack" && "$2" == "install" ]]; then
- echo_summary "Installing Gantt"
- install_gantt
- cleanup_gantt
- elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then
- echo_summary "Configuring Gantt"
- configure_gantt
-
- elif [[ "$1" == "stack" && "$2" == "extra" ]]; then
- # Initialize gantt
- init_gantt
-
- # Start gantt
- echo_summary "Starting Gantt"
- start_gantt
- fi
-
- if [[ "$1" == "unstack" ]]; then
- stop_gantt
- fi
-fi
diff --git a/extras.d/70-tuskar.sh b/extras.d/70-tuskar.sh
deleted file mode 100644
index aa8f46a..0000000
--- a/extras.d/70-tuskar.sh
+++ /dev/null
@@ -1,200 +0,0 @@
-# Install and start the **Tuskar** service
-#
-# To enable, add the following to your localrc
-#
-# enable_service tuskar
-# enable_service tuskar-api
-
-
-if is_service_enabled tuskar; then
- if [[ "$1" == "source" ]]; then
- # Initial source, do nothing as functions sourced
- # are below rather than in lib/tuskar
- echo_summary "source extras tuskar"
- elif [[ "$1" == "stack" && "$2" == "install" ]]; then
- echo_summary "Installing Tuskar"
- install_tuskarclient
- install_tuskar
- elif [[ "$1" == "stack" && "$2" == "post-config" ]]; then
- echo_summary "Configuring Tuskar"
- configure_tuskar
- configure_tuskarclient
-
- if is_service_enabled key; then
- create_tuskar_accounts
- fi
-
- elif [[ "$1" == "stack" && "$2" == "extra" ]]; then
- echo_summary "Initializing Tuskar"
- init_tuskar
- start_tuskar
- fi
-
- if [[ "$1" == "unstack" ]]; then
- stop_tuskar
- fi
-fi
-
-# library code (equivalent to lib/tuskar)
-# ---------
-# - install_tuskarclient
-# - install_tuskar
-# - configure_tuskarclient
-# - configure_tuskar
-# - init_tuskar
-# - start_tuskar
-# - stop_tuskar
-# - cleanup_tuskar
-
-# Save trace setting
-XTRACE=$(set +o | grep xtrace)
-set +o xtrace
-
-
-# Defaults
-# --------
-
-# tuskar repos
-TUSKAR_REPO=${TUSKAR_REPO:-${GIT_BASE}/openstack/tuskar.git}
-TUSKAR_BRANCH=${TUSKAR_BRANCH:-master}
-
-TUSKARCLIENT_REPO=${TUSKARCLIENT_REPO:-${GIT_BASE}/openstack/python-tuskarclient.git}
-TUSKARCLIENT_BRANCH=${TUSKARCLIENT_BRANCH:-master}
-
-# set up default directories
-TUSKAR_DIR=$DEST/tuskar
-TUSKARCLIENT_DIR=$DEST/python-tuskarclient
-TUSKAR_AUTH_CACHE_DIR=${TUSKAR_AUTH_CACHE_DIR:-/var/cache/tuskar}
-TUSKAR_STANDALONE=$(trueorfalse False TUSKAR_STANDALONE)
-TUSKAR_CONF_DIR=/etc/tuskar
-TUSKAR_CONF=$TUSKAR_CONF_DIR/tuskar.conf
-TUSKAR_API_HOST=${TUSKAR_API_HOST:-$HOST_IP}
-TUSKAR_API_PORT=${TUSKAR_API_PORT:-8585}
-
-# Tell Tempest this project is present
-TEMPEST_SERVICES+=,tuskar
-
-# Functions
-# ---------
-
-# Test if any Tuskar services are enabled
-# is_tuskar_enabled
-function is_tuskar_enabled {
- [[ ,${ENABLED_SERVICES} =~ ,"tuskar-" ]] && return 0
- return 1
-}
-
-# cleanup_tuskar() - Remove residual data files, anything left over from previous
-# runs that a clean run would need to clean up
-function cleanup_tuskar {
- sudo rm -rf $TUSKAR_AUTH_CACHE_DIR
-}
-
-# configure_tuskar() - Set config files, create data dirs, etc
-function configure_tuskar {
- setup_develop $TUSKAR_DIR
-
- if [[ ! -d $TUSKAR_CONF_DIR ]]; then
- sudo mkdir -p $TUSKAR_CONF_DIR
- fi
- sudo chown $STACK_USER $TUSKAR_CONF_DIR
- # remove old config files
- rm -f $TUSKAR_CONF_DIR/tuskar-*.conf
-
- TUSKAR_POLICY_FILE=$TUSKAR_CONF_DIR/policy.json
-
- cp $TUSKAR_DIR/etc/tuskar/policy.json $TUSKAR_POLICY_FILE
- cp $TUSKAR_DIR/etc/tuskar/tuskar.conf.sample $TUSKAR_CONF
-
- # common options
- iniset $TUSKAR_CONF database connection `database_connection_url tuskar`
-
- # logging
- iniset $TUSKAR_CONF DEFAULT debug $ENABLE_DEBUG_LOG_LEVEL
- iniset $TUSKAR_CONF DEFAULT use_syslog $SYSLOG
- if [ "$LOG_COLOR" == "True" ] && [ "$SYSLOG" == "False" ]; then
- # Add color to logging output
- setup_colorized_logging $TUSKAR_CONF DEFAULT tenant user
- fi
-
- configure_auth_token_middleware $TUSKAR_CONF tuskar $TUSKAR_AUTH_CACHE_DIR
-
- if is_ssl_enabled_service "key"; then
- iniset $TUSKAR_CONF clients_keystone ca_file $SSL_BUNDLE_FILE
- fi
-
- iniset $TUSKAR_CONF tuskar_api bind_port $TUSKAR_API_PORT
-
-}
-
-# init_tuskar() - Initialize database
-function init_tuskar {
-
- # (re)create tuskar database
- recreate_database tuskar
-
- tuskar-dbsync --config-file $TUSKAR_CONF
- create_tuskar_cache_dir
-}
-
-# create_tuskar_cache_dir() - Part of the init_tuskar() process
-function create_tuskar_cache_dir {
- # Create cache dirs
- sudo mkdir -p $TUSKAR_AUTH_CACHE_DIR
- sudo chown $STACK_USER $TUSKAR_AUTH_CACHE_DIR
-}
-
-# install_tuskarclient() - Collect source and prepare
-function install_tuskarclient {
- git_clone $TUSKARCLIENT_REPO $TUSKARCLIENT_DIR $TUSKARCLIENT_BRANCH
- setup_develop $TUSKARCLIENT_DIR
-}
-
-# configure_tuskarclient() - Set config files, create data dirs, etc
-function configure_tuskarclient {
- setup_develop $TUSKARCLIENT_DIR
-}
-
-# install_tuskar() - Collect source and prepare
-function install_tuskar {
- git_clone $TUSKAR_REPO $TUSKAR_DIR $TUSKAR_BRANCH
-}
-
-# start_tuskar() - Start running processes, including screen
-function start_tuskar {
- run_process tuskar-api "tuskar-api --config-file=$TUSKAR_CONF"
-}
-
-# stop_tuskar() - Stop running processes
-function stop_tuskar {
- # Kill the screen windows
- local serv
- for serv in tuskar-api; do
- stop_process $serv
- done
-}
-
-# create_tuskar_accounts() - Set up common required tuskar accounts
-function create_tuskar_accounts {
-
- create_service_user "tuskar" "admin"
-
- if [[ "$KEYSTONE_CATALOG_BACKEND" = 'sql' ]]; then
-
- local tuskar_service=$(get_or_create_service "tuskar" \
- "management" "Tuskar Management Service")
- get_or_create_endpoint $tuskar_service \
- "$REGION_NAME" \
- "$SERVICE_PROTOCOL://$TUSKAR_API_HOST:$TUSKAR_API_PORT" \
- "$SERVICE_PROTOCOL://$TUSKAR_API_HOST:$TUSKAR_API_PORT" \
- "$SERVICE_PROTOCOL://$TUSKAR_API_HOST:$TUSKAR_API_PORT"
- fi
-}
-
-# Restore xtrace
-$XTRACE
-
-# Tell emacs to use shell-script-mode
-## Local variables:
-## mode: shell-script
-## End:
diff --git a/lib/gantt b/lib/gantt
deleted file mode 100644
index 5bd28c2..0000000
--- a/lib/gantt
+++ /dev/null
@@ -1,98 +0,0 @@
-#!/bin/bash
-#
-# lib/gantt
-# Install and start **Gantt** scheduler service
-
-# Dependencies:
-#
-# - functions
-# - DEST, DATA_DIR, STACK_USER must be defined
-
-# stack.sh
-# ---------
-# - install_gantt
-# - configure_gantt
-# - init_gantt
-# - start_gantt
-# - stop_gantt
-# - cleanup_gantt
-
-# Save trace setting
-XTRACE=$(set +o | grep xtrace)
-set +o xtrace
-
-# Defaults
-# --------
-
-# set up default directories
-GANTT_DIR=$DEST/gantt
-GANTT_STATE_PATH=${GANTT_STATE_PATH:=$DATA_DIR/gantt}
-GANTT_REPO=${GANTT_REPO:-${GIT_BASE}/openstack/gantt.git}
-GANTT_BRANCH=${GANTT_BRANCH:-master}
-
-GANTTCLIENT_DIR=$DEST/python-ganttclient
-GANTTCLIENT_REPO=${GANTT_REPO:-${GIT_BASE}/openstack/python-ganttclient.git}
-GANTTCLIENT_BRANCH=${GANTT_BRANCH:-master}
-
-# eventually we will have a separate gantt config
-# file but for compatibility reasone stick with
-# nova.conf for now
-GANTT_CONF_DIR=${GANTT_CONF_DIR:-/etc/nova}
-GANTT_CONF=$GANTT_CONF_DIR/nova.conf
-
-# Support entry points installation of console scripts
-GANTT_BIN_DIR=$(get_python_exec_prefix)
-
-
-# Functions
-# ---------
-
-# cleanup_gantt() - Remove residual data files, anything left over from previous
-# runs that a clean run would need to clean up
-function cleanup_gantt {
- echo "Cleanup Gantt"
-}
-
-# configure_gantt() - Set config files, create data dirs, etc
-function configure_gantt {
- echo "Configure Gantt"
-}
-
-# init_gantt() - Initialize database and volume group
-function init_gantt {
- echo "Initialize Gantt"
-}
-
-# install_gantt() - Collect source and prepare
-function install_gantt {
- git_clone $GANTT_REPO $GANTT_DIR $GANTT_BRANCH
- setup_develop $GANTT_DIR
-}
-
-# install_ganttclient() - Collect source and prepare
-function install_ganttclient {
- echo "Install Gantt Client"
-# git_clone $GANTTCLIENT_REPO $GANTTCLIENT_DIR $GANTTCLIENT_BRANCH
-# setup_develop $GANTTCLIENT_DIR
-}
-
-# start_gantt() - Start running processes, including screen
-function start_gantt {
- if is_service_enabled gantt; then
- run_process gantt "$GANTT_BIN_DIR/gantt-scheduler --config-file $GANTT_CONF"
- fi
-}
-
-# stop_gantt() - Stop running processes
-function stop_gantt {
- echo "Stop Gantt"
- stop_process gantt
-}
-
-# Restore xtrace
-$XTRACE
-
-# Tell emacs to use shell-script-mode
-## Local variables:
-## mode: shell-script
-## End:
diff --git a/lib/sahara b/lib/sahara
index cb6ecc3..b3ca32f 100644
--- a/lib/sahara
+++ b/lib/sahara
@@ -124,6 +124,10 @@
if is_service_enabled neutron; then
iniset $SAHARA_CONF_FILE DEFAULT use_neutron true
iniset $SAHARA_CONF_FILE DEFAULT use_floating_ips true
+
+ if is_ssl_enabled_service "neutron" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE neutron ca_file $SSL_BUNDLE_FILE
+ fi
else
iniset $SAHARA_CONF_FILE DEFAULT use_neutron false
iniset $SAHARA_CONF_FILE DEFAULT use_floating_ips false
@@ -131,10 +135,30 @@
if is_service_enabled heat; then
iniset $SAHARA_CONF_FILE DEFAULT infrastructure_engine heat
+
+ if is_ssl_enabled_service "heat" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE heat ca_file $SSL_BUNDLE_FILE
+ fi
else
iniset $SAHARA_CONF_FILE DEFAULT infrastructure_engine direct
fi
+ if is_ssl_enabled_service "cinder" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE cinder ca_file $SSL_BUNDLE_FILE
+ fi
+
+ if is_ssl_enabled_service "nova" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE nova ca_file $SSL_BUNDLE_FILE
+ fi
+
+ if is_ssl_enabled_service "swift" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE swift ca_file $SSL_BUNDLE_FILE
+ fi
+
+ if is_ssl_enabled_service "key" || is_service_enabled tls-proxy; then
+ iniset $SAHARA_CONF_FILE keystone ca_file $SSL_BUNDLE_FILE
+ fi
+
iniset $SAHARA_CONF_FILE DEFAULT use_syslog $SYSLOG
# Format logging
diff --git a/lib/stackforge b/lib/stackforge
deleted file mode 100644
index cc3a689..0000000
--- a/lib/stackforge
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/bin/bash
-#
-# lib/stackforge
-#
-# Functions to install stackforge libraries that we depend on so
-# that we can try their git versions during devstack gate.
-#
-# This is appropriate for python libraries that release to pypi and are
-# expected to be used beyond OpenStack like, but are requirements
-# for core services in global-requirements.
-#
-# * wsme
-# * pecan
-#
-# This is not appropriate for stackforge projects which are early stage
-# OpenStack tools
-
-# Dependencies:
-# ``functions`` file
-
-# ``stack.sh`` calls the entry points in this order:
-#
-# install_stackforge
-
-# Save trace setting
-XTRACE=$(set +o | grep xtrace)
-set +o xtrace
-
-
-# Defaults
-# --------
-WSME_DIR=$DEST/wsme
-PECAN_DIR=$DEST/pecan
-SQLALCHEMY_MIGRATE_DIR=$DEST/sqlalchemy-migrate
-
-# Entry Points
-# ------------
-
-# install_stackforge() - Collect source and prepare
-function install_stackforge {
- git_clone $WSME_REPO $WSME_DIR $WSME_BRANCH
- setup_package $WSME_DIR
-
- git_clone $PECAN_REPO $PECAN_DIR $PECAN_BRANCH
- setup_package $PECAN_DIR
-
- git_clone $SQLALCHEMY_MIGRATE_REPO $SQLALCHEMY_MIGRATE_DIR $SQLALCHEMY_MIGRATE_BRANCH
- setup_package $SQLALCHEMY_MIGRATE_DIR
-}
-
-# Restore xtrace
-$XTRACE
-
-# Local variables:
-# mode: shell-script
-# End:
diff --git a/lib/tempest b/lib/tempest
index 86f30b4..777d03e 100644
--- a/lib/tempest
+++ b/lib/tempest
@@ -95,7 +95,8 @@
# configure_tempest() - Set config files, create data dirs, etc
function configure_tempest {
- setup_develop $TEMPEST_DIR
+ # install testr since its used to process tempest logs
+ pip_install `grep -h testrepository $REQUIREMENTS_DIR/global-requirements.txt | cut -d\# -f1`
local image_lines
local images
local num_images
@@ -319,7 +320,8 @@
# Run verify_tempest_config -ur to retrieve enabled extensions on API endpoints
# NOTE(mtreinish): This must be done after auth settings are added to the tempest config
local tmp_cfg_file=$(mktemp)
- $TEMPEST_DIR/tempest/cmd/verify_tempest_config.py -uro $tmp_cfg_file
+ cd $TEMPEST_DIR
+ tox -evenv -- verify-tempest-config -uro $tmp_cfg_file
local compute_api_extensions=${COMPUTE_API_EXTENSIONS:-"all"}
if [[ ! -z "$DISABLE_COMPUTE_API_EXTENSIONS" ]]; then
diff --git a/stack.sh b/stack.sh
index eaecea0..3f97919 100755
--- a/stack.sh
+++ b/stack.sh
@@ -500,7 +500,6 @@
# Source project function libraries
source $TOP_DIR/lib/infra
source $TOP_DIR/lib/oslo
-source $TOP_DIR/lib/stackforge
source $TOP_DIR/lib/lvm
source $TOP_DIR/lib/horizon
source $TOP_DIR/lib/keystone
@@ -699,11 +698,6 @@
# Install oslo libraries that have graduated
install_oslo
-# Install stackforge libraries for testing
-if is_service_enabled stackforge_libs; then
- install_stackforge
-fi
-
# Install clients libraries
install_keystoneclient
install_glanceclient
diff --git a/stackrc b/stackrc
index ff82140..7bb4cc2 100644
--- a/stackrc
+++ b/stackrc
@@ -436,26 +436,6 @@
#################
#
-# Additional Libraries
-#
-#################
-
-# stackforge libraries that are used by OpenStack core services
-# wsme
-WSME_REPO=${WSME_REPO:-${GIT_BASE}/stackforge/wsme.git}
-WSME_BRANCH=${WSME_BRANCH:-master}
-
-# pecan
-PECAN_REPO=${PECAN_REPO:-${GIT_BASE}/stackforge/pecan.git}
-PECAN_BRANCH=${PECAN_BRANCH:-master}
-
-# sqlalchemy-migrate
-SQLALCHEMY_MIGRATE_REPO=${SQLALCHEMY_MIGRATE_REPO:-${GIT_BASE}/stackforge/sqlalchemy-migrate.git}
-SQLALCHEMY_MIGRATE_BRANCH=${SQLALCHEMY_MIGRATE_BRANCH:-master}
-
-
-#################
-#
# 3rd Party Components (non pip installable)
#
# NOTE(sdague): these should be converted to release version installs or removed
diff --git a/tools/xen/xenrc b/tools/xen/xenrc
index 0cbf861..43a6ce8 100644
--- a/tools/xen/xenrc
+++ b/tools/xen/xenrc
@@ -70,8 +70,8 @@
# XenServer 6.1 and later or XCP 1.6 or later
# 11.10 is only really supported with XenServer 6.0.2 and later
UBUNTU_INST_ARCH="amd64"
-UBUNTU_INST_HTTP_HOSTNAME="mirror.anl.gov"
-UBUNTU_INST_HTTP_DIRECTORY="/pub/ubuntu"
+UBUNTU_INST_HTTP_HOSTNAME="archive.ubuntu.com"
+UBUNTU_INST_HTTP_DIRECTORY="/ubuntu"
UBUNTU_INST_HTTP_PROXY=""
UBUNTU_INST_LOCALE="en_US"
UBUNTU_INST_KEYBOARD="us"
diff --git a/unstack.sh b/unstack.sh
index b8b7f4a..bc439e9 100755
--- a/unstack.sh
+++ b/unstack.sh
@@ -54,7 +54,6 @@
# Source project function libraries
source $TOP_DIR/lib/infra
source $TOP_DIR/lib/oslo
-source $TOP_DIR/lib/stackforge
source $TOP_DIR/lib/lvm
source $TOP_DIR/lib/horizon
source $TOP_DIR/lib/keystone