#!/bin/bash set -ex source $BASE_DIR/admin-openrc DEBIAN_FRONTEND='noninteractive' sudo -E apt install --yes python-gnocchiclient sudo mysql -u root << EOF CREATE DATABASE IF NOT EXISTS gnocchi; GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'localhost' \ IDENTIFIED BY 'gnocchi'; GRANT ALL PRIVILEGES ON gnocchi.* TO 'gnocchi'@'%' \ IDENTIFIED BY 'gnocchi'; EOF while sudo [ ! -d /var/snap/gnocchi/common/etc/gnocchi/ ]; do sleep 0.1; done; sudo cp -r $BASE_DIR/etc/snap-gnocchi/* /var/snap/gnocchi/common/etc/ openstack user show gnocchi || { openstack user create --domain default --password gnocchi gnocchi openstack role add --project service --user gnocchi admin } openstack service show metric || { openstack service create --name gnocchi --description "Metric Service" metric for endpoint in internal admin public; do openstack endpoint create --region RegionOne \ metric $endpoint http://localhost:8041 || : done } # Manually define alias if snap isn't installed from snap store. # Otherwise, snap store defines this alias automatically. snap aliases gnocchi | grep gnocchi-upgrade || sudo snap alias gnocchi.upgrade gnocchi-upgrade sudo gnocchi-upgrade sudo systemctl restart snap.gnocchi.* while ! nc -z localhost 8041; do sleep 0.1; done;