Migrate DevStack plugin to Ubuntu Bionic

We want to migrate to the latest Ubuntu LTS release 18.04 aka Bionic.
See [0] for the big picture.

This change installs Node.js from Ubuntu packages.

[0] https://etherpad.openstack.org/p/devstack-bionic

Story: 2004474
Task: 28175
Change-Id: I38c6c239597f58fb871171f7e25ac99edf8bf91b
Depends-On: https://review.openstack.org/618169
Depends-On: https://review.openstack.org/619572
This commit is contained in:
Witold Bedyk 2018-11-22 15:01:41 +01:00
parent a6d40d9592
commit 53b8b96494
3 changed files with 14 additions and 30 deletions

View File

@ -1,6 +1,8 @@
- job:
name: monascalog-tempest-base
parent: devstack-tempest
description: |
Job for running tempest tests on monasca-log-api devstack plugin.
timeout: 7800
required-projects:
- openstack-infra/devstack-gate

View File

@ -15,7 +15,7 @@ Vagrant.configure(2) do |config|
config.ssh.forward_agent = true
config.vm.hostname = "devstack"
config.vm.box = "bento/ubuntu-16.04"
config.vm.box = "bento/ubuntu-18.04"
config.vm.network "private_network",ip:"192.168.10.6"
config.vm.synced_folder "~/", "/vagrant_home"
config.vm.provider "virtualbox" do |vb|
@ -113,7 +113,7 @@ MONASCA_METRICS_DB=${MONASCA_METRICS_DB:-influxdb}
# MONASCA_LOG_API_USE_MOD_WSGI=True
# Uncomment one of the following lines and modify accordingly to enable the Monasca DevStack Plugin
enable_plugin monasca-api https://git.openstack.org/openstack/monasca-api
enable_plugin monasca-api https://git.openstack.org/openstack/monasca-api.git
enable_plugin monasca-log-api https://git.openstack.org/openstack/monasca-log-api.git
' > local.conf

View File

@ -33,7 +33,7 @@ source ${MONASCA_LOG_API_DIR}/devstack/lib/config.sh
###############################################################################
function pre_install {
install_elk
install_node_nvm
install_nodejs
install_gate_config_holder
}
@ -120,7 +120,7 @@ function clean_monasca_log {
clean_kibana
clean_elasticsearch
clean_logstash
clean_node_nvm
clean_nodejs
clean_gate_config_holder
}
###############################################################################
@ -660,38 +660,22 @@ function start_monasca_log_agent {
fi
}
function install_node_nvm {
set -i
if [[ ! -f "${HOME}/.nvm/nvm.sh" ]] && is_service_enabled kibana; then
# note(trebskit) we need node to build kibana plugin
# so if kibana is enabled in this environment, let's install node
echo_summary "Install Node ${NODE_JS_VERSION} with NVM ${NVM_VERSION}"
local nvmUrl=https://raw.githubusercontent.com/creationix/nvm/v${NVM_VERSION}/install.sh
local nvmDest
nvmDest=`get_extra_file ${nvmUrl}`
bash ${nvmDest}
fi
function install_nodejs {
if is_service_enabled kibana; then
# refresh installation
apt_get install nodejs npm
(
source "${HOME}"/.nvm/nvm.sh >> /dev/null; \
nvm install ${NODE_JS_VERSION}; \
nvm use ${NODE_JS_VERSION}; \
npm config set registry "http://registry.npmjs.org/"; \
npm config set proxy "${HTTP_PROXY}"; \
npm set strict-ssl false;
)
fi
set +i
}
function clean_node_nvm {
if [[ -f "${HOME}/.nvm/nvm.sh" ]] && is_service_enabled kibana; then
echo_summary "Cleaning Node ${NODE_JS_VERSION} with NVM ${NVM_VERSION}"
sudo rm ${FILES}/nvm_install.sh
sudo rm -rf "${HOME}/.nvm/nvm.sh"
function clean_nodejs {
if is_service_enabled kibana; then
echo_summary "Cleaning Node.js"
apt_get purge nodejs npm
fi
}
@ -712,10 +696,8 @@ function build_kibana_plugin {
monasca_kibana_plugin_version="$(python -c 'import json; \
obj = json.load(open("package.json")); print obj["version"]')"
set -i
(source "${HOME}"/.nvm/nvm.sh >> /dev/null; nvm use ${NODE_JS_VERSION}; npm install)
(source "${HOME}"/.nvm/nvm.sh >> /dev/null; nvm use ${NODE_JS_VERSION}; npm run package)
set +i
npm install
npm run package
local pkg=$MONASCA_KIBANA_PLUGIN_DIR/target/monasca-kibana-plugin-${monasca_kibana_plugin_version}.tar.gz
local easyPkg=$DEST/monasca-kibana-plugin.tar.gz