diff --git a/centos_pike_wheels.inc b/centos_pike_wheels.inc index eb37c51f..dc336ad5 100644 --- a/centos_pike_wheels.inc +++ b/centos_pike_wheels.inc @@ -1,17 +1,6 @@ distributedcloud-client-wheels distributedcloud-wheels -gnocchi-wheels -openstack-ceilometer-wheels -openstack-cinder-wheels -openstack-glance-wheels -openstack-heat-wheels -openstack-ironic-wheels openstack-keystone-wheels -openstack-magnum-ui-wheels -openstack-magnum-wheels -openstack-murano-wheels -openstack-neutron-wheels -openstack-nova-wheels python-cinderclient-wheels python-django-horizon-wheels python-glanceclient-wheels @@ -19,11 +8,6 @@ python-gnocchiclient-wheels python-ironicclient-wheels python-magnumclient-wheels python-muranoclient-wheels -python-networking-bgpvpn-wheels -python-networking-odl-wheels -python-networking-sfc-wheels python-neutronclient-wheels -python-neutron-dynamic-routing-wheels -python-neutron-lib-wheels python-novaclient-wheels python-openstacksdk-wheels diff --git a/centos_pkg_dirs b/centos_pkg_dirs index 4610053e..914f3c76 100644 --- a/centos_pkg_dirs +++ b/centos_pkg_dirs @@ -1,38 +1,19 @@ -openstack/openstack-murano openstack/python-muranoclient -openstack/openstack-ironic openstack/python-ironicclient openstack/python-magnumclient -openstack/openstack-magnum -openstack/openstack-magnum-ui openstack/openstack-ras -openstack/openstack-panko -openstack/openstack-panko-config openstack/openstack-os-vif openstack/python-aodhclient openstack/python-barbicanclient -openstack/python-ceilometer -openstack/python-cinder openstack/python-cinderclient -openstack/python-glance -openstack/python-glance-store openstack/python-glanceclient -openstack/python-gnocchi openstack/python-gnocchiclient -openstack/python-heat/openstack-heat openstack/python-heatclient openstack/python-horizon openstack/python-keystone openstack/python-keystoneauth1 openstack/python-keystoneclient -openstack/python-networking-bgpvpn -openstack/python-networking-sfc -openstack/python-networking-odl -openstack/python-neutron -openstack/python-neutron-dynamic-routing -openstack/python-neutron-lib openstack/python-neutronclient -openstack/python-nova openstack/python-novaclient openstack/python-openstackdocstheme openstack/python-oslo-service diff --git a/centos_stable_wheels.inc b/centos_stable_wheels.inc index eb37c51f..dc336ad5 100644 --- a/centos_stable_wheels.inc +++ b/centos_stable_wheels.inc @@ -1,17 +1,6 @@ distributedcloud-client-wheels distributedcloud-wheels -gnocchi-wheels -openstack-ceilometer-wheels -openstack-cinder-wheels -openstack-glance-wheels -openstack-heat-wheels -openstack-ironic-wheels openstack-keystone-wheels -openstack-magnum-ui-wheels -openstack-magnum-wheels -openstack-murano-wheels -openstack-neutron-wheels -openstack-nova-wheels python-cinderclient-wheels python-django-horizon-wheels python-glanceclient-wheels @@ -19,11 +8,6 @@ python-gnocchiclient-wheels python-ironicclient-wheels python-magnumclient-wheels python-muranoclient-wheels -python-networking-bgpvpn-wheels -python-networking-odl-wheels -python-networking-sfc-wheels python-neutronclient-wheels -python-neutron-dynamic-routing-wheels -python-neutron-lib-wheels python-novaclient-wheels python-openstacksdk-wheels diff --git a/openstack/openstack-aodh-config/centos/build_srpm.data b/openstack/openstack-aodh-config/centos/build_srpm.data deleted file mode 100644 index da1e20bd..00000000 --- a/openstack/openstack-aodh-config/centos/build_srpm.data +++ /dev/null @@ -1,2 +0,0 @@ -SRC_DIR="files" -TIS_PATCH_VER=0 diff --git a/openstack/openstack-aodh-config/centos/openstack-aodh-config.spec b/openstack/openstack-aodh-config/centos/openstack-aodh-config.spec deleted file mode 100644 index 4481cc65..00000000 --- a/openstack/openstack-aodh-config/centos/openstack-aodh-config.spec +++ /dev/null @@ -1,56 +0,0 @@ -# -# SPDX-License-Identifier: Apache-2.0 -# -# Copyright (C) 2019 Intel Corporation -# -Summary: openstack-aodh-config -Name: openstack-aodh-config -Version: 1.0 -Release: %{tis_patch_ver}%{?_tis_dist} -License: Apache-2.0 -Group: openstack -Packager: StarlingX -URL: unknown -BuildArch: noarch -Source: %name-%version.tar.gz - -Requires: openstack-aodh-common -Requires: openstack-aodh-api -Requires: openstack-aodh-evaluator -Requires: openstack-aodh-notifier -Requires: openstack-aodh-expirer -Requires: openstack-aodh-listener - -Summary: package StarlingX configuration files of openstack-aodh to system folder. - -%description -package StarlingX configuration files of openstack-aodh to system folder. - -%prep -%setup - -%build - -%install -%{__install} -d %{buildroot}%{_sysconfdir}/systemd/system -%{__install} -d %{buildroot}%{_bindir} - -%{__install} -m 0644 openstack-aodh-api.service %{buildroot}%{_sysconfdir}/systemd/system/openstack-aodh-api.service -%{__install} -m 0644 openstack-aodh-evaluator.service %{buildroot}%{_sysconfdir}/systemd/system/openstack-aodh-evaluator.service -%{__install} -m 0644 openstack-aodh-expirer.service %{buildroot}%{_sysconfdir}/systemd/system/openstack-aodh-expirer.service -%{__install} -m 0644 openstack-aodh-listener.service %{buildroot}%{_sysconfdir}/systemd/system/openstack-aodh-listener.service -%{__install} -m 0644 openstack-aodh-notifier.service %{buildroot}%{_sysconfdir}/systemd/system/openstack-aodh-notifier.service -%{__install} -m 0750 aodh-expirer-active %{buildroot}%{_bindir}/aodh-expirer-active - -%post -if test -s %{_sysconfdir}/logrotate.d/openstack-aodh ; then - echo '#See /etc/logrotate.d/syslog for aodh rules' > %{_sysconfdir}/logrotate.d/openstack-aodh -fi - -%files -%{_sysconfdir}/systemd/system/openstack-aodh-api.service -%{_sysconfdir}/systemd/system/openstack-aodh-evaluator.service -%{_sysconfdir}/systemd/system/openstack-aodh-expirer.service -%{_sysconfdir}/systemd/system/openstack-aodh-listener.service -%{_sysconfdir}/systemd/system/openstack-aodh-notifier.service -%{_bindir}/aodh-expirer-active diff --git a/openstack/openstack-aodh-config/files/aodh-expirer-active b/openstack/openstack-aodh-config/files/aodh-expirer-active deleted file mode 100644 index 796a6944..00000000 --- a/openstack/openstack-aodh-config/files/aodh-expirer-active +++ /dev/null @@ -1,61 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run aodh-expirer when on active controller only -# -AODH_EXPIRER_INFO="/var/run/aodh-expirer.info" -AODH_EXPIRER_CMD="/usr/bin/nice -n 2 /usr/bin/aodh-expirer" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${AODH_EXPIRER_INFO} ] - then - echo delay_count=0 > ${AODH_EXPIRER_INFO} - fi - - source ${AODH_EXPIRER_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - sh -c "exec taskset -c $idle_core ${AODH_EXPIRER_CMD}" - sed -i "/delay_count/s/=.*/=0/" ${AODH_EXPIRER_INFO} - exit 0 - fi - fi - - if [ "$delay_count" -lt "3" ] - then - newval=$(($delay_count+1)) - sed -i "/delay_count/s/=.*/=$newval/" ${AODH_EXPIRER_INFO} - (sleep 3600; /usr/bin/aodh-expirer-active) & - exit 0 - fi - fi - - eval ${AODH_EXPIRER_CMD} - sed -i "/delay_count/s/=.*/=0/" ${AODH_EXPIRER_INFO} -fi - -exit 0 diff --git a/openstack/openstack-aodh-config/files/openstack-aodh-api.service b/openstack/openstack-aodh-config/files/openstack-aodh-api.service deleted file mode 100644 index d75ccc01..00000000 --- a/openstack/openstack-aodh-config/files/openstack-aodh-api.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Alarm API service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/bin/python /usr/bin/gunicorn --config /usr/share/aodh/aodh-api.conf --pythonpath /usr/share/aodh aodh-api - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-aodh-config/files/openstack-aodh-evaluator.service b/openstack/openstack-aodh-config/files/openstack-aodh-evaluator.service deleted file mode 100644 index 2f88561a..00000000 --- a/openstack/openstack-aodh-config/files/openstack-aodh-evaluator.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Alarm evaluator service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/aodh-evaluator - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-aodh-config/files/openstack-aodh-expirer.service b/openstack/openstack-aodh-config/files/openstack-aodh-expirer.service deleted file mode 100644 index 735f3b64..00000000 --- a/openstack/openstack-aodh-config/files/openstack-aodh-expirer.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Alarm expirer service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/aodh-expirer - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-aodh-config/files/openstack-aodh-listener.service b/openstack/openstack-aodh-config/files/openstack-aodh-listener.service deleted file mode 100644 index dd51d42f..00000000 --- a/openstack/openstack-aodh-config/files/openstack-aodh-listener.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Alarm listener service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/aodh-listener - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-aodh-config/files/openstack-aodh-notifier.service b/openstack/openstack-aodh-config/files/openstack-aodh-notifier.service deleted file mode 100644 index 5c4691fc..00000000 --- a/openstack/openstack-aodh-config/files/openstack-aodh-notifier.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Alarm notifier service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/aodh-notifier - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-aodh/centos/build_srpm.data b/openstack/openstack-aodh/centos/build_srpm.data deleted file mode 100644 index c66bf348..00000000 --- a/openstack/openstack-aodh/centos/build_srpm.data +++ /dev/null @@ -1 +0,0 @@ -TIS_PATCH_VER=7 diff --git a/openstack/openstack-aodh/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/openstack/openstack-aodh/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch deleted file mode 100644 index 501aadc3..00000000 --- a/openstack/openstack-aodh/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 21b64cda6c2cd29c287c08c85962609f8d93d18f Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Mon, 2 Oct 2017 14:28:46 -0400 -Subject: [PATCH 2/6] WRS: 0001-Update-package-versioning-for-TIS-format.patch - -Signed-off-by: zhipengl ---- - SPECS/openstack-aodh.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/openstack-aodh.spec b/SPECS/openstack-aodh.spec -index 9fffb3c..01615e7 100644 ---- a/SPECS/openstack-aodh.spec -+++ b/SPECS/openstack-aodh.spec -@@ -4,7 +4,7 @@ - - Name: openstack-aodh - Version: 5.1.0 --Release: 1%{?dist} -+Release: 1.el7%{?_tis_dist}.%{tis_patch_ver} - Summary: OpenStack Telemetry Alarming - License: ASL 2.0 - URL: https://github.com/openstack/aodh.git --- -1.8.3.1 - diff --git a/openstack/openstack-aodh/centos/meta_patches/PATCH_ORDER b/openstack/openstack-aodh/centos/meta_patches/PATCH_ORDER deleted file mode 100644 index 6b6d3c42..00000000 --- a/openstack/openstack-aodh/centos/meta_patches/PATCH_ORDER +++ /dev/null @@ -1,2 +0,0 @@ -0001-Update-package-versioning-for-TIS-format.patch -spec-include-TiS-patches.patch diff --git a/openstack/openstack-aodh/centos/meta_patches/spec-include-TiS-patches.patch b/openstack/openstack-aodh/centos/meta_patches/spec-include-TiS-patches.patch deleted file mode 100644 index 2b307a03..00000000 --- a/openstack/openstack-aodh/centos/meta_patches/spec-include-TiS-patches.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 8620101244ea5be1ff0cc0e127fa57dca4be468a Mon Sep 17 00:00:00 2001 -From: Scott Little -Date: Mon, 2 Oct 2017 14:28:46 -0400 -Subject: [PATCH] WRS: spec-include-TiS-patches.patch - -Signed-off-by: zhipengl ---- - SPECS/openstack-aodh.spec | 16 +++++++++++++--- - 1 file changed, 13 insertions(+), 3 deletions(-) - -diff --git a/SPECS/openstack-aodh.spec b/SPECS/openstack-aodh.spec -index 01615e7..f840861 100644 ---- a/SPECS/openstack-aodh.spec -+++ b/SPECS/openstack-aodh.spec -@@ -18,6 +18,9 @@ Source12: %{name}-notifier.service - Source13: %{name}-expirer.service - Source14: %{name}-listener.service - -+#WRS: Include patches here: -+Patch1: 0001-modify-aodh-api.patch -+Patch2: 0002-Add-drivername-support-for-postgresql-connection-set.patch - BuildArch: noarch - - BuildRequires: openstack-macros -@@ -212,6 +215,10 @@ This package contains the Aodh test files. - %prep - %setup -q -n %{pypi_name}-%{upstream_version} - -+#WRS: Apply patches here -+%patch1 -p1 -+%patch2 -p1 -+ - find . \( -name .gitignore -o -name .placeholder \) -delete - - find aodh -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + -@@ -259,10 +266,12 @@ install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/aodh/aodh-dist.conf - install -p -D -m 640 aodh/aodh.conf %{buildroot}%{_sysconfdir}/aodh/aodh.conf - install -p -D -m 640 aodh/api/policy.json %{buildroot}%{_sysconfdir}/aodh/policy.json - -+#WRS -+install -p -D -m 640 aodh/api/aodh-api.py %{buildroot}%{_datadir}/aodh/aodh-api.py - # Setup directories - install -d -m 755 %{buildroot}%{_sharedstatedir}/aodh - install -d -m 755 %{buildroot}%{_sharedstatedir}/aodh/tmp --install -d -m 750 %{buildroot}%{_localstatedir}/log/aodh -+install -d -m 755 %{buildroot}%{_localstatedir}/log/aodh - - # Install logrotate - install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/%{name} -@@ -340,12 +349,12 @@ exit 0 - %files common -f %{pypi_name}.lang - %doc README.rst - %dir %{_sysconfdir}/aodh -+%{_datadir}/aodh/aodh-api.* - %attr(-, root, aodh) %{_datadir}/aodh/aodh-dist.conf - %config(noreplace) %attr(-, root, aodh) %{_sysconfdir}/aodh/aodh.conf - %config(noreplace) %attr(-, root, aodh) %{_sysconfdir}/aodh/policy.json - %config(noreplace) %{_sysconfdir}/logrotate.d/%{name} --%dir %attr(0750, aodh, root) %{_localstatedir}/log/aodh --%{_bindir}/aodh-dbsync -+%dir %attr(0755, aodh, root) %{_localstatedir}/log/aodh - %{_bindir}/aodh-config-generator - - %defattr(-, aodh, aodh, -) -@@ -353,6 +362,7 @@ exit 0 - %dir %{_sharedstatedir}/aodh/tmp - - %files api -+%{_bindir}/aodh-dbsync - %{_bindir}/aodh-api - %{_unitdir}/%{name}-api.service - --- -2.7.4 - diff --git a/openstack/openstack-aodh/centos/patches/0001-modify-aodh-api.patch b/openstack/openstack-aodh/centos/patches/0001-modify-aodh-api.patch deleted file mode 100644 index 5e8f528e..00000000 --- a/openstack/openstack-aodh/centos/patches/0001-modify-aodh-api.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 4307eaa7d2cf3dbcf1eb25c7b2636aeaef13b6c7 Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Wed, 15 Feb 2017 15:59:26 -0500 -Subject: [PATCH 1/2] modify-aodh-api - ---- - aodh/api/aodh-api.py | 7 +++++++ - aodh/api/app.py | 12 +++++++++--- - 2 files changed, 16 insertions(+), 3 deletions(-) - create mode 100644 aodh/api/aodh-api.py - -diff --git a/aodh/api/aodh-api.py b/aodh/api/aodh-api.py -new file mode 100644 -index 0000000..565f2e3 ---- /dev/null -+++ b/aodh/api/aodh-api.py -@@ -0,0 +1,7 @@ -+from aodh.api import app as build_wsgi_app -+import sys -+ -+sys.argv = sys.argv[:1] -+args = {'config_file' : 'etc/aodh/aodh.conf', } -+application = build_wsgi_app.build_wsgi_app(None, args) -+ -diff --git a/aodh/api/app.py b/aodh/api/app.py -index b7c0900..ba0a438 100644 ---- a/aodh/api/app.py -+++ b/aodh/api/app.py -@@ -53,7 +53,7 @@ def setup_app(root, conf): - ) - - --def load_app(conf): -+def load_app(conf, args): - global APPCONFIGS - - # Build the WSGI app -@@ -64,6 +64,12 @@ def load_app(conf): - if cfg_path is None or not os.path.exists(cfg_path): - raise cfg.ConfigFilesNotFoundError([conf.api.paste_config]) - -+ config = dict([(key, value) for key, value in args.iteritems() -+ if key in conf and value is not None]) -+ for key, value in config.iteritems(): -+ if key == 'config_file': -+ conf.config_file = value -+ - config = dict(conf=conf) - configkey = str(uuid.uuid4()) - APPCONFIGS[configkey] = config -@@ -83,5 +89,5 @@ def app_factory(global_config, **local_conf): - return setup_app(root=local_conf.get('root'), **appconfig) - - --def build_wsgi_app(argv=None): -- return load_app(service.prepare_service(argv=argv)) -+def build_wsgi_app(argv=None, args=None): -+ return load_app(service.prepare_service(argv=argv), args) --- -2.7.4 - diff --git a/openstack/openstack-aodh/centos/patches/0002-Add-drivername-support-for-postgresql-connection-set.patch b/openstack/openstack-aodh/centos/patches/0002-Add-drivername-support-for-postgresql-connection-set.patch deleted file mode 100644 index 54260d21..00000000 --- a/openstack/openstack-aodh/centos/patches/0002-Add-drivername-support-for-postgresql-connection-set.patch +++ /dev/null @@ -1,37 +0,0 @@ -From c322e9795933ff8665d7590f082672bd839df431 Mon Sep 17 00:00:00 2001 -From: Al Bailey -Date: Thu, 21 Dec 2017 13:38:09 -0600 -Subject: [PATCH 2/2] Add drivername support for postgresql connection settings - ---- - aodh/api/aodh-api.py | 3 +-- - setup.cfg | 1 + - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/aodh/api/aodh-api.py b/aodh/api/aodh-api.py -index 565f2e3..7c413d6 100644 ---- a/aodh/api/aodh-api.py -+++ b/aodh/api/aodh-api.py -@@ -2,6 +2,5 @@ from aodh.api import app as build_wsgi_app - import sys - - sys.argv = sys.argv[:1] --args = {'config_file' : 'etc/aodh/aodh.conf', } -+args = {'config_file': 'etc/aodh/aodh.conf', } - application = build_wsgi_app.build_wsgi_app(None, args) -- -diff --git a/setup.cfg b/setup.cfg -index 5bfc817..8f8db57 100644 ---- a/setup.cfg -+++ b/setup.cfg -@@ -64,6 +64,7 @@ aodh.storage = - mysql = aodh.storage.impl_sqlalchemy:Connection - mysql+pymysql = aodh.storage.impl_sqlalchemy:Connection - postgresql = aodh.storage.impl_sqlalchemy:Connection -+ postgresql+psycopg2 = aodh.storage.impl_sqlalchemy:Connection - sqlite = aodh.storage.impl_sqlalchemy:Connection - aodh.alarm.rule = - threshold = aodh.api.controllers.v2.alarm_rules.threshold:AlarmThresholdRule --- -2.7.4 - diff --git a/openstack/openstack-aodh/centos/srpm_path b/openstack/openstack-aodh/centos/srpm_path deleted file mode 100644 index e5958a5a..00000000 --- a/openstack/openstack-aodh/centos/srpm_path +++ /dev/null @@ -1 +0,0 @@ -mirror:Source/openstack-aodh-5.1.0-1.el7.src.rpm diff --git a/openstack/openstack-ironic/centos/build_srpm.data b/openstack/openstack-ironic/centos/build_srpm.data deleted file mode 100644 index 08fb79a1..00000000 --- a/openstack/openstack-ironic/centos/build_srpm.data +++ /dev/null @@ -1,6 +0,0 @@ -TAR_NAME="ironic" -SRC_DIR="$CGCS_BASE/git/ironic" -COPY_LIST="$FILES_BASE/*" - -TIS_BASE_SRCREV=47179d9fca337f32324f8e8a68541358fdac8649 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/openstack-ironic/centos/files/ironic-dist.conf b/openstack/openstack-ironic/centos/files/ironic-dist.conf deleted file mode 100644 index 1e9334b6..00000000 --- a/openstack/openstack-ironic/centos/files/ironic-dist.conf +++ /dev/null @@ -1,4 +0,0 @@ -[DEFAULT] -log_dir = /var/log/ironic -state_path = /var/lib/ironic -use_stderr = True diff --git a/openstack/openstack-ironic/centos/files/ironic-rootwrap-sudoers b/openstack/openstack-ironic/centos/files/ironic-rootwrap-sudoers deleted file mode 100644 index f03c027b..00000000 --- a/openstack/openstack-ironic/centos/files/ironic-rootwrap-sudoers +++ /dev/null @@ -1,2 +0,0 @@ -Defaults:ironic !requiretty -ironic ALL = (root) NOPASSWD: /usr/bin/ironic-rootwrap /etc/ironic/rootwrap.conf * diff --git a/openstack/openstack-ironic/centos/files/openstack-ironic-api.service b/openstack/openstack-ironic/centos/files/openstack-ironic-api.service deleted file mode 100644 index 32b3251f..00000000 --- a/openstack/openstack-ironic/centos/files/openstack-ironic-api.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=OpenStack Ironic API service -After=syslog.target network.target - -[Service] -Type=simple -User=ironic -ExecStart=/usr/bin/ironic-api - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/openstack-ironic/centos/files/openstack-ironic-conductor.service b/openstack/openstack-ironic/centos/files/openstack-ironic-conductor.service deleted file mode 100644 index d0e6f38c..00000000 --- a/openstack/openstack-ironic/centos/files/openstack-ironic-conductor.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=OpenStack Ironic Conductor service -After=syslog.target network.target - -[Service] -Type=simple -User=ironic -ExecStart=/usr/bin/ironic-conductor - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/openstack-ironic/centos/openstack-ironic.spec b/openstack/openstack-ironic/centos/openstack-ironic.spec deleted file mode 100644 index 2f66539e..00000000 --- a/openstack/openstack-ironic/centos/openstack-ironic.spec +++ /dev/null @@ -1,297 +0,0 @@ -%global full_release ironic-%{version} - -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -Name: openstack-ironic -# Liberty semver reset -# https://review.openstack.org/#/q/I1a161b2c1d1e27268065b6b4be24c8f7a5315afb,n,z -Epoch: 1 -Summary: OpenStack Baremetal Hypervisor API (ironic) -Version: 9.1.2 -Release: 0%{?_tis_dist}.%{tis_patch_ver} -License: ASL 2.0 -URL: http://www.openstack.org -Source0: https://tarballs.openstack.org/ironic/ironic-%{version}.tar.gz - -Source1: openstack-ironic-api.service -Source2: openstack-ironic-conductor.service -Source3: ironic-rootwrap-sudoers -Source4: ironic-dist.conf - -BuildArch: noarch -BuildRequires: openstack-macros -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python2-devel -BuildRequires: python-pbr -BuildRequires: openssl-devel -BuildRequires: libxml2-devel -BuildRequires: libxslt-devel -BuildRequires: gmp-devel -BuildRequires: python-sphinx -BuildRequires: systemd -# Required to compile translation files -BuildRequires: python-babel -# Required to run unit tests -BuildRequires: pysendfile -BuildRequires: python-alembic -BuildRequires: python-automaton -BuildRequires: python-cinderclient -BuildRequires: python-dracclient -BuildRequires: python-eventlet -BuildRequires: python-futurist -BuildRequires: python-glanceclient -BuildRequires: python-ironic-inspector-client -BuildRequires: python-ironic-lib -BuildRequires: python-jinja2 -BuildRequires: python-jsonpatch -BuildRequires: python-jsonschema -BuildRequires: python-keystoneauth1 -BuildRequires: python-keystonemiddleware -BuildRequires: python-mock -BuildRequires: python-neutronclient -BuildRequires: python-oslo-concurrency -BuildRequires: python-oslo-config -BuildRequires: python-oslo-context -BuildRequires: python-oslo-db -BuildRequires: python-oslo-db-tests -BuildRequires: python-oslo-i18n -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-middleware -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-reports -BuildRequires: python-oslo-rootwrap -BuildRequires: python-oslo-serialization -BuildRequires: python-oslo-service -BuildRequires: python-oslo-utils -BuildRequires: python-oslo-versionedobjects -BuildRequires: python-oslotest -BuildRequires: python-osprofiler -BuildRequires: python-os-testr -BuildRequires: python-pbr -BuildRequires: python-pecan -BuildRequires: python-proliantutils -BuildRequires: python-psutil -BuildRequires: python-requests -BuildRequires: python-retrying -BuildRequires: python-scciclient -BuildRequires: python-six -BuildRequires: python-sqlalchemy -BuildRequires: python-stevedore -BuildRequires: python-sushy -BuildRequires: python-swiftclient -BuildRequires: python-testresources -BuildRequires: python-tooz -BuildRequires: python-UcsSdk -BuildRequires: python-webob -BuildRequires: python-wsme -BuildRequires: pysnmp -BuildRequires: pytz - -%prep -%setup -q -n ironic-%{upstream_version} -rm requirements.txt test-requirements.txt - -%build -export PBR_VERSION=%{version} -%{__python2} setup.py build -# Generate i18n files -%{__python2} setup.py compile_catalog -d build/lib/ironic/locale -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root=%{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Create fake egg-info for the tempest plugin -# TODO switch to %{service} everywhere as in openstack-example.spec -%global service ironic -%py2_entrypoint %{service} %{service} - - -# install systemd scripts -mkdir -p %{buildroot}%{_unitdir} -install -p -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir} -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir} - -# install sudoers file -mkdir -p %{buildroot}%{_sysconfdir}/sudoers.d -install -p -D -m 440 %{SOURCE3} %{buildroot}%{_sysconfdir}/sudoers.d/ironic - -mkdir -p %{buildroot}%{_sharedstatedir}/ironic/ -mkdir -p %{buildroot}%{_localstatedir}/log/ironic/ -mkdir -p %{buildroot}%{_sysconfdir}/ironic/rootwrap.d - -#Populate the conf dir -install -p -D -m 640 etc/ironic/ironic.conf.sample %{buildroot}/%{_sysconfdir}/ironic/ironic.conf -install -p -D -m 640 etc/ironic/policy.json %{buildroot}/%{_sysconfdir}/ironic/policy.json -install -p -D -m 640 etc/ironic/rootwrap.conf %{buildroot}/%{_sysconfdir}/ironic/rootwrap.conf -install -p -D -m 640 etc/ironic/rootwrap.d/* %{buildroot}/%{_sysconfdir}/ironic/rootwrap.d/ - -# Install distribution config -install -p -D -m 640 %{SOURCE4} %{buildroot}/%{_datadir}/ironic/ironic-dist.conf - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/ironic/locale/*/LC_*/ironic*po -rm -f %{buildroot}%{python2_sitelib}/ironic/locale/*pot -mv %{buildroot}%{python2_sitelib}/ironic/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang ironic --all-name - - -%description -Ironic provides an API for management and provisioning of physical machines - -%package common -Summary: Ironic common - -Requires: ipmitool -Requires: pysendfile -Requires: python-alembic -Requires: python-automaton >= 0.5.0 -Requires: python-cinderclient >= 3.1.0 -Requires: python-dracclient >= 1.3.0 -Requires: python-eventlet -Requires: python-futurist >= 0.11.0 -Requires: python-glanceclient >= 1:2.7.0 -Requires: python-ironic-inspector-client >= 1.5.0 -Requires: python-ironic-lib >= 2.5.0 -Requires: python-jinja2 -Requires: python-jsonpatch -Requires: python-jsonschema -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-neutronclient >= 6.3.0 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-oslo-rootwrap >= 5.0.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-versionedobjects >= 1.17.0 -Requires: python-osprofiler >= 1.4.0 -Requires: python-pbr -Requires: python-pecan -Requires: python-proliantutils >= 2.4.0 -Requires: python-psutil -Requires: python-requests -Requires: python-retrying -Requires: python-rfc3986 >= 0.3.1 -Requires: python-scciclient >= 0.5.0 -Requires: python-six -Requires: python-sqlalchemy -Requires: python-stevedore >= 1.20.0 -Requires: python-sushy -Requires: python-swiftclient >= 3.2.0 -Requires: python-tooz >= 1.47.0 -Requires: python-UcsSdk >= 0.8.2.2 -Requires: python-webob >= 1.7.1 -Requires: python-wsme -Requires: pysnmp -Requires: pytz - - -Requires(pre): shadow-utils - -%description common -Components common to all OpenStack Ironic services - - -%files common -f ironic.lang -%doc README.rst -%license LICENSE -%{_bindir}/ironic-dbsync -%{_bindir}/ironic-rootwrap -%{python2_sitelib}/ironic -%{python2_sitelib}/ironic-*.egg-info -%exclude %{python2_sitelib}/ironic/tests -%exclude %{python2_sitelib}/ironic_tempest_plugin -%{_sysconfdir}/sudoers.d/ironic -%config(noreplace) %attr(-,root,ironic) %{_sysconfdir}/ironic -%attr(-,ironic,ironic) %{_sharedstatedir}/ironic -%attr(0755,ironic,ironic) %{_localstatedir}/log/ironic -%attr(-, root, ironic) %{_datadir}/ironic/ironic-dist.conf -%exclude %{python2_sitelib}/ironic_tests.egg_info - -%package api -Summary: The Ironic API - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description api -Ironic API for management and provisioning of physical machines - - -%files api -%{_bindir}/ironic-api -%{_unitdir}/openstack-ironic-api.service - -%package conductor -Summary: The Ironic Conductor - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description conductor -Ironic Conductor for management and provisioning of physical machines - -%files conductor -%{_bindir}/ironic-conductor -%{_unitdir}/openstack-ironic-conductor.service - - -%package -n python-ironic-tests -Summary: Ironic tests -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: python-mock -Requires: python-oslotest -Requires: python-os-testr -Requires: python-testresources - -%description -n python-ironic-tests -This package contains the Ironic test files. - -%files -n python-ironic-tests -%{python2_sitelib}/ironic/tests -%{python2_sitelib}/ironic_tempest_plugin -%{python2_sitelib}/%{service}_tests.egg-info - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Fri Nov 03 2017 RDO 1:9.1.2-1 -- Update to 9.1.2 - -* Mon Sep 25 2017 rdo-trunk 1:9.1.1-1 -- Update to 9.1.1 - -* Thu Aug 24 2017 Alfredo Moralejo 1:9.1.0-1 -- Update to 9.1.0 diff --git a/openstack/openstack-magnum-ui/centos/build_srpm.data b/openstack/openstack-magnum-ui/centos/build_srpm.data deleted file mode 100644 index 66c36443..00000000 --- a/openstack/openstack-magnum-ui/centos/build_srpm.data +++ /dev/null @@ -1,6 +0,0 @@ -TAR_NAME="magnum-ui" -SRC_DIR="$CGCS_BASE/git/magnum-ui" - -TIS_BASE_SRCREV=0b9fc50aada1a3e214acaad1204b48c96a549e5f -TIS_PATCH_VER=1 - diff --git a/openstack/openstack-magnum-ui/centos/openstack-magnum-ui.spec b/openstack/openstack-magnum-ui/centos/openstack-magnum-ui.spec deleted file mode 100644 index 70749a21..00000000 --- a/openstack/openstack-magnum-ui/centos/openstack-magnum-ui.spec +++ /dev/null @@ -1,107 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -%global library magnum-ui -%global module magnum_ui - -Name: openstack-%{library} -Version: 3.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Magnum UI Horizon plugin -License: ASL 2.0 -URL: http://launchpad.net/%{library}/ - -Source0: https://tarballs.openstack.org/%{library}/%{library}-%{upstream_version}.tar.gz - -BuildArch: noarch - -BuildRequires: python2-devel -BuildRequires: python-pbr -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: git - -Requires: python-pbr -Requires: python-babel -Requires: python-magnumclient >= 2.0.0 -Requires: openstack-dashboard >= 8.0.0 -Requires: python-django >= 1.8 -Requires: python-django-babel -Requires: python-django-compressor >= 2.0 -Requires: python-django-openstack-auth >= 3.5.0 -Requires: python-django-pyscss >= 2.0.2 - -%description -OpenStack Magnum UI Horizon plugin - -# Documentation package -%package -n python-%{library}-doc -Summary: OpenStack example library documentation - -BuildRequires: python-sphinx -BuildRequires: python-django -BuildRequires: python-django-nose -BuildRequires: openstack-dashboard -BuildRequires: python-openstackdocstheme -BuildRequires: python-magnumclient -BuildRequires: python-mock -BuildRequires: python-mox3 - -%description -n python-%{library}-doc -OpenStack Magnum UI Horizon plugin documentation - -This package contains the documentation. - -%prep -%autosetup -n %{library}-%{upstream_version} -S git -# Let's handle dependencies ourseleves -rm -f *requirements.txt - - -%build -export PBR_VERSION=%{version} -%{__python2} setup.py build -%py2_build_wheel - -# generate html docs -export PYTHONPATH=/usr/share/openstack-dashboard -#%{__python2} setup.py build_sphinx -b html -# remove the sphinx-build leftovers -#rm -rf doc/build/html/.{doctrees,buildinfo} - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Move config to horizon -install -p -D -m 640 %{module}/enabled/_1370_project_container_infra_panel_group.py %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/_1370_project_container_infra_panel_group.py -install -p -D -m 640 %{module}/enabled/_1371_project_container_infra_clusters_panel.py %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/_1371_project_container_infra_clusters_panel.py -install -p -D -m 640 %{module}/enabled/_1372_project_container_infra_cluster_templates_panel.py %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/_1372_project_container_infra_cluster_templates_panel.py - - -%files -%license LICENSE -%{python2_sitelib}/%{module} -%{python2_sitelib}/*.egg-info -%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/_137* - -%files -n python-%{library}-doc -%license LICENSE -#%doc doc/build/html README.rst - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - - -%changelog -* Thu Aug 24 2017 Alfredo Moralejo 3.0.0-1 -- Update to 3.0.0 - diff --git a/openstack/openstack-magnum/centos/build_srpm.data b/openstack/openstack-magnum/centos/build_srpm.data deleted file mode 100644 index ca221269..00000000 --- a/openstack/openstack-magnum/centos/build_srpm.data +++ /dev/null @@ -1,6 +0,0 @@ -TAR_NAME="magnum" -SRC_DIR="$CGCS_BASE/git/magnum" -COPY_LIST="$FILES_BASE/*" - -TIS_BASE_SRCREV=ca4b29087a4af00060870519e5897348ccc61161 -TIS_PATCH_VER=1 diff --git a/openstack/openstack-magnum/centos/files/openstack-magnum-api.service b/openstack/openstack-magnum/centos/files/openstack-magnum-api.service deleted file mode 100644 index d4275f0e..00000000 --- a/openstack/openstack-magnum/centos/files/openstack-magnum-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Magnum API Service -After=syslog.target network.target - -[Service] -Type=simple -User=magnum -ExecStart=/usr/bin/magnum-api -PrivateTmp=true -NotifyAccess=all -KillMode=process -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-magnum/centos/files/openstack-magnum-conductor.service b/openstack/openstack-magnum/centos/files/openstack-magnum-conductor.service deleted file mode 100644 index c6848e5b..00000000 --- a/openstack/openstack-magnum/centos/files/openstack-magnum-conductor.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=Openstack Magnum Conductor Service -After=syslog.target network.target qpidd.service mysqld.service tgtd.service - -[Service] -Type=simple -User=magnum -ExecStart=/usr/bin/magnum-conductor -PrivateTmp=true -NotifyAccess=all -KillMode=process -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-magnum/centos/openstack-magnum.spec b/openstack/openstack-magnum/centos/openstack-magnum.spec deleted file mode 100644 index 3939b942..00000000 --- a/openstack/openstack-magnum/centos/openstack-magnum.spec +++ /dev/null @@ -1,339 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%global service magnum - -Name: openstack-%{service} -Summary: Container Management project for OpenStack -Version: 5.0.1 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -License: ASL 2.0 -URL: https://github.com/openstack/magnum.git - -Source0: https://tarballs.openstack.org/%{service}/%{service}-%{version}.tar.gz - -Source2: %{name}-api.service -Source3: %{name}-conductor.service - -BuildArch: noarch - -BuildRequires: git -BuildRequires: python2-devel -BuildRequires: python-pbr -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-werkzeug -BuildRequires: systemd-units -# Required for config file generation -BuildRequires: python-pycadf -BuildRequires: python-osprofiler - -Requires: %{name}-common = %{version}-%{release} -Requires: %{name}-conductor = %{version}-%{release} -Requires: %{name}-api = %{version}-%{release} - -%description -Magnum is an OpenStack project which offers container orchestration engines -for deploying and managing containers as first class resources in OpenStack. - -%package -n python-%{service} -Summary: Magnum Python libraries - -Requires: python-pbr -Requires: python-babel -Requires: PyYAML -Requires: python-sqlalchemy -Requires: python-wsme -Requires: python-webob -Requires: python-alembic -Requires: python-decorator -Requires: python-docker >= 2.0.0 -Requires: python-enum34 -Requires: python-eventlet -Requires: python-iso8601 -Requires: python-jsonpatch -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-netaddr - -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-versionedobjects >= 1.17.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-osprofiler - -Requires: python-pycadf -Requires: python-pecan - -Requires: python-barbicanclient >= 4.0.0 -Requires: python-glanceclient >= 1:2.8.0 -Requires: python-heatclient >= 1.6.1 -Requires: python-neutronclient >= 6.3.0 -Requires: python-novaclient >= 1:9.0.0 -Requires: python-kubernetes -Requires: python-keystoneclient >= 1:3.8.0 -Requires: python-keystoneauth1 >= 3.1.0 - -Requires: python-cliff >= 2.8.0 -Requires: python-requests -Requires: python-six -Requires: python-stevedore >= 1.20.0 -Requires: python-taskflow -Requires: python-cryptography -Requires: python-werkzeug -Requires: python-marathon - - -%description -n python-%{service} -Magnum is an OpenStack project which offers container orchestration engines -for deploying and managing containers as first class resources in OpenStack. - -%package common -Summary: Magnum common - -Requires: python-%{service} = %{version}-%{release} - -Requires(pre): shadow-utils - -%description common -Components common to all OpenStack Magnum services - -%package conductor -Summary: The Magnum conductor - -Requires: %{name}-common = %{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description conductor -OpenStack Magnum Conductor - -%package api -Summary: The Magnum API - -Requires: %{name}-common = %{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description api -OpenStack-native ReST API to the Magnum Engine - -%if 0%{?with_doc} -%package -n %{name}-doc -Summary: Documentation for OpenStack Magnum - -Requires: python-%{service} = %{version}-%{release} - -BuildRequires: python-sphinx -BuildRequires: python-openstackdocstheme -BuildRequires: python-stevedore -BuildRequires: graphviz - -%description -n %{name}-doc -Magnum is an OpenStack project which offers container orchestration engines -for deploying and managing containers as first class resources in OpenStack. - -This package contains documentation files for Magnum. -%endif - -# tests -%package -n python-%{service}-tests -Summary: Tests for OpenStack Magnum - -Requires: python-%{service} = %{version}-%{release} - -BuildRequires: python-fixtures -BuildRequires: python-hacking -BuildRequires: python-mock -BuildRequires: python-oslotest -BuildRequires: python-os-testr -BuildRequires: python-subunit -BuildRequires: python-testrepository -BuildRequires: python-testscenarios -BuildRequires: python-testtools -BuildRequires: python-tempest -BuildRequires: openstack-macros - -# copy-paste from runtime Requires -BuildRequires: python-babel -BuildRequires: PyYAML -BuildRequires: python-sqlalchemy -BuildRequires: python-wsme -BuildRequires: python-webob -BuildRequires: python-alembic -BuildRequires: python-decorator -BuildRequires: python-docker >= 2.0.0 -BuildRequires: python-enum34 -BuildRequires: python-eventlet -BuildRequires: python-iso8601 -BuildRequires: python-jsonpatch -BuildRequires: python-keystonemiddleware -BuildRequires: python-netaddr - -BuildRequires: python-oslo-concurrency -BuildRequires: python-oslo-config -BuildRequires: python-oslo-context -BuildRequires: python-oslo-db -BuildRequires: python-oslo-i18n -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-middleware -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-serialization -BuildRequires: python-oslo-service -BuildRequires: python-oslo-utils -BuildRequires: python-oslo-versionedobjects -BuildRequires: python2-oslo-versionedobjects-tests -BuildRequires: python-oslo-reports - -BuildRequires: python-pecan - -BuildRequires: python-barbicanclient -BuildRequires: python-glanceclient -BuildRequires: python-heatclient -BuildRequires: python-neutronclient -BuildRequires: python-novaclient -BuildRequires: python-kubernetes -BuildRequires: python-keystoneclient - -BuildRequires: python-requests -BuildRequires: python-six -BuildRequires: python-stevedore -BuildRequires: python-taskflow -BuildRequires: python-cryptography -BuildRequires: python-marathon - -%description -n python-%{service}-tests -Magnum is an OpenStack project which offers container orchestration engines -for deploying and managing containers as first class resources in OpenStack. - -%prep -%autosetup -n %{service}-%{upstream_version} -S git - -# Let's handle dependencies ourselves -rm -rf {test-,}requirements{-bandit,}.txt tools/{pip,test}-requires - -# Remove tests in contrib -find contrib -name tests -type d | xargs rm -rf - -%build -export PBR_VERSION=%{version} -%{__python2} setup.py build -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root=%{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Create fake egg-info for the tempest plugin -%py2_entrypoint %{service} %{service} - -# docs generation requires everything to be installed first -%if 0%{?with_doc} -%{__python2} setup.py build_sphinx -b html -# Fix hidden-file-or-dir warnings -rm -fr doc/build/html/.doctrees doc/build/html/.buildinfo -%endif - -mkdir -p %{buildroot}%{_localstatedir}/log/%{service}/ -mkdir -p %{buildroot}%{_localstatedir}/run/%{service}/ - -# install systemd unit files -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}-api.service -install -p -D -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/%{name}-conductor.service - -mkdir -p %{buildroot}%{_sharedstatedir}/%{service}/ -mkdir -p %{buildroot}%{_sharedstatedir}/%{service}/certificates/ -mkdir -p %{buildroot}%{_sysconfdir}/%{service}/ - -oslo-config-generator --config-file etc/magnum/magnum-config-generator.conf --output-file %{buildroot}%{_sysconfdir}/%{service}/magnum.conf -chmod 640 %{buildroot}%{_sysconfdir}/%{service}/magnum.conf -install -p -D -m 640 etc/magnum/policy.json %{buildroot}%{_sysconfdir}/%{service} -install -p -D -m 640 etc/magnum/api-paste.ini %{buildroot}%{_sysconfdir}/%{service} - -%check -%{__python2} setup.py test || true - -%files -n python-%{service} -%license LICENSE -%{python2_sitelib}/%{service} -%{python2_sitelib}/%{service}-*.egg-info -%exclude %{python2_sitelib}/%{service}/tests - - -%files common -%{_bindir}/magnum-db-manage -%{_bindir}/magnum-driver-manage -%license LICENSE -%dir %attr(0750,%{service},root) %{_localstatedir}/log/%{service} -%dir %attr(0755,%{service},root) %{_localstatedir}/run/%{service} -%dir %attr(0755,%{service},root) %{_sharedstatedir}/%{service} -%dir %attr(0755,%{service},root) %{_sharedstatedir}/%{service}/certificates -%dir %attr(0755,%{service},root) %{_sysconfdir}/%{service} -%config(noreplace) %attr(-, root, %{service}) %{_sysconfdir}/%{service}/magnum.conf -%config(noreplace) %attr(-, root, %{service}) %{_sysconfdir}/%{service}/policy.json -%config(noreplace) %attr(-, root, %{service}) %{_sysconfdir}/%{service}/api-paste.ini -%pre common -# 1870:1870 for magnum - rhbz#845078 -getent group %{service} >/dev/null || groupadd -r --gid 1870 %{service} -getent passwd %{service} >/dev/null || \ -useradd --uid 1870 -r -g %{service} -d %{_sharedstatedir}/%{service} -s /sbin/nologin \ --c "OpenStack Magnum Daemons" %{service} -exit 0 - - -%files conductor -%doc README.rst -%license LICENSE -%{_bindir}/magnum-conductor -%{_unitdir}/%{name}-conductor.service - - -%files api -%doc README.rst -%license LICENSE -%{_bindir}/magnum-api -%{_unitdir}/%{name}-api.service - - -%if 0%{?with_doc} -%files -n %{name}-doc -%license LICENSE -%doc doc/build/html -%endif - -%files -n python-%{service}-tests -%license LICENSE -%{python2_sitelib}/%{service}/tests -%{python2_sitelib}/%{service}_tests.egg-info - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Mon Aug 28 2017 rdo-trunk 5.0.1-1 -- Update to 5.0.1 - -* Thu Aug 24 2017 Alfredo Moralejo 5.0.0-1 -- Update to 5.0.0 diff --git a/openstack/openstack-murano-ui/centos/build_srpm.data b/openstack/openstack-murano-ui/centos/build_srpm.data deleted file mode 100644 index 322d1eed..00000000 --- a/openstack/openstack-murano-ui/centos/build_srpm.data +++ /dev/null @@ -1,5 +0,0 @@ -TAR_NAME="murano-dashboard" -SRC_DIR="$CGCS_BASE/git/murano-dashboard" - -TIS_BASE_SRCREV=c950e248c2dfdc7a040d6984d84ed19c82a04e7d -TIS_PATCH_VER=1 diff --git a/openstack/openstack-murano-ui/centos/openstack-murano-ui.spec b/openstack/openstack-murano-ui/centos/openstack-murano-ui.spec deleted file mode 100644 index 724e03ef..00000000 --- a/openstack/openstack-murano-ui/centos/openstack-murano-ui.spec +++ /dev/null @@ -1,161 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global pypi_name murano-dashboard -%global mod_name muranodashboard - -Name: openstack-murano-ui -Version: 4.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: The UI component for the OpenStack murano service -Group: Applications/Communications -License: ASL 2.0 -URL: https://github.com/openstack/%{pypi_name} -Source0: https://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{upstream_version}.tar.gz -# - -BuildRequires: gettext -BuildRequires: git -BuildRequires: openstack-dashboard -BuildRequires: python-beautifulsoup4 -BuildRequires: python-castellan -BuildRequires: python-devel -BuildRequires: python-django-formtools -BuildRequires: python-django-nose -BuildRequires: python-mock -BuildRequires: python-mox3 -BuildRequires: python-muranoclient -BuildRequires: python-nose -BuildRequires: python-openstack-nose-plugin -BuildRequires: python-oslo-config >= 2:3.14.0 -BuildRequires: python-pbr >= 1.6 -BuildRequires: python-semantic-version -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-testtools -BuildRequires: python-yaql >= 1.1.0 -BuildRequires: tsconfig -Requires: openstack-dashboard -Requires: PyYAML >= 3.10 -Requires: python-babel >= 2.3.4 -Requires: python-beautifulsoup4 -Requires: python-castellan >= 0.7.0 -Requires: python-django >= 1.8 -Requires: python-django-babel -Requires: python-django-formtools -Requires: python-iso8601 >= 0.1.11 -Requires: python-muranoclient >= 0.8.2 -Requires: python-oslo-log >= 3.22.0 -Requires: python-pbr -Requires: python-semantic-version -Requires: python-six >= 1.9.0 -Requires: python-yaql >= 1.1.0 -Requires: pytz -BuildArch: noarch - -%description -Murano Dashboard -Sytem package - murano-dashboard -Python package - murano-dashboard -Murano Dashboard is an extension for OpenStack Dashboard that provides a UI -for Murano. With murano-dashboard, a user is able to easily manage and control -an application catalog, running applications and created environments alongside -with all other OpenStack resources. - -%package doc -Summary: Documentation for OpenStack murano dashboard -BuildRequires: python-sphinx -BuildRequires: python-openstackdocstheme -BuildRequires: python-reno - -%description doc -Murano Dashboard is an extension for OpenStack Dashboard that provides a UI -for Murano. With murano-dashboard, a user is able to easily manage and control -an application catalog, running applications and created environments alongside -with all other OpenStack resources. -This package contains the documentation. - -%prep -%autosetup -n %{pypi_name}-%{upstream_version} -S git -# Let RPM handle the dependencies -rm -rf {test-,}requirements.txt tools/{pip,test}-requires - -# disable warning-is-error, this project has intersphinx in docs -# so some warnings are generated in network isolated build environment -# as koji -sed -i 's/^warning-is-error.*/warning-is-error = 0/g' setup.cfg - -%build -export PBR_VERSION=%{version} -%py2_build -# Generate i18n files -pushd build/lib/%{mod_name} -django-admin compilemessages -popd -# generate html docs -export OSLO_PACKAGE_VERSION=%{upstream_version} -%{__python2} setup.py build_sphinx -b html -# remove the sphinx-build leftovers -rm -rf doc/build/html/.{doctrees,buildinfo} -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%py2_install -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ -mkdir -p %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled -mkdir -p %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/local_settings.d -mkdir -p %{buildroot}/var/cache/murano-dashboard -# Enable Horizon plugin for murano-dashboard -cp %{_builddir}/%{pypi_name}-%{upstream_version}/muranodashboard/local/local_settings.d/_50_murano.py %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/local_settings.d/ -cp %{_builddir}/%{pypi_name}-%{upstream_version}/muranodashboard/local/enabled/_*.py %{buildroot}%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/ - -# install policy file, makes horizon side bar dissapear without it. Can be fixed by refreshing page, but annoying -install -p -D -m 644 muranodashboard/conf/murano_policy.json %{buildroot}%{_sysconfdir}/openstack-dashboard/murano_policy.json - -%check -export PYTHONPATH="%{_datadir}/openstack-dashboard:%{python2_sitearch}:%{python2_sitelib}:%{buildroot}%{python2_sitelib}" -#%{__python2} manage.py test muranodashboard --settings=muranodashboard.tests.settings - -%post -HORIZON_SETTINGS='/etc/openstack-dashboard/local_settings' -if grep -Eq '^METADATA_CACHE_DIR=' $HORIZON_SETTINGS; then - sed -i '/^METADATA_CACHE_DIR=/{s#.*#METADATA_CACHE_DIR="/var/cache/murano-dashboard"#}' $HORIZON_SETTINGS -else - sed -i '$aMETADATA_CACHE_DIR="/var/cache/murano-dashboard"' $HORIZON_SETTINGS -fi -%systemd_postun_with_restart httpd.service - -%postun -%systemd_postun_with_restart httpd.service - -%files -%license LICENSE -%doc README.rst -%{python2_sitelib}/muranodashboard -%{python2_sitelib}/murano_dashboard*.egg-info -%{_datadir}/openstack-dashboard/openstack_dashboard/local/local_settings.d/* -%{_datadir}/openstack-dashboard/openstack_dashboard/local/enabled/* -%dir %attr(755, apache, apache) /var/cache/murano-dashboard -%{_sysconfdir}/openstack-dashboard/murano_policy.json - -%files doc -%license LICENSE -%doc doc/build/html - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 4.0.0-1 -- Update to 4.0.0 - -* Thu Aug 24 2017 Alfredo Moralejo 4.0.0-0.1.0rc2 -- Update to 4.0.0.0rc2 - diff --git a/openstack/openstack-murano/centos/build_srpm.data b/openstack/openstack-murano/centos/build_srpm.data deleted file mode 100644 index f55b5c88..00000000 --- a/openstack/openstack-murano/centos/build_srpm.data +++ /dev/null @@ -1,6 +0,0 @@ -TAR_NAME="murano" -SRC_DIR="$CGCS_BASE/git/murano" -COPY_LIST="$FILES_BASE/*" - -TIS_BASE_SRCREV=de53ba8f9a97ad30c492063d9cc497ca56093e38 -TIS_PATCH_VER=1 diff --git a/openstack/openstack-murano/centos/files/openstack-murano-api.service b/openstack/openstack-murano/centos/files/openstack-murano-api.service deleted file mode 100644 index dc7f88f2..00000000 --- a/openstack/openstack-murano/centos/files/openstack-murano-api.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=OpenStack Murano API Service -After=syslog.target network.target mysqld.service - -[Service] -Type=simple -User=murano -ExecStart=/usr/bin/murano-api --config-file /etc/murano/murano.conf -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-murano/centos/files/openstack-murano-cf-api.service b/openstack/openstack-murano/centos/files/openstack-murano-cf-api.service deleted file mode 100644 index d406c5fb..00000000 --- a/openstack/openstack-murano/centos/files/openstack-murano-cf-api.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=OpenStack Murano Cloud Foundry API Service -After=syslog.target network.target mysqld.service - -[Service] -Type=simple -User=murano -ExecStart=/usr/bin/murano-cfapi --config-file /etc/murano/murano.conf -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-murano/centos/files/openstack-murano-engine.service b/openstack/openstack-murano/centos/files/openstack-murano-engine.service deleted file mode 100644 index 132a0693..00000000 --- a/openstack/openstack-murano/centos/files/openstack-murano-engine.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Openstack Murano Engine Service -After=syslog.target network.target mysqld.service openstack-keystone.service - -[Service] -Type=simple -User=murano -ExecStart=/usr/bin/murano-engine --config-file /etc/murano/murano.conf -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/openstack-murano/centos/openstack-murano.spec b/openstack/openstack-murano/centos/openstack-murano.spec deleted file mode 100644 index c30efbe2..00000000 --- a/openstack/openstack-murano/centos/openstack-murano.spec +++ /dev/null @@ -1,304 +0,0 @@ -%global pypi_name murano - -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -%if 0%{?fedora} -%global with_python3 1 -%{!?python3_shortver: %global python3_shortver %(%{__python3} -c 'import sys; print(str(sys.version_info.major) + "." + str(sys.version_info.minor))')} -%endif - -Name: openstack-%{pypi_name} -Version: 4.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Murano Service - -License: ASL 2.0 -URL: https://pypi.python.org/pypi/murano -Source0: https://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{upstream_version}.tar.gz -# - -Source1: openstack-murano-api.service -Source2: openstack-murano-engine.service -Source4: openstack-murano-cf-api.service - -BuildArch: noarch - -BuildRequires: git -BuildRequires: python2-devel -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-jsonschema >= 2.0.0 -BuildRequires: python-keystonemiddleware -BuildRequires: python-oslo-config -BuildRequires: python-oslo-db -BuildRequires: python-oslo-i18n -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-middleware -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-serialization -BuildRequires: python-oslo-service -BuildRequires: python-openstackdocstheme -BuildRequires: python-pbr >= 2.0.0 -BuildRequires: python-routes >= 2.3.1 -BuildRequires: python-sphinx -BuildRequires: python-sphinxcontrib-httpdomain -BuildRequires: python-castellan -BuildRequires: pyOpenSSL -BuildRequires: systemd -BuildRequires: openstack-macros -# Required to compile translation files -BuildRequires: python-babel - -%description -Murano Project introduces an application catalog service - -# MURANO-COMMON -%package common -Summary: Murano common -Requires: python-alembic >= 0.8.7 -Requires: python-babel >= 2.3.4 -Requires: python-debtcollector >= 1.2.0 -Requires: python-eventlet >= 0.18.2 -Requires: python-iso8601 >= 0.1.9 -Requires: python-jsonpatch >= 1.1 -Requires: python-jsonschema >= 2.0.0 -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-kombu >= 1:4.0.0 -Requires: python-netaddr >= 0.7.13 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-paste -Requires: python-paste-deploy >= 1.5.0 -Requires: python-pbr >= 2.0.0 -Requires: python-psutil >= 3.2.2 -Requires: python-congressclient >= 1.3.0 -Requires: python-heatclient >= 1.6.1 -Requires: python-keystoneclient >= 1:3.8.0 -Requires: python-mistralclient >= 3.1.0 -Requires: python-muranoclient >= 0.8.2 -Requires: python-neutronclient >= 6.3.0 -Requires: PyYAML >= 3.10 -Requires: python-routes >= 2.3.1 -Requires: python-semantic_version >= 2.3.1 -Requires: python-six >= 1.9.0 -Requires: python-stevedore >= 1.20.0 -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-tenacity >= 3.2.1 -Requires: python-webob >= 1.7.1 -Requires: python-yaql >= 1.1.0 -Requires: python-castellan >= 0.7.0 -Requires: %{name}-doc = %{version}-%{release} - -%description common -Components common to all OpenStack Murano services - -# MURANO-ENGINE -%package engine -Summary: The Murano engine -Group: Applications/System -Requires: %{name}-common = %{version}-%{release} - -%description engine -OpenStack Murano Engine daemon - -# MURANO-API -%package api -Summary: The Murano API -Group: Applications/System -Requires: %{name}-common = %{version}-%{release} - -%description api -OpenStack rest API to the Murano Engine - -# MURANO-CF-API -%package cf-api -Summary: The Murano Cloud Foundry API -Group: System Environment/Base -Requires: %{name}-common = %{version}-%{release} - -%description cf-api -OpenStack rest API for Murano to the Cloud Foundry - -%if 0%{?with_doc} -%package doc -Summary: Documentation for OpenStack Murano services - -%description doc -This package contains documentation files for Murano. -%endif - -%package -n python-murano-tests -Summary: Murano tests -Requires: %{name}-common = %{version}-%{release} - -%description -n python-murano-tests -This package contains the murano test files. - -%prep -%autosetup -S git -n %{pypi_name}-%{upstream_version} - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -rm -rf {test-,}requirements.txt tools/{pip,test}-requires - -%build -export PBR_VERSION=%{version} -%{__python2} setup.py build -# Generate i18n files -%{__python2} setup.py compile_catalog -d build/lib/%{pypi_name}/locale -# Generate sample config and add the current directory to PYTHONPATH so -# oslo-config-generator doesn't skip heat's entry points. -PYTHONPATH=. oslo-config-generator --config-file=./etc/oslo-config-generator/murano.conf -PYTHONPATH=. oslo-config-generator --config-file=./etc/oslo-config-generator/murano-cfapi.conf -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Create fake egg-info for the tempest plugin -# TODO switch to %{service} everywhere as in openstack-example.spec -%global service murano -%py2_entrypoint %{service} %{service} - -# DOCs - -pushd doc - -%if 0%{?with_doc} -SPHINX_DEBUG=1 sphinx-build -b html source build/html -# Fix hidden-file-or-dir warnings -rm -fr build/html/.doctrees build/html/.buildinfo -%endif - -popd - -mkdir -p %{buildroot}/var/log/murano -mkdir -p %{buildroot}/var/run/murano -mkdir -p %{buildroot}/var/cache/murano/meta -mkdir -p %{buildroot}/etc/murano/ -# install systemd unit files -install -p -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/murano-api.service -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/murano-engine.service -install -p -D -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/murano-cf-api.service -# install default config files -cd %{_builddir}/%{pypi_name}-%{upstream_version} && oslo-config-generator --config-file ./etc/oslo-config-generator/murano.conf --output-file %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/murano.conf.sample -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/murano.conf.sample %{buildroot}%{_sysconfdir}/murano/murano.conf -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/netconfig.yaml.sample %{buildroot}%{_sysconfdir}/murano/netconfig.yaml.sample -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/murano-paste.ini %{buildroot}%{_sysconfdir}/murano/murano-paste.ini -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/logging.conf.sample %{buildroot}%{_sysconfdir}/murano/logging.conf -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/murano-cfapi.conf.sample %{buildroot}%{_sysconfdir}/murano/murano-cfapi.conf -install -p -D -m 640 %{_builddir}/%{pypi_name}-%{upstream_version}/etc/murano/murano-cfapi-paste.ini %{buildroot}%{_sysconfdir}/murano/murano-cfapi-paste.ini - -# Creating murano core library archive(murano meta packages written in muranoPL with execution plan main minimal logic) -pushd meta/io.murano -zip -r %{buildroot}%{_localstatedir}/cache/murano/meta/io.murano.zip . -popd -# Creating murano core library archive(murano meta packages written in muranoPL with execution plan main minimal logic) -pushd meta/io.murano.applications -zip -r %{buildroot}%{_localstatedir}/cache/murano/meta/io.murano.applications.zip . -popd -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*/LC_*/%{pypi_name}*po -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*pot -mv %{buildroot}%{python2_sitelib}/%{pypi_name}/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang %{pypi_name} --all-name - -%files common -f %{pypi_name}.lang -%license LICENSE -%{python2_sitelib}/murano -%{python2_sitelib}/murano-*.egg-info -%exclude %{python2_sitelib}/murano/tests -%exclude %{python2_sitelib}/murano_tempest_tests -%exclude %{python2_sitelib}/%{service}_tests.egg-info -%{_bindir}/murano-manage -%{_bindir}/murano-db-manage -%{_bindir}/murano-test-runner -%{_bindir}/murano-cfapi-db-manage -%dir %attr(0750,murano,root) %{_localstatedir}/log/murano -%dir %attr(0755,murano,root) %{_localstatedir}/run/murano -%dir %attr(0755,murano,root) %{_localstatedir}/cache/murano -%dir %attr(0755,murano,root) %{_sysconfdir}/murano -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/murano.conf -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/murano-paste.ini -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/netconfig.yaml.sample -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/logging.conf -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/murano-cfapi.conf -%config(noreplace) %attr(-, root, murano) %{_sysconfdir}/murano/murano-cfapi-paste.ini - -%files engine -%doc README.rst -%license LICENSE -%{_bindir}/murano-engine -%{_unitdir}/murano-engine.service - -%post engine -%systemd_post murano-engine.service - -%preun engine -%systemd_preun murano-engine.service - -%postun engine -%systemd_postun_with_restart murano-engine.service - -%files api -%doc README.rst -%license LICENSE -%{_localstatedir}/cache/murano/* -%{_bindir}/murano-api -%{_bindir}/murano-wsgi-api -%{_unitdir}/murano-api.service - -%files cf-api -%doc README.rst -%license LICENSE -%{_bindir}/murano-cfapi -%{_unitdir}/murano-cf-api.service - -%files doc -%doc doc/build/html - -%files -n python-murano-tests -%license LICENSE -%{python2_sitelib}/murano/tests -%{python2_sitelib}/murano_tempest_tests -%{python2_sitelib}/%{service}_tests.egg-info - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 4.0.0-1 -- Update to 4.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 4.0.0-0.2.0rc2 -- Update to 4.0.0.0rc2 - -* Mon Aug 21 2017 Alfredo Moralejo 4.0.0-0.1.0rc1 -- Update to 4.0.0.0rc1 - diff --git a/openstack/openstack-panko-config/centos/build_srpm.data b/openstack/openstack-panko-config/centos/build_srpm.data deleted file mode 100644 index da1e20bd..00000000 --- a/openstack/openstack-panko-config/centos/build_srpm.data +++ /dev/null @@ -1,2 +0,0 @@ -SRC_DIR="files" -TIS_PATCH_VER=0 diff --git a/openstack/openstack-panko-config/centos/openstack-panko-config.spec b/openstack/openstack-panko-config/centos/openstack-panko-config.spec deleted file mode 100644 index 2f7e0f94..00000000 --- a/openstack/openstack-panko-config/centos/openstack-panko-config.spec +++ /dev/null @@ -1,40 +0,0 @@ -# -# SPDX-License-Identifier: Apache-2.0 -# -# Copyright (C) 2019 Intel Corporation -# -Summary: openstack-panko-config -Name: openstack-panko-config -Version: 1.0 -Release: %{tis_patch_ver}%{?_tis_dist} -License: Apache-2.0 -Group: openstack -Packager: StarlingX -URL: unknown -BuildArch: noarch -Source: %name-%version.tar.gz - -Requires: openstack-panko-common -Requires: openstack-panko-api - -Summary: package StarlingX configuration files of openstack-panko to system folder. - -%description -package StarlingX configuration files of openstack-panko to system folder. - -%prep -%setup - -%build - -%install -%{__install} -d %{buildroot}%{_bindir} -%{__install} -m 0755 panko-expirer-active %{buildroot}%{_bindir}/panko-expirer-active - -%post -if test -s %{_sysconfdir}/logrotate.d/openstack-panko ; then - echo '#See /etc/logrotate.d/syslog for panko rules' > %{_sysconfdir}/logrotate.d/openstack-panko -fi - -%files -%{_bindir}/panko-expirer-active diff --git a/openstack/openstack-panko-config/files/panko-expirer-active b/openstack/openstack-panko-config/files/panko-expirer-active deleted file mode 100644 index ef6cdee2..00000000 --- a/openstack/openstack-panko-config/files/panko-expirer-active +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run panko-expirer when on active controller only -# -PANKO_EXPIRER_INFO="/var/run/panko-expirer.info" -PANKO_EXPIRER_CMD="/usr/bin/nice -n 2 /usr/bin/panko-expirer" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${PANKO_EXPIRER_INFO} ] - then - echo skip_count=0 > ${PANKO_EXPIRER_INFO} - fi - - source ${PANKO_EXPIRER_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - sh -c "exec taskset -c $idle_core ${PANKO_EXPIRER_CMD}" - sed -i "/skip_count/s/=.*/=0/" ${PANKO_EXPIRER_INFO} - exit 0 - fi - fi - - if [ "$skip_count" -lt "3" ] - then - newval=$(($skip_count+1)) - sed -i "/skip_count/s/=.*/=$newval/" ${PANKO_EXPIRER_INFO} - exit 0 - fi - fi - - eval ${PANKO_EXPIRER_CMD} - sed -i "/skip_count/s/=.*/=0/" ${PANKO_EXPIRER_INFO} -fi - -exit 0 diff --git a/openstack/openstack-panko/centos/build_srpm.data b/openstack/openstack-panko/centos/build_srpm.data deleted file mode 100644 index 8429863c..00000000 --- a/openstack/openstack-panko/centos/build_srpm.data +++ /dev/null @@ -1 +0,0 @@ -TIS_PATCH_VER=6 diff --git a/openstack/openstack-panko/centos/meta_patches/0001-panko-config.patch b/openstack/openstack-panko/centos/meta_patches/0001-panko-config.patch deleted file mode 100644 index e51baa98..00000000 --- a/openstack/openstack-panko/centos/meta_patches/0001-panko-config.patch +++ /dev/null @@ -1,86 +0,0 @@ -From 39121ea596ec8137f2d56b8a35ebba73feb6b5c8 Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Fri, 20 Oct 2017 10:07:03 -0400 -Subject: [PATCH 1/1] panko config - ---- - SOURCES/panko-dist.conf | 2 +- - SPECS/openstack-panko.spec | 17 ++++++++++++++++- - 2 files changed, 17 insertions(+), 2 deletions(-) - create mode 100644 SOURCES/panko-expirer-active - -diff --git a/SOURCES/panko-dist.conf b/SOURCES/panko-dist.conf -index c33a2ee..ac6f79f 100644 ---- a/SOURCES/panko-dist.conf -+++ b/SOURCES/panko-dist.conf -@@ -1,4 +1,4 @@ - [DEFAULT] --log_dir = /var/log/panko -+#log_dir = /var/log/panko - use_stderr = False - -diff --git a/SPECS/openstack-panko.spec b/SPECS/openstack-panko.spec -index d12da57..90471d9 100644 ---- a/SPECS/openstack-panko.spec -+++ b/SPECS/openstack-panko.spec -@@ -4,7 +4,7 @@ - - Name: openstack-panko - Version: 3.1.0 --Release: 1%{?dist} -+Release: 1%{?_tis_dist}.%{tis_patch_ver} - Summary: Panko provides Event storage and REST API - - License: ASL 2.0 -@@ -12,12 +12,19 @@ URL: http://github.com/openstack/panko - Source0: https://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{upstream_version}.tar.gz - Source1: %{pypi_name}-dist.conf - Source2: %{pypi_name}.logrotate -+ -+# WRS: Include patches here -+Patch1: 0001-modify-panko-api.patch -+Patch2: 0002-Change-event-list-descending.patch -+Patch3: 0003-Fix-event-query-to-sqlalchemy-with-non-admin-user.patch -+ - BuildArch: noarch - - BuildRequires: python-setuptools - BuildRequires: python-pbr - BuildRequires: python2-devel - BuildRequires: openstack-macros -+BuildRequires: python-tenacity >= 3.1.0 - - %description - HTTP API to store events. -@@ -116,6 +123,11 @@ This package contains documentation files for panko. - %prep - %setup -q -n %{pypi_name}-%{upstream_version} - -+# WRS: Apply patches here -+%patch1 -p1 -+%patch2 -p1 -+%patch3 -p1 -+ - find . \( -name .gitignore -o -name .placeholder \) -delete - - find panko -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + -@@ -158,6 +170,8 @@ mkdir -p %{buildroot}/%{_var}/log/%{name} - install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/panko/panko-dist.conf - install -p -D -m 640 etc/panko/panko.conf %{buildroot}%{_sysconfdir}/panko/panko.conf - install -p -D -m 640 etc/panko/api_paste.ini %{buildroot}%{_sysconfdir}/panko/api_paste.ini -+# WRS -+install -p -D -m 640 panko/api/panko-api.py %{buildroot}%{_datadir}/panko/panko-api.py - - #TODO(prad): build the docs at run time, once the we get rid of postgres setup dependency - -@@ -204,6 +218,7 @@ exit 0 - - %files common - %dir %{_sysconfdir}/panko -+%{_datadir}/panko/panko-api.* - %attr(-, root, panko) %{_datadir}/panko/panko-dist.conf - %config(noreplace) %attr(-, root, panko) %{_sysconfdir}/panko/policy.json - %config(noreplace) %attr(-, root, panko) %{_sysconfdir}/panko/panko.conf --- -1.8.3.1 - diff --git a/openstack/openstack-panko/centos/meta_patches/PATCH_ORDER b/openstack/openstack-panko/centos/meta_patches/PATCH_ORDER deleted file mode 100644 index 34ee17d1..00000000 --- a/openstack/openstack-panko/centos/meta_patches/PATCH_ORDER +++ /dev/null @@ -1 +0,0 @@ -0001-panko-config.patch diff --git a/openstack/openstack-panko/centos/patches/0001-modify-panko-api.patch b/openstack/openstack-panko/centos/patches/0001-modify-panko-api.patch deleted file mode 100644 index 23ed7b51..00000000 --- a/openstack/openstack-panko/centos/patches/0001-modify-panko-api.patch +++ /dev/null @@ -1,63 +0,0 @@ -From 3583e2afbae8748f05dc12c51eefc4983358759c Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Mon, 6 Nov 2017 17:32:46 -0500 -Subject: [PATCH 1/1] modify panko api - ---- - panko/api/app.py | 12 +++++++++--- - panko/api/panko-api.py | 6 ++++++ - 2 files changed, 15 insertions(+), 3 deletions(-) - create mode 100644 panko/api/panko-api.py - -diff --git a/panko/api/app.py b/panko/api/app.py -index 9867e18..4eedaea 100644 ---- a/panko/api/app.py -+++ b/panko/api/app.py -@@ -51,7 +51,7 @@ global APPCONFIGS - APPCONFIGS = {} - - --def load_app(conf, appname='panko+keystone'): -+def load_app(conf, args, appname='panko+keystone'): - global APPCONFIGS - - # Build the WSGI app -@@ -62,6 +62,12 @@ def load_app(conf, appname='panko+keystone'): - if cfg_path is None or not os.path.exists(cfg_path): - raise cfg.ConfigFilesNotFoundError([conf.api_paste_config]) - -+ config_args = dict([(key, value) for key, value in args.iteritems() -+ if key in conf and value is not None]) -+ for key, value in config_args.iteritems(): -+ if key == 'config_file': -+ conf.config_file = value -+ - config = dict(conf=conf) - configkey = str(uuid.uuid4()) - APPCONFIGS[configkey] = config -@@ -71,8 +77,8 @@ def load_app(conf, appname='panko+keystone'): - global_conf={'configkey': configkey}) - - --def build_wsgi_app(argv=None): -- return load_app(service.prepare_service(argv=argv)) -+def build_wsgi_app(argv=None, args=None): -+ return load_app(service.prepare_service(argv=argv), args) - - - def app_factory(global_config, **local_conf): -diff --git a/panko/api/panko-api.py b/panko/api/panko-api.py -new file mode 100644 -index 0000000..87d917d ---- /dev/null -+++ b/panko/api/panko-api.py -@@ -0,0 +1,6 @@ -+from panko.api import app as build_wsgi_app -+import sys -+ -+sys.argv = sys.argv[:1] -+args = {'config_file' : 'etc/panko/panko.conf', } -+application = build_wsgi_app.build_wsgi_app(args=args) --- -1.8.3.1 - diff --git a/openstack/openstack-panko/centos/patches/0002-Change-event-list-descending.patch b/openstack/openstack-panko/centos/patches/0002-Change-event-list-descending.patch deleted file mode 100644 index 7d8b8ad2..00000000 --- a/openstack/openstack-panko/centos/patches/0002-Change-event-list-descending.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 05b89c2f78357ad39b0cd9eb74903e14d1f56758 Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Thu, 16 Nov 2017 15:14:17 -0500 -Subject: [PATCH 1/1] Change event list descending - ---- - panko/storage/models.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/panko/storage/models.py b/panko/storage/models.py -index 9c578c8..ed4c9a8 100644 ---- a/panko/storage/models.py -+++ b/panko/storage/models.py -@@ -35,8 +35,8 @@ class Event(base.Model): - - SUPPORT_DIRS = ('asc', 'desc') - SUPPORT_SORT_KEYS = ('message_id', 'generated') -- DEFAULT_DIR = 'asc' -- DEFAULT_SORT = [('generated', 'asc'), ('message_id', 'asc')] -+ DEFAULT_DIR = 'desc' -+ DEFAULT_SORT = [('generated', 'desc'), ('message_id', 'desc')] - PRIMARY_KEY = 'message_id' - - def __init__(self, message_id, event_type, generated, traits, raw): --- -1.8.3.1 - diff --git a/openstack/openstack-panko/centos/patches/0003-Fix-event-query-to-sqlalchemy-with-non-admin-user.patch b/openstack/openstack-panko/centos/patches/0003-Fix-event-query-to-sqlalchemy-with-non-admin-user.patch deleted file mode 100644 index 3cb09256..00000000 --- a/openstack/openstack-panko/centos/patches/0003-Fix-event-query-to-sqlalchemy-with-non-admin-user.patch +++ /dev/null @@ -1,101 +0,0 @@ -From c390a3bc6920728806f581b85d46f02d75eb651c Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Mon, 11 Dec 2017 16:21:42 -0500 -Subject: [PATCH 1/1] Fix event query to sqlalchemy with non admin user - -This is an upstream fix. -https://github.com/openstack/panko/commit/99d591df950271594ee049caa3ff22304437a228 - -Do not port this patch in the next panko rebase. ---- - panko/storage/impl_sqlalchemy.py | 34 +++++++++++++++------- - .../functional/storage/test_storage_scenarios.py | 4 +-- - 2 files changed, 25 insertions(+), 13 deletions(-) - -diff --git a/panko/storage/impl_sqlalchemy.py b/panko/storage/impl_sqlalchemy.py -index 670c8d7..29b5b97 100644 ---- a/panko/storage/impl_sqlalchemy.py -+++ b/panko/storage/impl_sqlalchemy.py -@@ -24,6 +24,7 @@ from oslo_log import log - from oslo_utils import timeutils - import sqlalchemy as sa - from sqlalchemy.engine import url as sqlalchemy_url -+from sqlalchemy.orm import aliased - - from panko import storage - from panko.storage import base -@@ -61,8 +62,8 @@ trait_models_dict = {'string': models.TraitText, - 'float': models.TraitFloat} - - --def _build_trait_query(session, trait_type, key, value, op='eq'): -- trait_model = trait_models_dict[trait_type] -+def _get_model_and_conditions(trait_type, key, value, op='eq'): -+ trait_model = aliased(trait_models_dict[trait_type]) - op_dict = {'eq': (trait_model.value == value), - 'lt': (trait_model.value < value), - 'le': (trait_model.value <= value), -@@ -70,8 +71,7 @@ def _build_trait_query(session, trait_type, key, value, op='eq'): - 'ge': (trait_model.value >= value), - 'ne': (trait_model.value != value)} - conditions = [trait_model.key == key, op_dict[op]] -- return (session.query(trait_model.event_id.label('ev_id')) -- .filter(*conditions)) -+ return (trait_model, conditions) - - - class Connection(base.Connection): -@@ -274,16 +274,28 @@ class Connection(base.Connection): - key = trait_filter.pop('key') - op = trait_filter.pop('op', 'eq') - trait_type, value = list(trait_filter.items())[0] -- trait_subq = _build_trait_query(session, trait_type, -- key, value, op) -- for trait_filter in filters: -+ -+ trait_model, conditions = _get_model_and_conditions( -+ trait_type, key, value, op) -+ trait_subq = (session -+ .query(trait_model.event_id.label('ev_id')) -+ .filter(*conditions)) -+ -+ first_model = trait_model -+ for label_num, trait_filter in enumerate(filters): - key = trait_filter.pop('key') - op = trait_filter.pop('op', 'eq') - trait_type, value = list(trait_filter.items())[0] -- q = _build_trait_query(session, trait_type, -- key, value, op) -- trait_subq = trait_subq.filter( -- trait_subq.subquery().c.ev_id == q.subquery().c.ev_id) -+ trait_model, conditions = _get_model_and_conditions( -+ trait_type, key, value, op) -+ trait_subq = ( -+ trait_subq -+ .add_columns( -+ trait_model.event_id.label('l%d' % label_num)) -+ .filter( -+ first_model.event_id == trait_model.event_id, -+ *conditions)) -+ - trait_subq = trait_subq.subquery() - - query = (session.query(models.Event.id) -diff --git a/panko/tests/functional/storage/test_storage_scenarios.py b/panko/tests/functional/storage/test_storage_scenarios.py -index 3af76b4..9af75c8 100644 ---- a/panko/tests/functional/storage/test_storage_scenarios.py -+++ b/panko/tests/functional/storage/test_storage_scenarios.py -@@ -340,8 +340,8 @@ class GetEventTest(EventTestBase): - - def test_get_event_multiple_trait_filter(self): - trait_filters = [{'key': 'trait_B', 'integer': 1}, -- {'key': 'trait_A', 'string': 'my_Foo_text'}, -- {'key': 'trait_C', 'float': 0.123456}] -+ {'key': 'trait_C', 'float': 0.123456}, -+ {'key': 'trait_A', 'string': 'my_Foo_text'}] - event_filter = storage.EventFilter(self.start, self.end, - traits_filter=trait_filters) - events = [event for event in self.conn.get_events(event_filter)] --- -1.8.3.1 - diff --git a/openstack/openstack-panko/centos/srpm_path b/openstack/openstack-panko/centos/srpm_path deleted file mode 100644 index b8ed2ce3..00000000 --- a/openstack/openstack-panko/centos/srpm_path +++ /dev/null @@ -1 +0,0 @@ -mirror:Source/openstack-panko-3.1.0-1.el7.src.rpm diff --git a/openstack/python-ceilometer/centos/build_srpm.data b/openstack/python-ceilometer/centos/build_srpm.data deleted file mode 100644 index 3d41a778..00000000 --- a/openstack/python-ceilometer/centos/build_srpm.data +++ /dev/null @@ -1,11 +0,0 @@ -SRC_DIR="$CGCS_BASE/git/ceilometer" -TAR_NAME=ceilometer -COPY_LIST="$FILES_BASE/* \ - python-ceilometer/static/ceilometer-expirer-active \ - python-ceilometer/static/ceilometer-polling \ - python-ceilometer/static/ceilometer-polling.conf \ - python-ceilometer/static/ceilometer-polling.conf.pmon.centos \ - python-ceilometer/static/ceilometer-polling-compute.conf.pmon.centos \ - python-ceilometer/static/ceilometer-agent-compute" -TIS_BASE_SRCREV=105788514dadcd881fc86d4b9a03d0d10e2e0874 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-ceilometer/centos/files/ceilometer-dist.conf b/openstack/python-ceilometer/centos/files/ceilometer-dist.conf deleted file mode 100644 index 2f45dfb1..00000000 --- a/openstack/python-ceilometer/centos/files/ceilometer-dist.conf +++ /dev/null @@ -1,6 +0,0 @@ -[DEFAULT] -#log_dir = /var/log/ceilometer -use_stderr = False - -[database] -connection = mongodb://localhost:27017/ceilometer diff --git a/openstack/python-ceilometer/centos/files/ceilometer-rootwrap-sudoers b/openstack/python-ceilometer/centos/files/ceilometer-rootwrap-sudoers deleted file mode 100644 index ba971665..00000000 --- a/openstack/python-ceilometer/centos/files/ceilometer-rootwrap-sudoers +++ /dev/null @@ -1,2 +0,0 @@ -Defaults:ceilometer !requiretty -ceilometer ALL = (root) NOPASSWD: /usr/bin/ceilometer-rootwrap /etc/ceilometer/rootwrap.conf * diff --git a/openstack/python-ceilometer/centos/files/ceilometer.conf.sample b/openstack/python-ceilometer/centos/files/ceilometer.conf.sample deleted file mode 100644 index 34bb6871..00000000 --- a/openstack/python-ceilometer/centos/files/ceilometer.conf.sample +++ /dev/null @@ -1,1176 +0,0 @@ -[DEFAULT] - -# -# Options defined in oslo.messaging -# - -# Use durable queues in amqp. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues=false - -# Auto-delete queues in amqp. (boolean value) -#amqp_auto_delete=false - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size=30 - -# Qpid broker hostname. (string value) -#qpid_hostname=localhost - -# Qpid broker port. (integer value) -#qpid_port=5672 - -# Qpid HA cluster host:port pairs. (list value) -#qpid_hosts=$qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -#qpid_username= - -# Password for Qpid connection. (string value) -#qpid_password= - -# Space separated list of SASL mechanisms to use for auth. -# (string value) -#qpid_sasl_mechanisms= - -# Seconds between connection keepalive heartbeats. (integer -# value) -#qpid_heartbeat=60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -#qpid_protocol=tcp - -# Whether to disable the Nagle algorithm. (boolean value) -#qpid_tcp_nodelay=true - -# The number of prefetched messages held by receiver. (integer -# value) -#qpid_receiver_capacity=1 - -# The qpid topology version to use. Version 1 is what was -# originally used by impl_qpid. Version 2 includes some -# backwards-incompatible changes that allow broker federation -# to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. -# (integer value) -#qpid_topology_version=1 - -# SSL version to use (valid only if SSL enabled). valid values -# are TLSv1, SSLv23 and SSLv3. SSLv2 may be available on some -# distributions. (string value) -#kombu_ssl_version= - -# SSL key file (valid only if SSL enabled). (string value) -#kombu_ssl_keyfile= - -# SSL cert file (valid only if SSL enabled). (string value) -#kombu_ssl_certfile= - -# SSL certification authority file (valid only if SSL -# enabled). (string value) -#kombu_ssl_ca_certs= - -# How long to wait before reconnecting in response to an AMQP -# consumer cancel notification. (floating point value) -#kombu_reconnect_delay=1.0 - -# The RabbitMQ broker address where a single node is used. -# (string value) -#rabbit_host=localhost - -# The RabbitMQ broker port where a single node is used. -# (integer value) -#rabbit_port=5672 - -# RabbitMQ HA cluster host:port pairs. (list value) -#rabbit_hosts=$rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -#rabbit_use_ssl=false - -# The RabbitMQ userid. (string value) -#rabbit_userid=guest - -# The RabbitMQ password. (string value) -#rabbit_password=guest - -# the RabbitMQ login method (string value) -#rabbit_login_method=AMQPLAIN - -# The RabbitMQ virtual host. (string value) -#rabbit_virtual_host=/ - -# How frequently to retry connecting with RabbitMQ. (integer -# value) -#rabbit_retry_interval=1 - -# How long to backoff for between retries when connecting to -# RabbitMQ. (integer value) -#rabbit_retry_backoff=2 - -# Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -#rabbit_max_retries=0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change -# this option, you must wipe the RabbitMQ database. (boolean -# value) -#rabbit_ha_queues=false - -# If passed, use a fake RabbitMQ provider. (boolean value) -#fake_rabbit=false - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet -# interface, or IP. The "host" option should point or resolve -# to this address. (string value) -#rpc_zmq_bind_address=* - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker=oslo.messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port=9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts=1 - -# Maximum number of ingress messages to locally buffer per -# topic. Default is unlimited. (integer value) -#rpc_zmq_topic_backlog= - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir=/var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP -# address. Must match "host" option, if running Nova. (string -# value) -#rpc_zmq_host=ceilometer - -# Seconds to wait before a cast expires (TTL). Only supported -# by impl_zmq. (integer value) -#rpc_cast_timeout=30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq=300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl=600 - -# Size of RPC greenthread pool. (integer value) -#rpc_thread_pool_size=64 - -# Driver or drivers to handle sending notifications. (multi -# valued) -#notification_driver= - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics=notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout=60 - -# A URL representing the messaging driver to use and its full -# configuration. If not set, we fall back to the rpc_backend -# option and driver specific configuration. (string value) -#transport_url= - -# The messaging driver to use, defaults to rabbit. Other -# drivers include qpid and zmq. (string value) -#rpc_backend=rabbit - -# The default exchange under which topics are scoped. May be -# overridden by an exchange name specified in the -# transport_url option. (string value) -#control_exchange=openstack - - -# -# Options defined in ceilometer.middleware -# - -# Exchanges name to listen for notifications. (multi valued) -#http_control_exchanges=nova -#http_control_exchanges=glance -#http_control_exchanges=neutron -#http_control_exchanges=cinder - - -# -# Options defined in ceilometer.nova_client -# - -# Allow novaclient's debug log output. (boolean value) -#nova_http_log_debug=false - - -# -# Options defined in ceilometer.pipeline -# - -# Configuration file for pipeline definition. (string value) -#pipeline_cfg_file=pipeline.yaml - - -# -# Options defined in ceilometer.sample -# - -# Source for samples emitted on this instance. (string value) -# Deprecated group/name - [DEFAULT]/counter_source -#sample_source=openstack - - -# -# Options defined in ceilometer.service -# - -# Name of this node, which must be valid in an AMQP key. Can -# be an opaque identifier. For ZeroMQ only, must be a valid -# host name, FQDN, or IP address. (string value) -#host=ceilometer - -# Number of workers for collector service. A single collector -# is enabled by default. (integer value) -#collector_workers=1 - -# Number of workers for notification service. A single -# notification agent is enabled by default. (integer value) -#notification_workers=1 - - -# -# Options defined in ceilometer.utils -# - -# Path to the rootwrap configuration file touse for running -# commands as root (string value) -#rootwrap_config=/etc/ceilometer/rootwrap.conf - - -# -# Options defined in ceilometer.api.app -# - -# Configuration file for WSGI definition of API. (string -# value) -#api_paste_config=api_paste.ini - - -# -# Options defined in ceilometer.compute.notifications -# - -# Exchange name for Nova notifications. (string value) -#nova_control_exchange=nova - - -# -# Options defined in ceilometer.compute.util -# - -# List of metadata prefixes reserved for metering use. (list -# value) -#reserved_metadata_namespace=metering. - -# Limit on length of reserved metadata values. (integer value) -#reserved_metadata_length=256 - - -# -# Options defined in ceilometer.compute.virt.inspector -# - -# Inspector to use for inspecting the hypervisor layer. -# (string value) -#hypervisor_inspector=libvirt - - -# -# Options defined in ceilometer.compute.virt.libvirt.inspector -# - -# Libvirt domain type (valid options are: kvm, lxc, qemu, uml, -# xen). (string value) -#libvirt_type=kvm - -# Override the default libvirt URI (which is dependent on -# libvirt_type). (string value) -#libvirt_uri= - - -# -# Options defined in ceilometer.data_processing.notifications -# - -# Exchange name for Data Processing notifications (string -# value) -#sahara_control_exchange=sahara - - -# -# Options defined in ceilometer.dispatcher -# - -# Dispatcher to process data. (multi valued) -#dispatcher=database - - -# -# Options defined in ceilometer.identity.notifications -# - -# Exchange name for Keystone notifications. (string value) -#keystone_control_exchange=keystone - - -# -# Options defined in ceilometer.image.glance -# - -# Number of items to request in each paginated Glance API -# request (parameter used by glancecelient). If this is less -# than or equal to 0, page size is not specified (default -# value in glanceclient is used). (integer value) -#glance_page_size=0 - - -# -# Options defined in ceilometer.image.notifications -# - -# Exchange name for Glance notifications. (string value) -#glance_control_exchange=glance - - -# -# Options defined in ceilometer.ipmi.notifications.ironic -# - -# Exchange name for Ironic notifications. (string value) -#ironic_exchange=ironic - - -# -# Options defined in ceilometer.network.notifications -# - -# Exchange name for Neutron notifications. (string value) -# Deprecated group/name - [DEFAULT]/quantum_control_exchange -#neutron_control_exchange=neutron - - -# -# Options defined in ceilometer.objectstore.swift -# - -# Swift reseller prefix. Must be on par with reseller_prefix -# in proxy-server.conf. (string value) -#reseller_prefix=AUTH_ - - -# -# Options defined in ceilometer.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , -# and :, where 0 results in listening on a random -# tcp port number; results in listening on the -# specified port number (and not enabling backdoor if that -# port is in use); and : results in listening on -# the smallest unused port number within the specified range -# of port numbers. The chosen port is displayed in the -# service's log file. (string value) -#backdoor_port= - - -# -# Options defined in ceilometer.openstack.common.lockutils -# - -# Enables or disables inter-process locks. (boolean value) -#disable_process_locking=false - -# Directory to use for lock files. (string value) -#lock_path= - - -# -# Options defined in ceilometer.openstack.common.log -# - -# Print debugging output (set logging level to DEBUG instead -# of default WARNING level). (boolean value) -#debug=false - -# Print more verbose output (set logging level to INFO instead -# of default WARNING level). (boolean value) -#verbose=false - -# Log output to standard error. (boolean value) -#use_stderr=true - -# Format string to use for log messages with context. (string -# value) -#logging_context_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. -# (string value) -#logging_default_format_string=%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string -# value) -#logging_debug_format_suffix=%(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. -# (string value) -#logging_exception_prefix=%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels=amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean -# value) -#publish_errors=false - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - -# The format for an instance that is passed with the log -# message. (string value) -#instance_format="[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log -# message. (string value) -#instance_uuid_format="[instance: %(uuid)s] " - -# The name of a logging configuration file. This file is -# appended to any existing logging configuration files. For -# details about logging configuration files, see the Python -# logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append= - -# DEPRECATED. A logging.Formatter log message format string -# which may use any of the available logging.LogRecord -# attributes. This option is deprecated. Please use -# logging_context_format_string and -# logging_default_format_string instead. (string value) -#log_format= - -# Format string for %%(asctime)s in log records. Default: -# %(default)s . (string value) -#log_date_format=%Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is -# set, logging will go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file= - -# (Optional) The base directory used for relative --log-file -# paths. (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir= - -# Use syslog for logging. Existing syslog format is DEPRECATED -# during I, and will change in J to honor RFC5424. (boolean -# value) -#use_syslog=false - -# (Optional) Enables or disables syslog rfc5424 format for -# logging. If enabled, prefixes the MSG part of the syslog -# message with APP-NAME (RFC5424). The format without the APP- -# NAME is deprecated in I, and will be removed in J. (boolean -# value) -#use_syslog_rfc_format=false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility=LOG_USER - - -# -# Options defined in ceilometer.openstack.common.policy -# - -# The JSON file that defines policies. (string value) -#policy_file=policy.json - -# Default rule. Enforced when a requested rule is not found. -# (string value) -#policy_default_rule=default - - -# -# Options defined in ceilometer.orchestration.notifications -# - -# Exchange name for Heat notifications (string value) -#heat_control_exchange=heat - - -# -# Options defined in ceilometer.profiler.notifications -# - -# Exchange name for DBaaS notifications (string value) -#trove_control_exchange=trove - - -# -# Options defined in ceilometer.storage -# - -# DEPRECATED - Database connection string. (string value) -#database_connection= - - -# -# Options defined in ceilometer.volume.notifications -# - -# Exchange name for Cinder notifications. (string value) -#cinder_control_exchange=cinder - - -[alarm] - -# -# Options defined in ceilometer.alarm.notifier.rest -# - -# SSL Client certificate for REST notifier. (string value) -#rest_notifier_certificate_file= - -# SSL Client private key for REST notifier. (string value) -#rest_notifier_certificate_key= - -# Whether to verify the SSL Server certificate when calling -# alarm action. (boolean value) -#rest_notifier_ssl_verify=true - -# Number of retries for REST notifier (integer value) -#rest_notifier_max_retries=0 - - -# -# Options defined in ceilometer.alarm.rpc -# - -# The topic that ceilometer uses for alarm notifier messages. -# (string value) -#notifier_rpc_topic=alarm_notifier - -# The topic that ceilometer uses for alarm partition -# coordination messages. DEPRECATED: RPC-based -# partitionedalarm evaluation service will be removed in Kilo -# in favour of the default alarm evaluation service using tooz -# for partitioning. (string value) -#partition_rpc_topic=alarm_partition_coordination - - -# -# Options defined in ceilometer.alarm.service -# - -# Period of evaluation cycle, should be >= than configured -# pipeline interval for collection of underlying metrics. -# (integer value) -# Deprecated group/name - [alarm]/threshold_evaluation_interval -#evaluation_interval=60 - - -# -# Options defined in ceilometer.api.controllers.v2 -# - -# Record alarm change events. (boolean value) -#record_history=true - -# Maximum number of alarms defined for a user. (integer value) -#user_alarm_quota= - -# Maximum number of alarms defined for a project. (integer -# value) -#project_alarm_quota= - - -# -# Options defined in ceilometer.cmd.alarm -# - -# Driver to use for alarm evaluation service. DEPRECATED: -# "singleton" and "partitioned" alarm evaluator services will -# be removed in Kilo in favour of the default alarm evaluation -# service using tooz for partitioning. (string value) -#evaluation_service=default - - -[api] - -# -# Options defined in ceilometer.api -# - -# The port for the ceilometer API server. (integer value) -# Deprecated group/name - [DEFAULT]/metering_api_port -#port=8777 - -# The listen IP for the ceilometer API server. (string value) -#host=0.0.0.0 - -# Set it to False if your environment does not need or have -# dns server, otherwise it will delay the response from api. -# (boolean value) -#enable_reverse_dns_lookup=false - - -# -# Options defined in ceilometer.api.app -# - -# Toggle Pecan Debug Middleware. Defaults to global debug -# value. (boolean value) -#pecan_debug=false - - -[central] - -# -# Options defined in ceilometer.central.manager -# - -# Work-load partitioning group prefix. Use only if you want to -# run multiple central agents with different config files. For -# each sub-group of the central agent pool with the same -# partitioning_group_prefix a disjoint subset of pollsters -# should be loaded. (string value) -#partitioning_group_prefix= - - -[collector] - -# -# Options defined in ceilometer.collector -# - -# Address to which the UDP socket is bound. Set to an empty -# string to disable. (string value) -#udp_address=0.0.0.0 - -# Port to which the UDP socket is bound. (integer value) -#udp_port=4952 - -# Requeue the sample on the collector sample queue when the -# collector fails to dispatch it. This is only valid if the -# sample come from the notifier publisher (boolean value) -#requeue_sample_on_dispatcher_error=false - - -[compute] - -# -# Options defined in ceilometer.compute.discovery -# - -# Enable work-load partitioning, allowing multiple compute -# agents to be run simultaneously. (boolean value) -#workload_partitioning=false - - -[coordination] - -# -# Options defined in ceilometer.coordination -# - -# The backend URL to use for distributed coordination. If left -# empty, per-deployment central agent and per-host compute -# agent won't do workload partitioning and will only function -# correctly if a single instance of that service is running. -# (string value) -#backend_url= - -# Number of seconds between heartbeats for distributed -# coordination (float) (floating point value) -#heartbeat=1.0 - - -[database] - -# -# Options defined in ceilometer.storage -# - -# Number of seconds that samples are kept in the database for -# (<= 0 means forever). (integer value) -#time_to_live=-1 - -# The connection string used to connect to the meteting -# database. (if unset, connection is used) (string value) -#metering_connection= - -# The connection string used to connect to the alarm database. -# (if unset, connection is used) (string value) -#alarm_connection= - - -[dispatcher_file] - -# -# Options defined in ceilometer.dispatcher.file -# - -# Name and the location of the file to record meters. (string -# value) -#file_path= - -# The max size of the file. (integer value) -#max_bytes=0 - -# The max number of the files to keep. (integer value) -#backup_count=0 - - -[event] - -# -# Options defined in ceilometer.event.converter -# - -# Configuration file for event definitions. (string value) -#definitions_cfg_file=event_definitions.yaml - -# Drop notifications if no event definition matches. -# (Otherwise, we convert them with just the default traits) -# (boolean value) -#drop_unmatched_notifications=false - - -[hardware] - -# -# Options defined in ceilometer.hardware.discovery -# - -# URL scheme to use for hardware nodes (string value) -#url_scheme=snmp:// - -# SNMPd user name of all nodes running in the cloud. (string -# value) -#readonly_user_name=ro_snmp_user - -# SNMPd password of all the nodes running in the cloud (string -# value) -#readonly_user_password=password - - -[ipmi] - -# -# Options defined in ceilometer.ipmi.platform.intel_node_manager -# - -# Number of retries upon Intel Node Manager initialization -# failure (integer value) -#node_manager_init_retry=3 - - -[keystone_authtoken] - -# -# Options defined in keystonemiddleware.auth_token -# - -# Prefix to prepend at the beginning of the path. Deprecated, -# use identity_uri. (string value) -#auth_admin_prefix= - -# Host providing the admin Identity API endpoint. Deprecated, -# use identity_uri. (string value) -#auth_host=127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use -# identity_uri. (integer value) -#auth_port=35357 - -# Protocol of the admin Identity API endpoint (http or https). -# Deprecated, use identity_uri. (string value) -#auth_protocol=https - -# Complete public Identity API endpoint (string value) -#auth_uri= - -# Complete admin Identity API endpoint. This should specify -# the unversioned root endpoint e.g. https://localhost:35357/ -# (string value) -#identity_uri= - -# API version of the admin Identity API endpoint (string -# value) -#auth_version= - -# Do not handle authorization requests within the middleware, -# but delegate the authorization decision to downstream WSGI -# components (boolean value) -#delay_auth_decision=false - -# Request timeout value for communicating with Identity API -# server. (boolean value) -#http_connect_timeout= - -# How many times are we trying to reconnect when communicating -# with Identity API Server. (integer value) -#http_request_max_retries=3 - -# This option is deprecated and may be removed in a future -# release. Single shared secret with the Keystone -# configuration used for bootstrapping a Keystone -# installation, or otherwise bypassing the normal -# authentication process. This option should not be used, use -# `admin_user` and `admin_password` instead. (string value) -#admin_token= - -# Keystone account username (string value) -#admin_user= - -# Keystone account password (string value) -#admin_password= - -# Keystone service account tenant name to validate user tokens -# (string value) -#admin_tenant_name=admin - -# Env key for the swift cache (string value) -#cache= - -# Required if Keystone server requires client certificate -# (string value) -#certfile= - -# Required if Keystone server requires client certificate -# (string value) -#keyfile= - -# A PEM encoded Certificate Authority to use when verifying -# HTTPs connections. Defaults to system CAs. (string value) -#cafile= - -# Verify HTTPS connections. (boolean value) -#insecure=false - -# Directory used to cache files related to PKI tokens (string -# value) -#signing_dir= - -# Optionally specify a list of memcached server(s) to use for -# caching. If left undefined, tokens will instead be cached -# in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers= - -# In order to prevent excessive effort spent validating -# tokens, the middleware caches previously-seen tokens for a -# configurable duration (in seconds). Set to -1 to disable -# caching completely. (integer value) -#token_cache_time=300 - -# Determines the frequency at which the list of revoked tokens -# is retrieved from the Identity service (in seconds). A high -# number of revocation events combined with a low cache -# duration may significantly reduce performance. (integer -# value) -#revocation_cache_time=10 - -# (optional) if defined, indicate whether token data should be -# authenticated or authenticated and encrypted. Acceptable -# values are MAC or ENCRYPT. If MAC, token data is -# authenticated (with HMAC) in the cache. If ENCRYPT, token -# data is encrypted and authenticated in the cache. If the -# value is not one of these options or empty, auth_token will -# raise an exception on initialization. (string value) -#memcache_security_strategy= - -# (optional, mandatory if memcache_security_strategy is -# defined) this string is used for key derivation. (string -# value) -#memcache_secret_key= - -# (optional) number of seconds memcached server is considered -# dead before it is tried again. (integer value) -#memcache_pool_dead_retry=300 - -# (optional) max total number of open connections to every -# memcached server. (integer value) -#memcache_pool_maxsize=10 - -# (optional) socket timeout in seconds for communicating with -# a memcache server. (integer value) -#memcache_pool_socket_timeout=3 - -# (optional) number of seconds a connection to memcached is -# held unused in the pool before it is closed. (integer value) -#memcache_pool_unused_timeout=60 - -# (optional) number of seconds that an operation will wait to -# get a memcache client connection from the pool. (integer -# value) -#memcache_pool_conn_get_timeout=10 - -# (optional) use the advanced (eventlet safe) memcache client -# pool. The advanced pool will only work under python 2.x. -# (boolean value) -#memcache_use_advanced_pool=false - -# (optional) indicate whether to set the X-Service-Catalog -# header. If False, middleware will not ask for service -# catalog on token validation and will not set the X-Service- -# Catalog header. (boolean value) -#include_service_catalog=true - -# Used to control the use and type of token binding. Can be -# set to: "disabled" to not check token binding. "permissive" -# (default) to validate binding information if the bind type -# is of a form known to the server and ignore it if not. -# "strict" like "permissive" but if the bind type is unknown -# the token will be rejected. "required" any form of token -# binding is needed to be allowed. Finally the name of a -# binding method that must be present in tokens. (string -# value) -#enforce_token_bind=permissive - -# If true, the revocation list will be checked for cached -# tokens. This requires that PKI tokens are configured on the -# Keystone server. (boolean value) -#check_revocations_for_cached=false - -# Hash algorithms to use for hashing PKI tokens. This may be a -# single algorithm or multiple. The algorithms are those -# supported by Python standard hashlib.new(). The hashes will -# be tried in the order given, so put the preferred one first -# for performance. The result of the first hash will be stored -# in the cache. This will typically be set to multiple values -# only while migrating from a less secure algorithm to a more -# secure one. Once all the old tokens are expired this option -# should be set to a single value for better performance. -# (list value) -#hash_algorithms=md5 - - -[matchmaker_redis] - -# -# Options defined in oslo.messaging -# - -# Host to locate redis. (string value) -#host=127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port=6379 - -# Password for Redis server (optional). (string value) -#password= - - -[matchmaker_ring] - -# -# Options defined in oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile=/etc/oslo/matchmaker_ring.json - - -[notification] - -# -# Options defined in ceilometer.notification -# - -# Acknowledge message when event persistence fails. (boolean -# value) -#ack_on_event_error=true - -# Save event details. (boolean value) -#store_events=false - -# Messaging URLs to listen for notifications. Example: -# transport://user:pass@host1:port[,hostN:portN]/virtual_host -# (DEFAULT/transport_url is used if empty) (multi valued) -#messaging_urls= - - -[publisher] - -# -# Options defined in ceilometer.publisher.utils -# - -# Secret value for signing metering messages. (string value) -# Deprecated group/name - [DEFAULT]/metering_secret -# Deprecated group/name - [publisher_rpc]/metering_secret -#metering_secret=change this or be hacked - - -[publisher_notifier] - -# -# Options defined in ceilometer.publisher.messaging -# - -# The topic that ceilometer uses for metering notifications. -# (string value) -#metering_topic=metering - -# The driver that ceilometer uses for metering notifications. -# (string value) -#metering_driver=messagingv2 - - -[publisher_rpc] - -# -# Options defined in ceilometer.publisher.messaging -# - -# The topic that ceilometer uses for metering messages. -# (string value) -#metering_topic=metering - - -[service_credentials] - -# -# Options defined in ceilometer.service -# - -# User name to use for OpenStack service access. (string -# value) -#os_username=ceilometer - -# Password to use for OpenStack service access. (string value) -#os_password=admin - -# Tenant ID to use for OpenStack service access. (string -# value) -#os_tenant_id= - -# Tenant name to use for OpenStack service access. (string -# value) -#os_tenant_name=admin - -# Certificate chain for SSL validation. (string value) -#os_cacert= - -# Auth URL to use for OpenStack service access. (string value) -#os_auth_url=http://localhost:5000/v2.0 - -# Region name to use for OpenStack service endpoints. (string -# value) -#os_region_name= - -# Type of endpoint in Identity service catalog to use for -# communication with OpenStack services. (string value) -#os_endpoint_type=publicURL - -# Disables X.509 certificate validation when an SSL connection -# to Identity Service is established. (boolean value) -#insecure=false - - -[service_types] - -# -# Options defined in ceilometer.neutron_client -# - -# Neutron service type. (string value) -#neutron=network - - -# -# Options defined in ceilometer.nova_client -# - -# Nova service type. (string value) -#nova=compute - - -# -# Options defined in ceilometer.energy.kwapi -# - -# Kwapi service type. (string value) -#kwapi=energy - - -# -# Options defined in ceilometer.image.glance -# - -# Glance service type. (string value) -#glance=image - - -# -# Options defined in ceilometer.objectstore.swift -# - -# Swift service type. (string value) -#swift=object-store - - -[vmware] - -# -# Options defined in ceilometer.compute.virt.vmware.inspector -# - -# IP address of the VMware Vsphere host (string value) -#host_ip= - -# Username of VMware Vsphere (string value) -#host_username= - -# Password of VMware Vsphere (string value) -#host_password= - -# Number of times a VMware Vsphere API must be retried -# (integer value) -#api_retry_count=10 - -# Sleep time in seconds for polling an ongoing async task -# (floating point value) -#task_poll_interval=0.5 - -# Optional vim service WSDL location e.g -# http:///vimService.wsdl. Optional over-ride to -# default location for bug work-arounds (string value) -#wsdl_location= - - -[xenapi] - -# -# Options defined in ceilometer.compute.virt.xenapi.inspector -# - -# URL for connection to XenServer/Xen Cloud Platform (string -# value) -#connection_url= - -# Username for connection to XenServer/Xen Cloud Platform -# (string value) -#connection_username=root - -# Password for connection to XenServer/Xen Cloud Platform -# (string value) -#connection_password= - -# Timeout in seconds for XenAPI login. (integer value) -#login_timeout=10 - - diff --git a/openstack/python-ceilometer/centos/files/ceilometer.logrotate b/openstack/python-ceilometer/centos/files/ceilometer.logrotate deleted file mode 100644 index 4caa7112..00000000 --- a/openstack/python-ceilometer/centos/files/ceilometer.logrotate +++ /dev/null @@ -1,9 +0,0 @@ -compress - -/var/log/ceilometer/*.log { - rotate 14 - size 10M - missingok - compress - copytruncate -} diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-api.service b/openstack/python-ceilometer/centos/files/openstack-ceilometer-api.service deleted file mode 100644 index f688a9fd..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-api.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack ceilometer API service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/bin/python /usr/bin/gunicorn --config /usr/share/ceilometer/ceilometer-api.conf --pythonpath /usr/share/ceilometer ceilometer-api -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-collector.service b/openstack/python-ceilometer/centos/files/openstack-ceilometer-collector.service deleted file mode 100644 index be98d51c..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-collector.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack ceilometer collection service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/ceilometer-collector --logfile /var/log/ceilometer/ceilometer-collector.log -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-ipmi.service b/openstack/python-ceilometer/centos/files/openstack-ceilometer-ipmi.service deleted file mode 100644 index c0950eff..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-ipmi.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack ceilometer ipmi agent -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/ceilometer-polling --polling-namespaces ipmi --logfile /var/log/ceilometer/agent-ipmi.log -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-notification.service b/openstack/python-ceilometer/centos/files/openstack-ceilometer-notification.service deleted file mode 100644 index 64ac2f80..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-notification.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack ceilometer notification agent -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/ceilometer-agent-notification --logfile /var/log/ceilometer/ceilometer-agent-notification.log -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling b/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling deleted file mode 100644 index c2fcada2..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling +++ /dev/null @@ -1 +0,0 @@ -OPTIONS="--polling-namespace 'central' 'compute'" diff --git a/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling.service b/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling.service deleted file mode 100644 index 6dc1b3fe..00000000 --- a/openstack/python-ceilometer/centos/files/openstack-ceilometer-polling.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack ceilometer polling agent -After=syslog.target network.target - -[Service] -Type=forking -Restart=no -KillMode=process -RemainAfterExit=yes -ExecStart=/etc/rc.d/init.d/openstack-ceilometer-polling start -ExecStop=/etc/rc.d/init.d/openstack-ceilometer-polling stop -ExecReload=/etc/rc.d/init.d/openstack-ceilometer-polling reload - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-ceilometer/centos/openstack-ceilometer.spec b/openstack/python-ceilometer/centos/openstack-ceilometer.spec deleted file mode 100644 index 34a807b6..00000000 --- a/openstack/python-ceilometer/centos/openstack-ceilometer.spec +++ /dev/null @@ -1,709 +0,0 @@ -%global _without_doc 1 -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%global pypi_name ceilometer -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -Name: openstack-ceilometer -# Liberty semver reset -# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z -Epoch: 1 -Version: 9.0.1 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack measurement collection service - -Group: Applications/System -License: ASL 2.0 -URL: https://wiki.openstack.org/wiki/Ceilometer -Source0: %{pypi_name}-%{upstream_version}.tar.gz -Source1: %{pypi_name}-dist.conf -Source4: ceilometer-rootwrap-sudoers - -Source7: ceilometer-expirer-active -Source8: ceilometer-polling -Source9: ceilometer-polling.conf - -Source10: %{name}-api.service -Source11: %{name}-collector.service - -%if 0%{?with_compute} -Source12: %{name}-compute.service -%endif -%if 0%{?with_central} -Source13: %{name}-central.service -%endif - -Source16: %{name}-notification.service -Source17: %{name}-ipmi.service -Source18: %{name}-polling.service - -Source20: ceilometer-polling.conf.pmon.centos -Source21: ceilometer-polling-compute.conf.pmon.centos - - -BuildArch: noarch -BuildRequires: intltool -BuildRequires: openstack-macros -BuildRequires: python-cotyledon -BuildRequires: python-sphinx -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-pbr >= 1.10.0 -BuildRequires: git -BuildRequires: python-d2to1 -BuildRequires: python2-devel -# Required to compile translation files -BuildRequires: python-babel -BuildRequires: systemd-devel -BuildRequires: systemd -BuildRequires: systemd-units - -%description -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - - -%package -n python-ceilometer -Summary: OpenStack ceilometer python libraries -Group: Applications/System - -Requires: python-babel -Requires: python-cachetools >= 1.1.0 -Requires: python-debtcollector >= 1.2.0 -Requires: python-eventlet -Requires: python-futurist >= 0.11.0 -Requires: python-cotyledon -Requires: python-dateutil -Requires: python-greenlet -Requires: python-iso8601 -Requires: python-keystoneauth1 >= 2.1.0 -Requires: python-lxml -Requires: python-anyjson -Requires: python-jsonpath-rw -Requires: python-jsonpath-rw-ext -Requires: python-stevedore >= 1.9.0 -Requires: python-msgpack >= 0.4.0 -Requires: python-pbr -Requires: python-six >= 1.9.0 -Requires: python-tenacity >= 3.2.1 - -Requires: python-sqlalchemy -Requires: python-alembic -Requires: python-migrate - -Requires: python-webob -Requires: python-oslo-config >= 2:3.22.0 -Requires: PyYAML -Requires: python-netaddr -Requires: python-oslo-rootwrap -Requires: python-oslo-vmware >= 0.6.0 -Requires: python-requests >= 2.8.1 - -Requires: pysnmp -Requires: pytz -Requires: python-croniter - -Requires: python-retrying -Requires: python-jsonschema -Requires: python-werkzeug - -Requires: python-oslo-context -Requires: python-oslo-concurrency >= 3.5.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 1.14.0 -Requires: python-oslo-middleware >= 3.0.0 -Requires: python-oslo-policy >= 0.5.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-monotonic -Requires: python-futures - -%description -n python-ceilometer -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ceilometer python library. - - -%package common -Summary: Components common to all OpenStack ceilometer services -Group: Applications/System - -Requires: python-ceilometer = %{epoch}:%{version}-%{release} -Requires: python-oslo-messaging >= 5.12.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-utils >= 3.5.0 -Requires: python-pecan >= 1.0.0 -Requires: python-posix_ipc -Requires: python-gnocchiclient -Requires: python-wsme >= 0.8 -Requires: python-os-xenapi >= 0.1.1 - -Requires(post): systemd-units -Requires(preun): systemd-units -Requires(postun): systemd-units -Requires(pre): shadow-utils - -# Config file generation -BuildRequires: python-os-xenapi -BuildRequires: python-oslo-config >= 2:3.7.0 -BuildRequires: python-oslo-concurrency -BuildRequires: python-oslo-db -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-reports -BuildRequires: python-oslo-vmware >= 0.6.0 -BuildRequires: python-glanceclient >= 1:2.0.0 -BuildRequires: python-keystonemiddleware -BuildRequires: python-neutronclient -BuildRequires: python-novaclient >= 1:2.29.0 -BuildRequires: python-swiftclient -BuildRequires: python-croniter -BuildRequires: python-jsonpath-rw -BuildRequires: python-jsonpath-rw-ext -BuildRequires: python-lxml -BuildRequires: python-pecan >= 1.0.0 -BuildRequires: python-tooz -BuildRequires: python-werkzeug -BuildRequires: python-wsme >= 0.7 -BuildRequires: python-gnocchiclient -BuildRequires: python-cinderclient >= 1.7.1 - - -%description common -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains components common to all OpenStack -ceilometer services. - - -%if 0%{?with_compute} -%package compute -Summary: OpenStack ceilometer compute agent -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: %{name}-polling = %{epoch}:%{version}-%{release} - -Requires: python-novaclient >= 1:2.29.0 -Requires: python-keystoneclient >= 1:1.6.0 -Requires: python-tooz -Requires: libvirt-python - -%description compute -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ceilometer agent for -running on OpenStack compute nodes. - -%endif - -%if 0%{?with_central} -%package central -Summary: OpenStack ceilometer central agent -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: %{name}-polling = %{epoch}:%{version}-%{release} - -Requires: python-novaclient >= 1:2.29.0 -Requires: python-keystoneclient >= 1:1.6.0 -Requires: python-glanceclient >= 1:2.0.0 -Requires: python-swiftclient -Requires: python-neutronclient >= 4.2.0 -Requires: python-tooz - -%description central -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the central ceilometer agent. - -%endif - -%package collector -Summary: OpenStack ceilometer collector -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -# For compat with older provisioning tools. -# Remove when all reference the notification package explicitly -Requires: %{name}-notification - -Requires: python-oslo-db -Requires: python-pymongo - -%description collector -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ceilometer collector service -which collects metrics from the various agents. - - -%package notification -Summary: OpenStack ceilometer notification agent -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -%description notification -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ceilometer notification agent -which pushes metrics to the collector service from the -various OpenStack services. - - -%package api -Summary: OpenStack ceilometer API service -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires: python-keystonemiddleware >= 4.0.0 -Requires: python-oslo-db >= 4.1.0 -Requires: python-pymongo -Requires: python-paste-deploy -Requires: python-tooz - -%description api -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ceilometer API service. - - -%package ipmi -Summary: OpenStack ceilometer ipmi agent -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: %{name}-polling = %{epoch}:%{version}-%{release} - -Requires: python-novaclient >= 1:2.29.0 -Requires: python-keystoneclient >= 1:1.6.0 -Requires: python-neutronclient >= 4.2.0 -Requires: python-tooz -Requires: python-oslo-rootwrap >= 2.0.0 -Requires: ipmitool - -%description ipmi -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the ipmi agent to be run on OpenStack -nodes from which IPMI sensor data is to be collected directly, -by-passing Ironic's management of baremetal. - - -%package polling -Summary: OpenStack ceilometer polling agent -Group: Applications/System - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires: python-cinderclient >= 1.7.1 -Requires: python-novaclient >= 1:2.29.0 -Requires: python-keystoneclient >= 1:1.6.0 -Requires: python-glanceclient >= 1:2.0.0 -Requires: python-swiftclient >= 2.2.0 -Requires: libvirt-python -Requires: python-neutronclient -Requires: python-tooz -Requires: /usr/bin/systemctl - - -%description polling -Ceilometer aims to deliver a unique point of contact for billing systems to -acquire all counters they need to establish customer billing, across all -current and future OpenStack components. The delivery of counters must -be tracable and auditable, the counters must be easily extensible to support -new projects, and agents doing data collections should be -independent of the overall system. - -This package contains the polling service. - -%package -n python-ceilometer-tests -Summary: Ceilometer tests -Requires: python-ceilometer = %{epoch}:%{version}-%{release} -Requires: python-gabbi >= 1.30.0 - -%description -n python-ceilometer-tests -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains the Ceilometer test files. - -%if 0%{?with_doc} -%package doc -Summary: Documentation for OpenStack ceilometer -Group: Documentation - -# Required to build module documents -BuildRequires: python-eventlet -BuildRequires: python-sqlalchemy -BuildRequires: python-webob -BuildRequires: python-openstackdocstheme -# while not strictly required, quiets the build down when building docs. -BuildRequires: python-migrate, python-iso8601 - -%description doc -OpenStack ceilometer provides services to measure and -collect metrics from OpenStack components. - -This package contains documentation files for ceilometer. -%endif - -%prep -%autosetup -n ceilometer-%{upstream_version} -S git - -find . \( -name .gitignore -o -name .placeholder \) -delete - -find ceilometer -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + - -# TODO: Have the following handle multi line entries -sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -rm -rf {test-,}requirements.txt tools/{pip,test}-requires - -%build -# Generate config file -PYTHONPATH=. oslo-config-generator --config-file=etc/ceilometer/ceilometer-config-generator.conf - -export PBR_VERSION=%{version} -%{__python2} setup.py build - -# Generate i18n files -export PBR_VERSION=%{version} -%{__python2} setup.py compile_catalog -d build/lib/%{pypi_name}/locale - -# Programmatically update defaults in sample config -# which is installed at /etc/ceilometer/ceilometer.conf -# TODO: Make this more robust -# Note it only edits the first occurrence, so assumes a section ordering in sample -# and also doesn't support multi-valued variables. -while read name eq value; do - test "$name" && test "$value" || continue - sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/ceilometer/ceilometer.conf -done < %{SOURCE1} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Install sql migration cfg and sql files that were not installed by setup.py -install -m 644 ceilometer/storage/sqlalchemy/migrate_repo/migrate.cfg %{buildroot}%{python_sitelib}/ceilometer/storage/sqlalchemy/migrate_repo/migrate.cfg -install -m 644 ceilometer/storage/sqlalchemy/migrate_repo/versions/*.sql %{buildroot}%{python_sitelib}/ceilometer/storage/sqlalchemy/migrate_repo/versions/. - -# Install non python files that were not installed by setup.py -install -m 755 -d %{buildroot}%{python_sitelib}/ceilometer/hardware/pollsters/data -install -m 644 ceilometer/hardware/pollsters/data/snmp.yaml %{buildroot}%{python_sitelib}/ceilometer/hardware/pollsters/data/snmp.yaml - - -# Create fake egg-info for the tempest plugin -# TODO switch to %{service} everywhere as in openstack-example.spec -%global service ceilometer -%py2_entrypoint %{service} %{service} - -# docs generation requires everything to be installed first - -pushd doc - -%if 0%{?with_doc} -export PBR_VERSION=%{version} -%{__python2} setup.py build_sphinx -b html -# Fix hidden-file-or-dir warnings -rm -fr doc/build/html/.doctrees doc/build/html/.buildinfo -%endif - -popd - -# Setup directories -install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer -install -d -m 755 %{buildroot}%{_sharedstatedir}/ceilometer/tmp -install -d -m 750 %{buildroot}%{_localstatedir}/log/ceilometer - -# Install config files -install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer -install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.d -install -d -m 755 %{buildroot}%{_sysconfdir}/sudoers.d -install -d -m 755 %{buildroot}%{_sysconfdir}/sysconfig -install -d -m 755 %{buildroot}%{_sysconfdir}/ceilometer/meters.d -install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/ceilometer/ceilometer-dist.conf -install -p -D -m 440 %{SOURCE4} %{buildroot}%{_sysconfdir}/sudoers.d/ceilometer -install -p -D -m 640 etc/ceilometer/ceilometer.conf %{buildroot}%{_sysconfdir}/ceilometer/ceilometer.conf -install -p -D -m 640 etc/ceilometer/policy.json %{buildroot}%{_sysconfdir}/ceilometer/policy.json -install -p -D -m 640 ceilometer/pipeline/data/pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/pipeline.yaml -install -p -D -m 640 etc/ceilometer/polling.yaml %{buildroot}%{_sysconfdir}/ceilometer/polling.yaml -install -p -D -m 640 ceilometer/pipeline/data/event_pipeline.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_pipeline.yaml -install -p -D -m 640 ceilometer/pipeline/data/event_definitions.yaml %{buildroot}%{_sysconfdir}/ceilometer/event_definitions.yaml -install -p -D -m 640 etc/ceilometer/api_paste.ini %{buildroot}%{_sysconfdir}/ceilometer/api_paste.ini -install -p -D -m 640 etc/ceilometer/rootwrap.conf %{buildroot}%{_sysconfdir}/ceilometer/rootwrap.conf -install -p -D -m 640 etc/ceilometer/rootwrap.d/ipmi.filters %{buildroot}/%{_sysconfdir}/ceilometer/rootwrap.d/ipmi.filters -install -p -D -m 640 ceilometer/publisher/data/gnocchi_resources.yaml %{buildroot}%{_sysconfdir}/ceilometer/gnocchi_resources.yaml -install -p -D -m 640 ceilometer/data/meters.d/meters.yaml %{buildroot}%{_sysconfdir}/ceilometer/meters.d/meters.yaml -install -p -D -m 640 ceilometer/api/ceilometer-api.py %{buildroot}%{_datadir}/ceilometer/ceilometer-api.py - - - -# Install initscripts for services -%if 0%{?rhel} && 0%{?rhel} <= 6 -install -p -D -m 755 %{SOURCE10} %{buildroot}%{_initrddir}/%{name}-api -install -p -D -m 755 %{SOURCE11} %{buildroot}%{_initrddir}/%{name}-collector -%if 0%{?with_compute} -install -p -D -m 755 %{SOURCE12} %{buildroot}%{_initrddir}/%{name}-compute -%endif -%if 0%{?with_central} -install -p -D -m 755 %{SOURCE13} %{buildroot}%{_initrddir}/%{name}-central -%endif -install -p -D -m 755 %{SOURCE16} %{buildroot}%{_initrddir}/%{name}-notification -install -p -D -m 755 %{SOURCE17} %{buildroot}%{_initrddir}/%{name}-ipmi -install -p -D -m 755 %{SOURCE18} %{buildroot}%{_initrddir}/%{name}-polling - -# Install upstart jobs examples -install -d -m 755 %{buildroot}%{_datadir}/ceilometer -install -p -m 644 %{SOURCE100} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE110} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE120} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE130} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE140} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE150} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE160} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE170} %{buildroot}%{_datadir}/ceilometer/ -install -p -m 644 %{SOURCE180} %{buildroot}%{_datadir}/ceilometer/ -%else -install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service -install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-collector.service -%if 0%{?with_compute} -install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/%{name}-compute.service -%endif -%if 0%{?with_central} -install -p -D -m 644 %{SOURCE13} %{buildroot}%{_unitdir}/%{name}-central.service -%endif -install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/%{name}-notification.service -install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/%{name}-ipmi.service -install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/%{name}-polling.service -%endif - -install -p -D -m 755 %{SOURCE7} %{buildroot}%{_bindir}/ceilometer-expirer-active -install -p -D -m 755 %{SOURCE8} %{buildroot}%{_initrddir}/openstack-ceilometer-polling - -mkdir -p %{buildroot}/%{_sysconfdir}/ceilometer -install -p -D -m 644 %{SOURCE9} %{buildroot}%{_sysconfdir}/ceilometer/ceilometer-polling.conf -install -p -D -m 644 %{SOURCE20} %{buildroot}%{_sysconfdir}/ceilometer/ceilometer-polling.conf.pmon -install -p -D -m 644 %{SOURCE21} %{buildroot}%{_sysconfdir}/ceilometer/ceilometer-polling-compute.conf.pmon - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*/LC_*/%{pypi_name}*po -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*pot -mv %{buildroot}%{python2_sitelib}/%{pypi_name}/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang %{pypi_name} --all-name - -# Remove unneeded in production stuff -rm -f %{buildroot}/usr/share/doc/ceilometer/README* - -# Remove unused files -rm -fr %{buildroot}/usr/etc - -%pre common -getent group ceilometer >/dev/null || groupadd -r ceilometer --gid 166 -if ! getent passwd ceilometer >/dev/null; then - # Id reservation request: https://bugzilla.redhat.com/923891 - useradd -u 166 -r -g ceilometer -G ceilometer,nobody -d %{_sharedstatedir}/ceilometer -s /sbin/nologin -c "OpenStack ceilometer Daemons" ceilometer -fi -exit 0 - - -%if 0%{?with_compute} -%post compute -%systemd_post %{name}-compute.service -%endif - -%post collector -%systemd_post %{name}-collector.service - -%post notification -%systemd_post %{name}-notification.service - -%post api -%systemd_post %{name}-api.service - -%if 0%{?with_central} -%post central -%systemd_post %{name}-central.service -%endif - -%post ipmi -%systemd_post %{name}-alarm-ipmi.service - -%post polling -/usr/bin/systemctl disable %{name}-polling.service - -%if 0%{?with_compute} -%preun compute -%systemd_preun %{name}-compute.service -%endif - -%preun collector -%systemd_preun %{name}-collector.service - -%preun notification -%systemd_preun %{name}-notification.service - -%preun api -%systemd_preun %{name}-api.service - -%if 0%{?with_central} -%preun central -%systemd_preun %{name}-central.service -%endif - -%preun ipmi -%systemd_preun %{name}-ipmi.service - -%preun polling -%systemd_preun %{name}-polling.service - -%if 0%{?with_compute} -%postun compute -%systemd_postun_with_restart %{name}-compute.service -%endif - -%postun collector -%systemd_postun_with_restart %{name}-collector.service - -%postun notification -%systemd_postun_with_restart %{name}-notification.service - -%postun api -%systemd_postun_with_restart %{name}-api.service - -%if 0%{?with_central} -%postun central -%systemd_postun_with_restart %{name}-central.service -%endif - -%postun ipmi -%systemd_postun_with_restart %{name}-ipmi.service - - -%postun polling -/usr/bin/systemctl disable %{name}-polling.service - - -%files common -f %{pypi_name}.lang -%license LICENSE -%dir %{_sysconfdir}/ceilometer -%{_datadir}/ceilometer/ceilometer-api.* -%attr(-, root, ceilometer) %{_datadir}/ceilometer/ceilometer-dist.conf -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/ceilometer.conf -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/policy.json -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/pipeline.yaml -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/polling.yaml -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/api_paste.ini -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/gnocchi_resources.yaml - -%dir %attr(0750, ceilometer, root) %{_localstatedir}/log/ceilometer - -%{_bindir}/ceilometer-db-legacy-clean -%{_bindir}/ceilometer-expirer -%{_bindir}/ceilometer-send-sample -%{_bindir}/ceilometer-upgrade - -%defattr(-, ceilometer, ceilometer, -) -%dir %{_sharedstatedir}/ceilometer -%dir %{_sharedstatedir}/ceilometer/tmp - - -%files -n python-ceilometer -%{python2_sitelib}/ceilometer -%{python2_sitelib}/ceilometer-*.egg-info -%exclude %{python2_sitelib}/ceilometer/tests - -%files -n python-ceilometer-tests -%license LICENSE -%{python2_sitelib}/ceilometer/tests -%{python2_sitelib}/%{service}_tests.egg-info - -%if 0%{?with_doc} -%files doc -%doc doc/build/html -%endif - -%if 0%{?with_compute} -%files compute -%{_unitdir}/%{name}-compute.service -%endif - - -%files collector -%{_bindir}/ceilometer-collector* -%{_bindir}/ceilometer-expirer-active -%{_unitdir}/%{name}-collector.service - - -%files notification -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_pipeline.yaml -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/event_definitions.yaml -%dir %{_sysconfdir}/ceilometer/meters.d -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/meters.d/meters.yaml -%{_bindir}/ceilometer-agent-notification -%{_unitdir}/%{name}-notification.service - - -%files api -%{_bindir}/ceilometer-api -%{_unitdir}/%{name}-api.service - - -%if 0%{?with_central} -%files central -%{_unitdir}/%{name}-central.service -%endif - - -%files ipmi -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.conf -%config(noreplace) %attr(-, root, ceilometer) %{_sysconfdir}/ceilometer/rootwrap.d/ipmi.filters -%{_bindir}/ceilometer-rootwrap -%{_sysconfdir}/sudoers.d/ceilometer -%{_unitdir}/%{name}-ipmi.service - -%files polling -%{_bindir}/ceilometer-polling -%{_initrddir}/openstack-ceilometer-polling -%{_sysconfdir}/ceilometer/ceilometer-polling.conf -%{_sysconfdir}/ceilometer/ceilometer-polling.conf.pmon -%{_sysconfdir}/ceilometer/ceilometer-polling-compute.conf.pmon -%{_unitdir}/%{name}-polling.service - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Tue Sep 12 2017 rdo-trunk 1:9.0.1-1 -- Update to 9.0.1 - -* Thu Aug 24 2017 Alfredo Moralejo 1:9.0.0-1 -- Update to 9.0.0 - diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-agent-compute b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-agent-compute deleted file mode 100644 index d105989d..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-agent-compute +++ /dev/null @@ -1,125 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: -# Required-Start: $remote_fs $network $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 3 5 -# Default-Stop: 0 1 2 6 -# Short-Description: Ceilometer Servers -# Description: OpenStack Monitoring Service (code-named Ceilometer) server(s) -### END INIT INFO - -SUFFIX=agent-compute -DESC="ceilometer-$SUFFIX" -DAEMON="/usr/bin/ceilometer-$SUFFIX" -CONFIG="/etc/ceilometer/ceilometer.conf" -PIDFILE="/var/run/ceilometer-$SUFFIX.pid" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - if [ ! -d /var/log/ceilometer ]; then - mkdir /var/log/ceilometer - fi - - # load up the platform info including nodetype and subfunction - source /etc/platform/platform.conf - - # We'll need special handling for controller with compute subfunction, - function=`echo "$subfunction" | cut -f 2 -d','` - if [ "$nodetype" != "compute" -a "$function" != "compute" ] ; then - logger -t $0 -p warn "exiting because this is not compute host" - exit 0 - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- --config-file $CONFIG --log-dir=/var/log/ceilometer - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -reset() -{ - stop - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 2 - fi - [ ! -d /var/log/ceilometer ] && mkdir /var/log/ceilometer - sudo -u postgres dropdb ceilometer - sudo -u postgres createdb ceilometer - ceilometer-dbsync - - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 - diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-expirer-active b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-expirer-active deleted file mode 100644 index e800d36e..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-expirer-active +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run ceilometer-expirer when on active controller only -# -CEILOMETER_EXPIRER_INFO="/var/run/ceilometer-expirer.info" -CEILOMETER_EXPIRER_CMD="/usr/bin/nice -n 2 /usr/bin/ceilometer-expirer" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${CEILOMETER_EXPIRER_INFO} ] - then - echo skip_count=0 > ${CEILOMETER_EXPIRER_INFO} - fi - - source ${CEILOMETER_EXPIRER_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - sh -c "exec taskset -c $idle_core ${CEILOMETER_EXPIRER_CMD}" - sed -i "/skip_count/s/=.*/=0/" ${CEILOMETER_EXPIRER_INFO} - exit 0 - fi - fi - - if [ "$skip_count" -lt "3" ] - then - newval=$(($skip_count+1)) - sed -i "/skip_count/s/=.*/=$newval/" ${CEILOMETER_EXPIRER_INFO} - exit 0 - fi - fi - - eval ${CEILOMETER_EXPIRER_CMD} - sed -i "/skip_count/s/=.*/=0/" ${CEILOMETER_EXPIRER_INFO} -fi - -exit 0 diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling deleted file mode 100644 index fa96032c..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling +++ /dev/null @@ -1,138 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: -# Required-Start: $remote_fs $network $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 3 5 -# Default-Stop: 0 1 2 6 -# Short-Description: Ceilometer Servers -# Description: OpenStack Monitoring Service (code-named Ceilometer) server(s) -### END INIT INFO - -# Platform paths and flags -. /usr/bin/tsconfig - -SUFFIX=polling -DESC="ceilometer-$SUFFIX" -DAEMON="/usr/bin/ceilometer-$SUFFIX" -CONFIG="/etc/ceilometer/ceilometer.conf" -PIDFILE="/var/run/ceilometer-$SUFFIX.pid" -COMPLETED="/etc/platform/.initial_config_complete" - -start() -{ - if [ ! -f $COMPLETED ]; then - echo "Waiting for for $COMPLETED" - exit 0 - fi - - . $PLATFORM_CONF_FILE - if [[ "$nodetype" == "worker" || "$subfunction" == *"worker"* ]] ; then - if [ ! -f $VOLATILE_WORKER_CONFIG_COMPLETE ]; then - # Do not start polling until compute manifests have been applied - echo "Waiting for $VOLATILE_WORKER_CONFIG_COMPLETE" - exit 0 - elif [ -f $VOLATILE_DISABLE_WORKER_SERVICES ]; then - # Do not start polling if compute services are disabled. This can - # happen during an upgrade when controller-1 is running a newer - # load than controller-0. - echo "Waiting for $VOLATILE_DISABLE_WORKER_SERVICES" - exit 0 - fi - fi - - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - if [ ! -d /var/log/ceilometer ]; then - mkdir /var/log/ceilometer - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- --config-file $CONFIG --log-dir=/var/log/ceilometer - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -reset() -{ - stop - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 2 - fi - [ ! -d /var/log/ceilometer ] && mkdir /var/log/ceilometer - sudo -u postgres dropdb ceilometer - sudo -u postgres createdb ceilometer - ceilometer-dbsync - - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling-compute.conf.pmon.centos b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling-compute.conf.pmon.centos deleted file mode 100644 index 84b13370..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling-compute.conf.pmon.centos +++ /dev/null @@ -1,26 +0,0 @@ -[process] -process = ceilometer-polling -service = openstack-ceilometer-polling -pidfile = /var/run/ceilometer-polling.pid -script = /etc/init.d/openstack-ceilometer-polling -style = lsb ; ocf or lsb -severity = minor ; minor, major, critical -restarts = 5 ; restart retries before error assertion -interval = 10 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. - -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring -subfunction = worker ; Optional label. - ; Manage this process in the context of a combo host subfunction - ; Choices: worker or storage. - ; when specified pmond will wait for - ; /var/run/.worker_config_complete or - ; /var/run/.storage_config_complete - ; ... before managing this process with the specified subfunction - ; Excluding this label will cause this process to be managed by default on startup diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf deleted file mode 100644 index 23a5736c..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf +++ /dev/null @@ -1,19 +0,0 @@ -[process] -process = ceilometer-polling -pidfile = /var/run/ceilometer-polling.pid -script = /etc/init.d/ceilometer-polling -style = lsb ; ocf or lsb -severity = minor ; minor, major, critical -restarts = 5 ; restart retries before error assertion -interval = 10 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. -; These settings will generate a log only without attempting to restart -; pmond will put the process into an ignore state after failure. - -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring diff --git a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf.pmon.centos b/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf.pmon.centos deleted file mode 100644 index 1f467b27..00000000 --- a/openstack/python-ceilometer/python-ceilometer/static/ceilometer-polling.conf.pmon.centos +++ /dev/null @@ -1,18 +0,0 @@ -[process] -process = ceilometer-polling -service = openstack-ceilometer-polling -pidfile = /var/run/ceilometer-polling.pid -script = /etc/init.d/openstack-ceilometer-polling -style = lsb ; ocf or lsb -severity = minor ; minor, major, critical -restarts = 5 ; restart retries before error assertion -interval = 10 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. - -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring diff --git a/openstack/python-cinder/centos/build_srpm.data b/openstack/python-cinder/centos/build_srpm.data deleted file mode 100644 index 5d992563..00000000 --- a/openstack/python-cinder/centos/build_srpm.data +++ /dev/null @@ -1,5 +0,0 @@ -SRC_DIR="$CGCS_BASE/git/cinder" -COPY_LIST="$FILES_BASE/*" -TIS_BASE_SRCREV=90b64640126fd88e50b2f05841c393757f4faae7 -TIS_PATCH_VER=GITREVCOUNT -BUILD_IS_SLOW=5 diff --git a/openstack/python-cinder/centos/files/cinder-dist.conf b/openstack/python-cinder/centos/files/cinder-dist.conf deleted file mode 100644 index 5df5eaee..00000000 --- a/openstack/python-cinder/centos/files/cinder-dist.conf +++ /dev/null @@ -1,19 +0,0 @@ -[DEFAULT] -logdir = /var/log/cinder -state_path = /var/lib/cinder -lock_path = /var/lib/cinder/tmp -volumes_dir = /etc/cinder/volumes -iscsi_helper = lioadm -rootwrap_config = /etc/cinder/rootwrap.conf -auth_strategy = keystone - -[database] -connection = mysql://cinder:cinder@localhost/cinder - -[keystone_authtoken] -admin_tenant_name = %SERVICE_TENANT_NAME% -admin_user = %SERVICE_USER% -admin_password = %SERVICE_PASSWORD% -auth_host = 127.0.0.1 -auth_port = 35357 -auth_protocol = http diff --git a/openstack/python-cinder/centos/files/cinder-purge-deleted-active b/openstack/python-cinder/centos/files/cinder-purge-deleted-active deleted file mode 100644 index 79747105..00000000 --- a/openstack/python-cinder/centos/files/cinder-purge-deleted-active +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run cinder-manage to purge deleted records on active controller only -# -CINDER_PURGE_INFO="/var/run/cinder-purge.info" -CINDER_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/cinder-manage db purge 1 >>/dev/null 2>&1" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${CINDER_PURGE_INFO} ] - then - echo delay_count=0 > ${CINDER_PURGE_INFO} - fi - - source ${CINDER_PURGE_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - # Purge soft deleted records that are older than 1 day from cinder database. - sh -c "exec taskset -c $idle_core ${CINDER_PURGE_CMD}" - sed -i "/delay_count/s/=.*/=0/" ${CINDER_PURGE_INFO} - exit 0 - fi - fi - - if [ "$delay_count" -lt "3" ] - then - newval=$(($delay_count+1)) - sed -i "/delay_count/s/=.*/=$newval/" ${CINDER_PURGE_INFO} - (sleep 3600; /usr/bin/cinder-purge-deleted-active) & - exit 0 - fi - fi - - # Purge soft deleted records that are older than 1 day from cinder database. - eval ${CINDER_PURGE_CMD} - sed -i "/delay_count/s/=.*/=0/" ${CINDER_PURGE_INFO} -fi - -exit 0 diff --git a/openstack/python-cinder/centos/files/cinder-sudoers b/openstack/python-cinder/centos/files/cinder-sudoers deleted file mode 100644 index ed5d479d..00000000 --- a/openstack/python-cinder/centos/files/cinder-sudoers +++ /dev/null @@ -1,3 +0,0 @@ -Defaults:cinder !requiretty - -cinder ALL = (root) NOPASSWD: /usr/bin/cinder-rootwrap /etc/cinder/rootwrap.conf * diff --git a/openstack/python-cinder/centos/files/cinder.conf.sample b/openstack/python-cinder/centos/files/cinder.conf.sample deleted file mode 100644 index 52982660..00000000 --- a/openstack/python-cinder/centos/files/cinder.conf.sample +++ /dev/null @@ -1,5154 +0,0 @@ -[DEFAULT] - -# -# From cinder -# - -# The maximum number of items that a collection resource returns in a single -# response (integer value) -#osapi_max_limit = 1000 - -# DEPRECATED: Base URL that will be presented to users in links to the -# OpenStack Volume API (string value) -# Deprecated group/name - [DEFAULT]/osapi_compute_link_prefix -#osapi_volume_base_URL = - -# Json file indicating user visible filter parameters for list queries. (string -# value) -# Deprecated group/name - [DEFAULT]/query_volume_filters -#resource_query_filters_file = /etc/cinder/resource_filters.json - -# DEPRECATED: Volume filter options which non-admin user could use to query -# volumes. Default values are: ['name', 'status', 'metadata', -# 'availability_zone' ,'bootable', 'group_id'] (list value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#query_volume_filters = name,status,metadata,availability_zone,bootable,group_id - -# DEPRECATED: Allow the ability to modify the extra-spec settings of an in-use -# volume-type. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#allow_inuse_volume_type_modification = false - -# Treat X-Forwarded-For as the canonical remote address. Only enable this if -# you have a sanitizing proxy. (boolean value) -#use_forwarded_for = false - -# Public url to use for versions endpoint. The default is None, which will use -# the request's host_url attribute to populate the URL base. If Cinder is -# operating behind a proxy, you will want to change this to represent the -# proxy's URL. (string value) -# Deprecated group/name - [DEFAULT]/osapi_volume_base_URL -#public_endpoint = - -# Backup services use same backend. (boolean value) -#backup_use_same_host = false - -# Compression algorithm (None to disable) (string value) -# Allowed values: none, off, no, zlib, gzip, bz2, bzip2 -#backup_compression_algorithm = zlib - -# Backup metadata version to be used when backing up volume metadata. If this -# number is bumped, make sure the service doing the restore supports the new -# version. (integer value) -#backup_metadata_version = 2 - -# The number of chunks or objects, for which one Ceilometer notification will -# be sent (integer value) -#backup_object_number_per_notification = 10 - -# Interval, in seconds, between two progress notifications reporting the backup -# status (integer value) -#backup_timer_interval = 120 - -# Ceph configuration file to use. (string value) -#backup_ceph_conf = /etc/ceph/ceph.conf - -# The Ceph user to connect with. Default here is to use the same user as for -# Cinder volumes. If not using cephx this should be set to None. (string value) -#backup_ceph_user = cinder - -# The chunk size, in bytes, that a backup is broken into before transfer to the -# Ceph object store. (integer value) -#backup_ceph_chunk_size = 134217728 - -# The Ceph pool where volume backups are stored. (string value) -#backup_ceph_pool = backups - -# RBD stripe unit to use when creating a backup image. (integer value) -#backup_ceph_stripe_unit = 0 - -# RBD stripe count to use when creating a backup image. (integer value) -#backup_ceph_stripe_count = 0 - -# If True, apply JOURNALING and EXCLUSIVE_LOCK feature bits to the backup RBD -# objects to allow mirroring (boolean value) -#backup_ceph_image_journals = false - -# If True, always discard excess bytes when restoring volumes i.e. pad with -# zeroes. (boolean value) -#restore_discard_excess_bytes = true - -# Base dir containing mount point for gluster share. (string value) -#glusterfs_backup_mount_point = $state_path/backup_mount - -# GlusterFS share in : format. -# Eg: 1.2.3.4:backup_vol (string value) -#glusterfs_backup_share = - -# The GCS bucket to use. (string value) -#backup_gcs_bucket = - -# The size in bytes of GCS backup objects. (integer value) -#backup_gcs_object_size = 52428800 - -# The size in bytes that changes are tracked for incremental backups. -# backup_gcs_object_size has to be multiple of backup_gcs_block_size. (integer -# value) -#backup_gcs_block_size = 32768 - -# GCS object will be downloaded in chunks of bytes. (integer value) -#backup_gcs_reader_chunk_size = 2097152 - -# GCS object will be uploaded in chunks of bytes. Pass in a value of -1 if the -# file is to be uploaded as a single chunk. (integer value) -#backup_gcs_writer_chunk_size = 2097152 - -# Number of times to retry. (integer value) -#backup_gcs_num_retries = 3 - -# List of GCS error codes. (list value) -#backup_gcs_retry_error_codes = 429 - -# Location of GCS bucket. (string value) -#backup_gcs_bucket_location = US - -# Storage class of GCS bucket. (string value) -#backup_gcs_storage_class = NEARLINE - -# Absolute path of GCS service account credential file. (string value) -#backup_gcs_credential_file = - -# Owner project id for GCS bucket. (string value) -#backup_gcs_project_id = - -# Http user-agent string for gcs api. (string value) -#backup_gcs_user_agent = gcscinder - -# Enable or Disable the timer to send the periodic progress notifications to -# Ceilometer when backing up the volume to the GCS backend storage. The default -# value is True to enable the timer. (boolean value) -#backup_gcs_enable_progress_timer = true - -# URL for http proxy access. (uri value) -#backup_gcs_proxy_url = - -# Base dir containing mount point for NFS share. (string value) -#backup_mount_point_base = $state_path/backup_mount - -# NFS share in hostname:path, ipv4addr:path, or "[ipv6addr]:path" format. -# (string value) -#backup_share = - -# Mount options passed to the NFS client. See NFS man page for details. (string -# value) -#backup_mount_options = - -# The maximum size in bytes of the files used to hold backups. If the volume -# being backed up exceeds this size, then it will be backed up into multiple -# files.backup_file_size must be a multiple of backup_sha_block_size_bytes. -# (integer value) -#backup_file_size = 1999994880 - -# The size in bytes that changes are tracked for incremental backups. -# backup_file_size has to be multiple of backup_sha_block_size_bytes. (integer -# value) -#backup_sha_block_size_bytes = 32768 - -# Enable or Disable the timer to send the periodic progress notifications to -# Ceilometer when backing up the volume to the backend storage. The default -# value is True to enable the timer. (boolean value) -#backup_enable_progress_timer = true - -# Path specifying where to store backups. (string value) -#backup_posix_path = $state_path/backup - -# Custom directory to use for backups. (string value) -#backup_container = - -# The URL of the Swift endpoint (uri value) -#backup_swift_url = - -# The URL of the Keystone endpoint (uri value) -#backup_swift_auth_url = - -# Info to match when looking for swift in the service catalog. Format is: -# separated values of the form: :: - -# Only used if backup_swift_url is unset (string value) -#swift_catalog_info = object-store:swift:publicURL - -# Info to match when looking for keystone in the service catalog. Format is: -# separated values of the form: :: - -# Only used if backup_swift_auth_url is unset (string value) -#keystone_catalog_info = identity:Identity Service:publicURL - -# Swift authentication mechanism. (string value) -# Allowed values: per_user, single_user -#backup_swift_auth = per_user - -# Swift authentication version. Specify "1" for auth 1.0, or "2" for auth 2.0 -# or "3" for auth 3.0 (string value) -#backup_swift_auth_version = 1 - -# Swift tenant/account name. Required when connecting to an auth 2.0 system -# (string value) -#backup_swift_tenant = - -# Swift user domain name. Required when connecting to an auth 3.0 system -# (string value) -#backup_swift_user_domain = - -# Swift project domain name. Required when connecting to an auth 3.0 system -# (string value) -#backup_swift_project_domain = - -# Swift project/account name. Required when connecting to an auth 3.0 system -# (string value) -#backup_swift_project = - -# Swift user name (string value) -#backup_swift_user = - -# Swift key for authentication (string value) -#backup_swift_key = - -# The default Swift container to use (string value) -#backup_swift_container = volumebackups - -# The size in bytes of Swift backup objects (integer value) -#backup_swift_object_size = 52428800 - -# The size in bytes that changes are tracked for incremental backups. -# backup_swift_object_size has to be multiple of backup_swift_block_size. -# (integer value) -#backup_swift_block_size = 32768 - -# The number of retries to make for Swift operations (integer value) -#backup_swift_retry_attempts = 3 - -# The backoff time in seconds between Swift retries (integer value) -#backup_swift_retry_backoff = 2 - -# Enable or Disable the timer to send the periodic progress notifications to -# Ceilometer when backing up the volume to the Swift backend storage. The -# default value is True to enable the timer. (boolean value) -#backup_swift_enable_progress_timer = true - -# Location of the CA certificate file to use for swift client requests. (string -# value) -#backup_swift_ca_cert_file = - -# Bypass verification of server certificate when making SSL connection to -# Swift. (boolean value) -#backup_swift_auth_insecure = false - -# Volume prefix for the backup id when backing up to TSM (string value) -#backup_tsm_volume_prefix = backup - -# TSM password for the running username (string value) -#backup_tsm_password = password - -# Enable or Disable compression for backups (boolean value) -#backup_tsm_compression = true - -# Driver to use for backups. (string value) -#backup_driver = cinder.backup.drivers.swift - -# Offload pending backup delete during backup service startup. If false, the -# backup service will remain down until all pending backups are deleted. -# (boolean value) -#backup_service_inithost_offload = true - -# Name of this cluster. Used to group volume hosts that share the same backend -# configurations to work in HA Active-Active mode. Active-Active is not yet -# supported. (string value) -#cluster = - -# Top-level directory for maintaining cinder's state (string value) -# Deprecated group/name - [DEFAULT]/pybasedir -#state_path = /var/lib/cinder - -# IP address of this host (unknown value) -#my_ip = 10.10.1.23 - -# A list of the URLs of glance API servers available to cinder -# ([http[s]://][hostname|ip]:port). If protocol is not specified it defaults to -# http. (list value) -#glance_api_servers = - -# DEPRECATED: Version of the glance API to use (integer value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: Glance v1 support will be removed in Queens -#glance_api_version = 2 - -# Number retries when downloading an image from glance (integer value) -# Minimum value: 0 -#glance_num_retries = 0 - -# Allow to perform insecure SSL (https) requests to glance (https will be used -# but cert validation will not be performed). (boolean value) -#glance_api_insecure = false - -# Enables or disables negotiation of SSL layer compression. In some cases -# disabling compression can improve data throughput, such as when high network -# bandwidth is available and you use compressed image formats like qcow2. -# (boolean value) -#glance_api_ssl_compression = false - -# Location of ca certificates file to use for glance client requests. (string -# value) -#glance_ca_certificates_file = - -# http/https timeout value for glance operations. If no value (None) is -# supplied here, the glanceclient default value is used. (integer value) -#glance_request_timeout = - -# DEPRECATED: Deploy v1 of the Cinder API. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#enable_v1_api = false - -# DEPRECATED: Deploy v2 of the Cinder API. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#enable_v2_api = true - -# Deploy v3 of the Cinder API. (boolean value) -#enable_v3_api = true - -# Enables or disables rate limit of the API. (boolean value) -#api_rate_limit = true - -# Specify list of extensions to load when using osapi_volume_extension option -# with cinder.api.contrib.select_extensions (list value) -#osapi_volume_ext_list = - -# osapi volume extension to load (multi valued) -#osapi_volume_extension = cinder.api.contrib.standard_extensions - -# Full class name for the Manager for volume (string value) -#volume_manager = cinder.volume.manager.VolumeManager - -# Full class name for the Manager for volume backup (string value) -#backup_manager = cinder.backup.manager.BackupManager - -# Full class name for the Manager for scheduler (string value) -#scheduler_manager = cinder.scheduler.manager.SchedulerManager - -# Name of this node. This can be an opaque identifier. It is not necessarily a -# host name, FQDN, or IP address. (unknown value) -#host = tis-dev-30-20171005 - -# Availability zone of this node. Can be overridden per volume backend with the -# option "backend_availability_zone". (string value) -#storage_availability_zone = nova - -# Default availability zone for new volumes. If not set, the -# storage_availability_zone option value is used as the default for new -# volumes. (string value) -#default_availability_zone = - -# If the requested Cinder availability zone is unavailable, fall back to the -# value of default_availability_zone, then storage_availability_zone, instead -# of failing. (boolean value) -#allow_availability_zone_fallback = false - -# Default volume type to use (string value) -#default_volume_type = - -# Default group type to use (string value) -#default_group_type = - -# Time period for which to generate volume usages. The options are hour, day, -# month, or year. (string value) -#volume_usage_audit_period = month - -# Path to the rootwrap configuration file to use for running commands as root -# (string value) -#rootwrap_config = /etc/cinder/rootwrap.conf - -# Enable monkey patching (boolean value) -#monkey_patch = false - -# List of modules/decorators to monkey patch (list value) -#monkey_patch_modules = - -# Maximum time since last check-in for a service to be considered up (integer -# value) -#service_down_time = 60 - -# The full class name of the volume API class to use (string value) -#volume_api_class = cinder.volume.api.API - -# The full class name of the volume backup API class (string value) -#backup_api_class = cinder.backup.api.API - -# The strategy to use for auth. Supports noauth or keystone. (string value) -# Allowed values: noauth, keystone -#auth_strategy = keystone - -# A list of backend names to use. These backend names should be backed by a -# unique [CONFIG] group with its options (list value) -#enabled_backends = - -# Whether snapshots count against gigabyte quota (boolean value) -#no_snapshot_gb_quota = false - -# The full class name of the volume transfer API class (string value) -#transfer_api_class = cinder.transfer.api.API - -# The full class name of the consistencygroup API class (string value) -#consistencygroup_api_class = cinder.consistencygroup.api.API - -# The full class name of the group API class (string value) -#group_api_class = cinder.group.api.API - -# DEPRECATED: OpenStack privileged account username. Used for requests to other -# services (such as Nova) that require an account with special rights. (string -# value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: Use the [nova] section for configuring Keystone authentication for a -# privileged user. -#os_privileged_user_name = - -# DEPRECATED: Password associated with the OpenStack privileged account. -# (string value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: Use the [nova] section to configure Keystone authentication for a -# privileged user. -#os_privileged_user_password = - -# DEPRECATED: Tenant name associated with the OpenStack privileged account. -# (string value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: Use the [nova] section to configure Keystone authentication for a -# privileged user. -#os_privileged_user_tenant = - -# DEPRECATED: Auth URL associated with the OpenStack privileged account. (uri -# value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: Use the [nova] section to configure Keystone authentication for a -# privileged user. -#os_privileged_user_auth_url = - -# The full class name of the compute API class to use (string value) -#compute_api_class = cinder.compute.nova.API - -# DEPRECATED: Match this value when searching for nova in the service catalog. -# Format is: separated values of the form: -# :: (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#nova_catalog_info = compute:Compute Service:publicURL - -# DEPRECATED: Same as nova_catalog_info, but for admin endpoint. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#nova_catalog_admin_info = compute:Compute Service:publicURL - -# DEPRECATED: Override service catalog lookup with template for nova endpoint -# e.g. http://localhost:8774/v2/%(project_id)s (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#nova_endpoint_template = - -# DEPRECATED: Same as nova_endpoint_template, but for admin endpoint. (string -# value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#nova_endpoint_admin_template = - -# ID of the project which will be used as the Cinder internal tenant. (string -# value) -#cinder_internal_tenant_project_id = - -# ID of the user to be used in volume operations as the Cinder internal tenant. -# (string value) -#cinder_internal_tenant_user_id = - -# Services to be added to the available pool on create (boolean value) -#enable_new_services = true - -# Template string to be used to generate volume names (string value) -#volume_name_template = volume-%s - -# Template string to be used to generate snapshot names (string value) -#snapshot_name_template = snapshot-%s - -# Template string to be used to generate backup names (string value) -#backup_name_template = backup-%s - -# Driver to use for database access (string value) -#db_driver = cinder.db - -# Make exception message format errors fatal. (boolean value) -#fatal_exception_format_errors = false - -# A list of url schemes that can be downloaded directly via the direct_url. -# Currently supported schemes: [file, cinder]. (list value) -#allowed_direct_url_schemes = - -# Info to match when looking for glance in the service catalog. Format is: -# separated values of the form: :: - -# Only used if glance_api_servers are not provided. (string value) -#glance_catalog_info = image:glance:publicURL - -# All glance downloads in progress will call fdatasync() once this much image -# data has accumulated, in MiB. (integer value) -#glance_download_fdatasync_interval_mib = 225 - -# Default core properties of image (list value) -#glance_core_properties = checksum,container_format,disk_format,image_name,image_id,min_disk,min_ram,name,size - -# Directory used for temporary storage during image conversion (string value) -#image_conversion_dir = $state_path/conversion - -# message minimum life in seconds. (integer value) -#message_ttl = 2592000 - -# interval between periodic task runs to clean expired messages in seconds. -# (integer value) -#message_reap_interval = 86400 - -# Number of volumes allowed per project (integer value) -#quota_volumes = 10 - -# Number of volume snapshots allowed per project (integer value) -#quota_snapshots = 10 - -# Number of consistencygroups allowed per project (integer value) -#quota_consistencygroups = 10 - -# Number of groups allowed per project (integer value) -#quota_groups = 10 - -# Total amount of storage, in gigabytes, allowed for volumes and snapshots per -# project (integer value) -#quota_gigabytes = 1000 - -# Number of volume backups allowed per project (integer value) -#quota_backups = 10 - -# Total amount of storage, in gigabytes, allowed for backups per project -# (integer value) -#quota_backup_gigabytes = 1000 - -# Number of seconds until a reservation expires (integer value) -#reservation_expire = 86400 - -# Interval between periodic task runs to clean expired reservations in seconds. -# (integer value) -#reservation_clean_interval = $reservation_expire - -# Count of reservations until usage is refreshed (integer value) -#until_refresh = 0 - -# Number of seconds between subsequent usage refreshes (integer value) -#max_age = 0 - -# Default driver to use for quota checks (string value) -#quota_driver = cinder.quota.DbQuotaDriver - -# Enables or disables use of default quota class with default quota. (boolean -# value) -#use_default_quota_class = true - -# Max size allowed per volume, in gigabytes (integer value) -#per_volume_size_limit = -1 - -# The scheduler host manager class to use (string value) -#scheduler_host_manager = cinder.scheduler.host_manager.HostManager - -# Maximum number of attempts to schedule a volume (integer value) -#scheduler_max_attempts = 3 - -# Which filter class names to use for filtering hosts when not specified in the -# request. (list value) -#scheduler_default_filters = AvailabilityZoneFilter,CapacityFilter,CapabilitiesFilter - -# Which weigher class names to use for weighing hosts. (list value) -#scheduler_default_weighers = CapacityWeigher - -# Which handler to use for selecting the host/pool after weighing (string -# value) -#scheduler_weight_handler = cinder.scheduler.weights.OrderedHostWeightHandler - -# Default scheduler driver to use (string value) -#scheduler_driver = cinder.scheduler.filter_scheduler.FilterScheduler - -# Absolute path to scheduler configuration JSON file. (string value) -#scheduler_json_config_location = - -# Multiplier used for weighing free capacity. Negative numbers mean to stack vs -# spread. (floating point value) -#capacity_weight_multiplier = 1.0 - -# Multiplier used for weighing allocated capacity. Positive numbers mean to -# stack vs spread. (floating point value) -#allocated_capacity_weight_multiplier = -1.0 - -# Multiplier used for weighing volume number. Negative numbers mean to spread -# vs stack. (floating point value) -#volume_number_multiplier = -1.0 - -# Interval, in seconds, between nodes reporting state to datastore (integer -# value) -#report_interval = 10 - -# Interval, in seconds, between running periodic tasks (integer value) -#periodic_interval = 60 - -# Range, in seconds, to randomly delay when starting the periodic task -# scheduler to reduce stampeding. (Disable by setting to 0) (integer value) -#periodic_fuzzy_delay = 60 - -# IP address on which OpenStack Volume API listens (string value) -#osapi_volume_listen = 0.0.0.0 - -# Port on which OpenStack Volume API listens (port value) -# Minimum value: 0 -# Maximum value: 65535 -#osapi_volume_listen_port = 8776 - -# Number of workers for OpenStack Volume API service. The default is equal to -# the number of CPUs available. (integer value) -#osapi_volume_workers = - -# Wraps the socket in a SSL context if True is set. A certificate file and key -# file must be specified. (boolean value) -#osapi_volume_use_ssl = false - -# Option to enable strict host key checking. When set to "True" Cinder will -# only connect to systems with a host key present in the configured -# "ssh_hosts_key_file". When set to "False" the host key will be saved upon -# first connection and used for subsequent connections. Default=False (boolean -# value) -#strict_ssh_host_key_policy = false - -# File containing SSH host keys for the systems with which Cinder needs to -# communicate. OPTIONAL: Default=$state_path/ssh_known_hosts (string value) -#ssh_hosts_key_file = $state_path/ssh_known_hosts - -# The number of characters in the salt. (integer value) -#volume_transfer_salt_length = 8 - -# The number of characters in the autogenerated auth key. (integer value) -#volume_transfer_key_length = 16 - -# Enables the Force option on upload_to_image. This enables running -# upload_volume on in-use volumes for backends that support it. (boolean value) -#enable_force_upload = false - -# Create volume from snapshot at the host where snapshot resides (boolean -# value) -#snapshot_same_host = true - -# Ensure that the new volumes are the same AZ as snapshot or source volume -# (boolean value) -#cloned_volume_same_az = true - -# Cache volume availability zones in memory for the provided duration in -# seconds (integer value) -#az_cache_duration = 3600 - -# Number of times to attempt to run flakey shell commands (integer value) -#num_shell_tries = 3 - -# The percentage of backend capacity is reserved (integer value) -# Minimum value: 0 -# Maximum value: 100 -#reserved_percentage = 0 - -# Prefix for iSCSI volumes (string value) -#iscsi_target_prefix = iqn.2010-10.org.openstack: - -# The IP address that the iSCSI daemon is listening on (string value) -#iscsi_ip_address = $my_ip - -# The list of secondary IP addresses of the iSCSI daemon (list value) -#iscsi_secondary_ip_addresses = - -# The port that the iSCSI daemon is listening on (port value) -# Minimum value: 0 -# Maximum value: 65535 -#iscsi_port = 3260 - -# The maximum number of times to rescan targets to find volume (integer value) -#num_volume_device_scan_tries = 3 - -# The backend name for a given driver implementation (string value) -#volume_backend_name = - -# Do we attach/detach volumes in cinder using multipath for volume to image and -# image to volume transfers? (boolean value) -#use_multipath_for_image_xfer = false - -# If this is set to True, attachment of volumes for image transfer will be -# aborted when multipathd is not running. Otherwise, it will fallback to single -# path. (boolean value) -#enforce_multipath_for_image_xfer = false - -# Method used to wipe old volumes (string value) -# Allowed values: none, zero -#volume_clear = zero - -# Size in MiB to wipe at start of old volumes. 1024 MiBat max. 0 => all -# (integer value) -# Maximum value: 1024 -#volume_clear_size = 0 - -# The flag to pass to ionice to alter the i/o priority of the process used to -# zero a volume after deletion, for example "-c3" for idle only priority. -# (string value) -#volume_clear_ionice = - -# iSCSI target user-land tool to use. tgtadm is default, use lioadm for LIO -# iSCSI support, scstadmin for SCST target support, ietadm for iSCSI Enterprise -# Target, iscsictl for Chelsio iSCSI Target or fake for testing. (string value) -# Allowed values: tgtadm, lioadm, scstadmin, iscsictl, ietadm, fake -#iscsi_helper = tgtadm - -# Volume configuration file storage directory (string value) -#volumes_dir = $state_path/volumes - -# IET configuration file (string value) -#iet_conf = /etc/iet/ietd.conf - -# Chiscsi (CXT) global defaults configuration file (string value) -#chiscsi_conf = /etc/chelsio-iscsi/chiscsi.conf - -# Sets the behavior of the iSCSI target to either perform blockio or fileio -# optionally, auto can be set and Cinder will autodetect type of backing device -# (string value) -# Allowed values: blockio, fileio, auto -#iscsi_iotype = fileio - -# The default block size used when copying/clearing volumes (string value) -#volume_dd_blocksize = 4M - -# The blkio cgroup name to be used to limit bandwidth of volume copy (string -# value) -#volume_copy_blkio_cgroup_name = cinder-volume-copy - -# The upper limit of bandwidth of volume copy. 0 => unlimited (integer value) -#volume_copy_bps_limit = 0 - -# Sets the behavior of the iSCSI target to either perform write-back(on) or -# write-through(off). This parameter is valid if iscsi_helper is set to tgtadm. -# (string value) -# Allowed values: on, off -#iscsi_write_cache = on - -# Sets the target-specific flags for the iSCSI target. Only used for tgtadm to -# specify backing device flags using bsoflags option. The specified string is -# passed as is to the underlying tool. (string value) -#iscsi_target_flags = - -# Determines the iSCSI protocol for new iSCSI volumes, created with tgtadm or -# lioadm target helpers. In order to enable RDMA, this parameter should be set -# with the value "iser". The supported iSCSI protocol values are "iscsi" and -# "iser". (string value) -# Allowed values: iscsi, iser -#iscsi_protocol = iscsi - -# The path to the client certificate key for verification, if the driver -# supports it. (string value) -#driver_client_cert_key = - -# The path to the client certificate for verification, if the driver supports -# it. (string value) -#driver_client_cert = - -# Tell driver to use SSL for connection to backend storage if the driver -# supports it. (boolean value) -#driver_use_ssl = false - -# Float representation of the over subscription ratio when thin provisioning is -# involved. Default ratio is 20.0, meaning provisioned capacity can be 20 times -# of the total physical capacity. If the ratio is 10.5, it means provisioned -# capacity can be 10.5 times of the total physical capacity. A ratio of 1.0 -# means provisioned capacity cannot exceed the total physical capacity. The -# ratio has to be a minimum of 1.0. (floating point value) -#max_over_subscription_ratio = 20.0 - -# Certain ISCSI targets have predefined target names, SCST target driver uses -# this name. (string value) -#scst_target_iqn_name = - -# SCST target implementation can choose from multiple SCST target drivers. -# (string value) -#scst_target_driver = iscsi - -# Option to enable/disable CHAP authentication for targets. (boolean value) -#use_chap_auth = false - -# CHAP user name. (string value) -#chap_username = - -# Password for specified CHAP account name. (string value) -#chap_password = - -# Namespace for driver private data values to be saved in. (string value) -#driver_data_namespace = - -# String representation for an equation that will be used to filter hosts. Only -# used when the driver filter is set to be used by the Cinder scheduler. -# (string value) -#filter_function = - -# String representation for an equation that will be used to determine the -# goodness of a host. Only used when using the goodness weigher is set to be -# used by the Cinder scheduler. (string value) -#goodness_function = - -# If set to True the http client will validate the SSL certificate of the -# backend endpoint. (boolean value) -#driver_ssl_cert_verify = false - -# Can be used to specify a non default path to a CA_BUNDLE file or directory -# with certificates of trusted CAs, which will be used to validate the backend -# (string value) -#driver_ssl_cert_path = - -# List of options that control which trace info is written to the DEBUG log -# level to assist developers. Valid values are method and api. (list value) -#trace_flags = - -# Multi opt of dictionaries to represent a replication target device. This -# option may be specified multiple times in a single config section to specify -# multiple replication target devices. Each entry takes the standard dict -# config form: replication_device = -# target_device_id:,key1:value1,key2:value2... (dict value) -#replication_device = - -# If set to True, upload-to-image in raw format will create a cloned volume and -# register its location to the image service, instead of uploading the volume -# content. The cinder backend and locations support must be enabled in the -# image service, and glance_api_version must be set to 2. (boolean value) -#image_upload_use_cinder_backend = false - -# If set to True, the image volume created by upload-to-image will be placed in -# the internal tenant. Otherwise, the image volume is created in the current -# context's tenant. (boolean value) -#image_upload_use_internal_tenant = false - -# Enable the image volume cache for this backend. (boolean value) -#image_volume_cache_enabled = false - -# Max size of the image volume cache for this backend in GB. 0 => unlimited. -# (integer value) -#image_volume_cache_max_size_gb = 0 - -# Max number of entries allowed in the image volume cache. 0 => unlimited. -# (integer value) -#image_volume_cache_max_count = 0 - -# Report to clients of Cinder that the backend supports discard (aka. -# trim/unmap). This will not actually change the behavior of the backend or the -# client directly, it will only notify that it can be used. (boolean value) -#report_discard_supported = false - -# Protocol for transferring data between host and storage back-end. (string -# value) -# Allowed values: iscsi, fc -#storage_protocol = iscsi - -# If this is set to True, the backup_use_temp_snapshot path will be used during -# the backup. Otherwise, it will use backup_use_temp_volume path. (boolean -# value) -#backup_use_temp_snapshot = false - -# Set this to True when you want to allow an unsupported driver to start. -# Drivers that haven't maintained a working CI system and testing are marked as -# unsupported until CI is working again. This also marks a driver as -# deprecated and may be removed in the next release. (boolean value) -#enable_unsupported_driver = false - -# Availability zone for this volume backend. If not set, the -# storage_availability_zone option value is used as the default for all -# backends. (string value) -#backend_availability_zone = - -# Volume backup directory (string value) -#backup_dir = /opt/backups - -# The maximum number of times to rescan iSER targetto find volume (integer -# value) -#num_iser_scan_tries = 3 - -# Prefix for iSER volumes (string value) -#iser_target_prefix = iqn.2010-10.org.openstack: - -# The IP address that the iSER daemon is listening on (string value) -#iser_ip_address = $my_ip - -# The port that the iSER daemon is listening on (port value) -# Minimum value: 0 -# Maximum value: 65535 -#iser_port = 3260 - -# The name of the iSER target user-land tool to use (string value) -#iser_helper = tgtadm - -# Timeout for creating the volume to migrate to when performing volume -# migration (seconds) (integer value) -#migration_create_volume_timeout_secs = 300 - -# Offload pending volume delete during volume service startup (boolean value) -#volume_service_inithost_offload = false - -# File used for detecting if we are doing in-service patching (string value) -#in_service_marker = /run/patching/patch-flags/cinder.restarting - -# Sets the value of TCP_KEEPALIVE (True/False) for each server socket. (boolean -# value) -#tcp_keepalive = true - -# Sets the value of TCP_KEEPINTVL in seconds for each server socket. Not -# supported on OS X. (integer value) -#tcp_keepalive_interval = - -# Sets the value of TCP_KEEPCNT for each server socket. Not supported on OS X. -# (integer value) -#tcp_keepalive_count = - -# -# From oslo.config -# - -# Path to a config file to use. Multiple config files can be specified, with -# values in later files taking precedence. Defaults to %(default)s. (unknown -# value) -#config_file = ~/.project/project.conf,~/project.conf,/etc/project/project.conf,/etc/project.conf - -# Path to a config directory to pull `*.conf` files from. This file set is -# sorted, so as to provide a predictable parse order if individual options are -# over-ridden. The set is parsed after the file(s) specified via previous -# --config-file, arguments hence over-ridden options in the directory take -# precedence. (list value) -#config_dir = ~/.project/project.conf.d/,~/project.conf.d/,/etc/project/project.conf.d/,/etc/project.conf.d/ - -# -# From oslo.log -# - -# If set to true, the logging level will be set to DEBUG instead of the default -# INFO level. (boolean value) -# Note: This option can be changed without restarting. -#debug = false - -# The name of a logging configuration file. This file is appended to any -# existing logging configuration files. For details about logging configuration -# files, see the Python logging module documentation. Note that when logging -# configuration files are used then all logging configuration is set in the -# configuration file and other logging configuration options are ignored (for -# example, logging_context_format_string). (string value) -# Note: This option can be changed without restarting. -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# Defines the format string for %%(asctime)s in log records. Default: -# %(default)s . This option is ignored if log_config_append is set. (string -# value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to send logging output to. If no default is set, -# logging will go to stderr as defined by use_stderr. This option is ignored if -# log_config_append is set. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative log_file paths. This option -# is ignored if log_config_append is set. (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Uses logging handler designed to watch file system. When log file is moved or -# removed this handler will open a new log file with specified path -# instantaneously. It makes sense only if log_file option is specified and -# Linux platform is used. This option is ignored if log_config_append is set. -# (boolean value) -#watch_log_file = false - -# Use syslog for logging. Existing syslog format is DEPRECATED and will be -# changed later to honor RFC5424. This option is ignored if log_config_append -# is set. (boolean value) -#use_syslog = false - -# Enable journald for logging. If running in a systemd environment you may wish -# to enable journal support. Doing so will use the journal native protocol -# which includes structured metadata in addition to log messages.This option is -# ignored if log_config_append is set. (boolean value) -#use_journal = false - -# Syslog facility to receive log lines. This option is ignored if -# log_config_append is set. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. This option is ignored if log_config_append is -# set. (boolean value) -#use_stderr = false - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages when context is undefined. (string -# value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Additional data to append to log message when logging level for the message -# is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s - -# Defines the format string for %(user_identity)s that is used in -# logging_context_format_string. (string value) -#logging_user_identity_format = %(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s - -# List of package logging levels in logger=LEVEL pairs. This option is ignored -# if log_config_append is set. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,dogpile.core.dogpile=INFO - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# The format for an instance that is passed with the log message. (string -# value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. (string -# value) -#instance_uuid_format = "[instance: %(uuid)s] " - -# Interval, number of seconds, of log rate limiting. (integer value) -#rate_limit_interval = 0 - -# Maximum number of logged messages per rate_limit_interval. (integer value) -#rate_limit_burst = 0 - -# Log level name used by rate limiting: CRITICAL, ERROR, INFO, WARNING, DEBUG -# or empty string. Logs with level greater or equal to rate_limit_except_level -# are not filtered. An empty string means that all levels are filtered. (string -# value) -#rate_limit_except_level = CRITICAL - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# -# From oslo.messaging -# - -# Size of RPC connection pool. (integer value) -#rpc_conn_pool_size = 30 - -# The pool size limit for connections expiration policy (integer value) -#conn_pool_min_size = 2 - -# The time-to-live in sec of idle connections in the pool (integer value) -#conn_pool_ttl = 1200 - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -# Allowed values: redis, sentinel, dummy -#rpc_zmq_matchmaker = redis - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Number of seconds to wait before all pending messages will be sent after -# closing a socket. The default value of -1 specifies an infinite linger -# period. The value of 0 specifies no linger period. Pending messages shall be -# discarded immediately when the socket is closed. Positive values specify an -# upper bound for the linger period. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_cast_timeout -#zmq_linger = -1 - -# The default number of seconds that poll should wait. Poll raises timeout -# exception when timeout expired. (integer value) -#rpc_poll_timeout = 1 - -# Expiration timeout in seconds of a name service record about existing target -# ( < 0 means no timeout). (integer value) -#zmq_target_expire = 300 - -# Update period in seconds of a name service record about existing target. -# (integer value) -#zmq_target_update = 180 - -# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean -# value) -#use_pub_sub = false - -# Use ROUTER remote proxy. (boolean value) -#use_router_proxy = false - -# This option makes direct connections dynamic or static. It makes sense only -# with use_router_proxy=False which means to use direct connections for direct -# message types (ignored otherwise). (boolean value) -#use_dynamic_connections = false - -# How many additional connections to a host will be made for failover reasons. -# This option is actual only in dynamic connections mode. (integer value) -#zmq_failover_connections = 2 - -# Minimal port number for random ports range. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#rpc_zmq_min_port = 49153 - -# Maximal port number for random ports range. (integer value) -# Minimum value: 1 -# Maximum value: 65536 -#rpc_zmq_max_port = 65536 - -# Number of retries to find free port number before fail with ZMQBindError. -# (integer value) -#rpc_zmq_bind_port_retries = 100 - -# Default serialization mechanism for serializing/deserializing -# outgoing/incoming messages (string value) -# Allowed values: json, msgpack -#rpc_zmq_serialization = json - -# This option configures round-robin mode in zmq socket. True means not keeping -# a queue when server side disconnects. False means to keep queue and messages -# even if server is disconnected, when the server appears we send all -# accumulated messages to it. (boolean value) -#zmq_immediate = true - -# Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any -# other negative value) means to skip any overrides and leave it to OS default; -# 0 and 1 (or any other positive value) mean to disable and enable the option -# respectively. (integer value) -#zmq_tcp_keepalive = -1 - -# The duration between two keepalive transmissions in idle condition. The unit -# is platform dependent, for example, seconds in Linux, milliseconds in Windows -# etc. The default value of -1 (or any other negative value and 0) means to -# skip any overrides and leave it to OS default. (integer value) -#zmq_tcp_keepalive_idle = -1 - -# The number of retransmissions to be carried out before declaring that remote -# end is not available. The default value of -1 (or any other negative value -# and 0) means to skip any overrides and leave it to OS default. (integer -# value) -#zmq_tcp_keepalive_cnt = -1 - -# The duration between two successive keepalive retransmissions, if -# acknowledgement to the previous keepalive transmission is not received. The -# unit is platform dependent, for example, seconds in Linux, milliseconds in -# Windows etc. The default value of -1 (or any other negative value and 0) -# means to skip any overrides and leave it to OS default. (integer value) -#zmq_tcp_keepalive_intvl = -1 - -# Maximum number of (green) threads to work concurrently. (integer value) -#rpc_thread_pool_size = 100 - -# Expiration timeout in seconds of a sent/received message after which it is -# not tracked anymore by a client/server. (integer value) -#rpc_message_ttl = 300 - -# Wait for message acknowledgements from receivers. This mechanism works only -# via proxy without PUB/SUB. (boolean value) -#rpc_use_acks = false - -# Number of seconds to wait for an ack from a cast/call. After each retry -# attempt this timeout is multiplied by some specified multiplier. (integer -# value) -#rpc_ack_timeout_base = 15 - -# Number to multiply base ack timeout by after each retry attempt. (integer -# value) -#rpc_ack_timeout_multiplier = 2 - -# Default number of message sending attempts in case of any problems occurred: -# positive value N means at most N retries, 0 means no retries, None or -1 (or -# any other negative values) mean to retry forever. This option is used only if -# acknowledgments are enabled. (integer value) -#rpc_retry_attempts = 3 - -# List of publisher hosts SubConsumer can subscribe on. This option has higher -# priority then the default publishers list taken from the matchmaker. (list -# value) -#subscribe_on = - -# Size of executor thread pool when executor is threading or eventlet. (integer -# value) -# Deprecated group/name - [DEFAULT]/rpc_thread_pool_size -#executor_thread_pool_size = 64 - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full configuration. -# (string value) -#transport_url = - -# DEPRECATED: The messaging driver to use, defaults to rabbit. Other drivers -# include amqp and zmq. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be overridden by an -# exchange name specified in the transport_url option. (string value) -#control_exchange = openstack - -# -# From oslo.service.periodic_task -# - -# Some periodic tasks can be run in a separate process. Should we run them -# here? (boolean value) -#run_external_periodic_tasks = true - -# -# From oslo.service.service -# - -# Enable eventlet backdoor. Acceptable values are 0, , and -# :, where 0 results in listening on a random tcp port number; -# results in listening on the specified port number (and not enabling -# backdoor if that port is in use); and : results in listening on -# the smallest unused port number within the specified range of port numbers. -# The chosen port is displayed in the service's log file. (string value) -#backdoor_port = - -# Enable eventlet backdoor, using the provided path as a unix socket that can -# receive connections. This option is mutually exclusive with 'backdoor_port' -# in that only one should be provided. If both are provided then the existence -# of this option overrides the usage of that option. (string value) -#backdoor_socket = - -# Enables or disables logging values of all registered options when starting a -# service (at DEBUG level). (boolean value) -#log_options = true - -# Specify a timeout after which a gracefully shutdown server will exit. Zero -# value means endless wait. (integer value) -#graceful_shutdown_timeout = 60 - -# -# From oslo.service.wsgi -# - -# File name for the paste.deploy config for api service (string value) -#api_paste_config = api-paste.ini - -# A python format string that is used as the template to generate log lines. -# The following values can beformatted into it: client_ip, date_time, -# request_line, status_code, body_length, wall_seconds. (string value) -#wsgi_log_format = %(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f - -# Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not -# supported on OS X. (integer value) -#tcp_keepidle = 600 - -# Size of the pool of greenthreads used by wsgi (integer value) -#wsgi_default_pool_size = 100 - -# Maximum line size of message headers to be accepted. max_header_line may need -# to be increased when using large tokens (typically those generated when -# keystone is configured to use PKI tokens with big service catalogs). (integer -# value) -#max_header_line = 16384 - -# If False, closes the client socket connection explicitly. (boolean value) -#wsgi_keep_alive = true - -# Timeout for client connections' socket operations. If an incoming connection -# is idle for this number of seconds it will be closed. A value of '0' means -# wait forever. (integer value) -#client_socket_timeout = 900 - - -[backend] - -# -# From cinder -# - -# Backend override of host value. (string value) -#backend_host = - - -[backend_defaults] - -# -# From cinder -# - -# Number of times to attempt to run flakey shell commands (integer value) -#num_shell_tries = 3 - -# The percentage of backend capacity is reserved (integer value) -# Minimum value: 0 -# Maximum value: 100 -#reserved_percentage = 0 - -# Prefix for iSCSI volumes (string value) -#iscsi_target_prefix = iqn.2010-10.org.openstack: - -# The IP address that the iSCSI daemon is listening on (string value) -#iscsi_ip_address = $my_ip - -# The list of secondary IP addresses of the iSCSI daemon (list value) -#iscsi_secondary_ip_addresses = - -# The port that the iSCSI daemon is listening on (port value) -# Minimum value: 0 -# Maximum value: 65535 -#iscsi_port = 3260 - -# The maximum number of times to rescan targets to find volume (integer value) -#num_volume_device_scan_tries = 3 - -# The backend name for a given driver implementation (string value) -#volume_backend_name = - -# Do we attach/detach volumes in cinder using multipath for volume to image and -# image to volume transfers? (boolean value) -#use_multipath_for_image_xfer = false - -# If this is set to True, attachment of volumes for image transfer will be -# aborted when multipathd is not running. Otherwise, it will fallback to single -# path. (boolean value) -#enforce_multipath_for_image_xfer = false - -# Method used to wipe old volumes (string value) -# Allowed values: none, zero -#volume_clear = zero - -# Size in MiB to wipe at start of old volumes. 1024 MiBat max. 0 => all -# (integer value) -# Maximum value: 1024 -#volume_clear_size = 0 - -# The flag to pass to ionice to alter the i/o priority of the process used to -# zero a volume after deletion, for example "-c3" for idle only priority. -# (string value) -#volume_clear_ionice = - -# iSCSI target user-land tool to use. tgtadm is default, use lioadm for LIO -# iSCSI support, scstadmin for SCST target support, ietadm for iSCSI Enterprise -# Target, iscsictl for Chelsio iSCSI Target or fake for testing. (string value) -# Allowed values: tgtadm, lioadm, scstadmin, iscsictl, ietadm, fake -#iscsi_helper = tgtadm - -# Volume configuration file storage directory (string value) -#volumes_dir = $state_path/volumes - -# IET configuration file (string value) -#iet_conf = /etc/iet/ietd.conf - -# Chiscsi (CXT) global defaults configuration file (string value) -#chiscsi_conf = /etc/chelsio-iscsi/chiscsi.conf - -# Sets the behavior of the iSCSI target to either perform blockio or fileio -# optionally, auto can be set and Cinder will autodetect type of backing device -# (string value) -# Allowed values: blockio, fileio, auto -#iscsi_iotype = fileio - -# The default block size used when copying/clearing volumes (string value) -#volume_dd_blocksize = 4M - -# The blkio cgroup name to be used to limit bandwidth of volume copy (string -# value) -#volume_copy_blkio_cgroup_name = cinder-volume-copy - -# The upper limit of bandwidth of volume copy. 0 => unlimited (integer value) -#volume_copy_bps_limit = 0 - -# Sets the behavior of the iSCSI target to either perform write-back(on) or -# write-through(off). This parameter is valid if iscsi_helper is set to tgtadm. -# (string value) -# Allowed values: on, off -#iscsi_write_cache = on - -# Sets the target-specific flags for the iSCSI target. Only used for tgtadm to -# specify backing device flags using bsoflags option. The specified string is -# passed as is to the underlying tool. (string value) -#iscsi_target_flags = - -# Determines the iSCSI protocol for new iSCSI volumes, created with tgtadm or -# lioadm target helpers. In order to enable RDMA, this parameter should be set -# with the value "iser". The supported iSCSI protocol values are "iscsi" and -# "iser". (string value) -# Allowed values: iscsi, iser -#iscsi_protocol = iscsi - -# The path to the client certificate key for verification, if the driver -# supports it. (string value) -#driver_client_cert_key = - -# The path to the client certificate for verification, if the driver supports -# it. (string value) -#driver_client_cert = - -# Tell driver to use SSL for connection to backend storage if the driver -# supports it. (boolean value) -#driver_use_ssl = false - -# Float representation of the over subscription ratio when thin provisioning is -# involved. Default ratio is 20.0, meaning provisioned capacity can be 20 times -# of the total physical capacity. If the ratio is 10.5, it means provisioned -# capacity can be 10.5 times of the total physical capacity. A ratio of 1.0 -# means provisioned capacity cannot exceed the total physical capacity. The -# ratio has to be a minimum of 1.0. (floating point value) -#max_over_subscription_ratio = 20.0 - -# Certain ISCSI targets have predefined target names, SCST target driver uses -# this name. (string value) -#scst_target_iqn_name = - -# SCST target implementation can choose from multiple SCST target drivers. -# (string value) -#scst_target_driver = iscsi - -# Option to enable/disable CHAP authentication for targets. (boolean value) -#use_chap_auth = false - -# CHAP user name. (string value) -#chap_username = - -# Password for specified CHAP account name. (string value) -#chap_password = - -# Namespace for driver private data values to be saved in. (string value) -#driver_data_namespace = - -# String representation for an equation that will be used to filter hosts. Only -# used when the driver filter is set to be used by the Cinder scheduler. -# (string value) -#filter_function = - -# String representation for an equation that will be used to determine the -# goodness of a host. Only used when using the goodness weigher is set to be -# used by the Cinder scheduler. (string value) -#goodness_function = - -# If set to True the http client will validate the SSL certificate of the -# backend endpoint. (boolean value) -#driver_ssl_cert_verify = false - -# Can be used to specify a non default path to a CA_BUNDLE file or directory -# with certificates of trusted CAs, which will be used to validate the backend -# (string value) -#driver_ssl_cert_path = - -# List of options that control which trace info is written to the DEBUG log -# level to assist developers. Valid values are method and api. (list value) -#trace_flags = - -# Multi opt of dictionaries to represent a replication target device. This -# option may be specified multiple times in a single config section to specify -# multiple replication target devices. Each entry takes the standard dict -# config form: replication_device = -# target_device_id:,key1:value1,key2:value2... (dict value) -#replication_device = - -# If set to True, upload-to-image in raw format will create a cloned volume and -# register its location to the image service, instead of uploading the volume -# content. The cinder backend and locations support must be enabled in the -# image service, and glance_api_version must be set to 2. (boolean value) -#image_upload_use_cinder_backend = false - -# If set to True, the image volume created by upload-to-image will be placed in -# the internal tenant. Otherwise, the image volume is created in the current -# context's tenant. (boolean value) -#image_upload_use_internal_tenant = false - -# Enable the image volume cache for this backend. (boolean value) -#image_volume_cache_enabled = false - -# Max size of the image volume cache for this backend in GB. 0 => unlimited. -# (integer value) -#image_volume_cache_max_size_gb = 0 - -# Max number of entries allowed in the image volume cache. 0 => unlimited. -# (integer value) -#image_volume_cache_max_count = 0 - -# Report to clients of Cinder that the backend supports discard (aka. -# trim/unmap). This will not actually change the behavior of the backend or the -# client directly, it will only notify that it can be used. (boolean value) -#report_discard_supported = false - -# Protocol for transferring data between host and storage back-end. (string -# value) -# Allowed values: iscsi, fc -#storage_protocol = iscsi - -# If this is set to True, the backup_use_temp_snapshot path will be used during -# the backup. Otherwise, it will use backup_use_temp_volume path. (boolean -# value) -#backup_use_temp_snapshot = false - -# Set this to True when you want to allow an unsupported driver to start. -# Drivers that haven't maintained a working CI system and testing are marked as -# unsupported until CI is working again. This also marks a driver as -# deprecated and may be removed in the next release. (boolean value) -#enable_unsupported_driver = false - -# Availability zone for this volume backend. If not set, the -# storage_availability_zone option value is used as the default for all -# backends. (string value) -#backend_availability_zone = - -# Volume backup directory (string value) -#backup_dir = /opt/backups - -# The maximum number of times to rescan iSER targetto find volume (integer -# value) -#num_iser_scan_tries = 3 - -# Prefix for iSER volumes (string value) -#iser_target_prefix = iqn.2010-10.org.openstack: - -# The IP address that the iSER daemon is listening on (string value) -#iser_ip_address = $my_ip - -# The port that the iSER daemon is listening on (port value) -# Minimum value: 0 -# Maximum value: 65535 -#iser_port = 3260 - -# The name of the iSER target user-land tool to use (string value) -#iser_helper = tgtadm - -# List of all available devices (list value) -#available_devices = - -# IP address/hostname of Blockbridge API. (string value) -#blockbridge_api_host = - -# Override HTTPS port to connect to Blockbridge API server. (integer value) -#blockbridge_api_port = - -# Blockbridge API authentication scheme (token or password) (string value) -# Allowed values: token, password -#blockbridge_auth_scheme = token - -# Blockbridge API token (for auth scheme 'token') (string value) -#blockbridge_auth_token = - -# Blockbridge API user (for auth scheme 'password') (string value) -#blockbridge_auth_user = - -# Blockbridge API password (for auth scheme 'password') (string value) -#blockbridge_auth_password = - -# Defines the set of exposed pools and their associated backend query strings -# (dict value) -#blockbridge_pools = OpenStack:+openstack - -# Default pool name if unspecified. (string value) -#blockbridge_default_pool = - -# RPC port to connect to Coho Data MicroArray (integer value) -#coho_rpc_port = 2049 - -# Hostname for the CoprHD Instance (string value) -#coprhd_hostname = - -# Port for the CoprHD Instance (port value) -# Minimum value: 0 -# Maximum value: 65535 -#coprhd_port = 4443 - -# Username for accessing the CoprHD Instance (string value) -#coprhd_username = - -# Password for accessing the CoprHD Instance (string value) -#coprhd_password = - -# Tenant to utilize within the CoprHD Instance (string value) -#coprhd_tenant = - -# Project to utilize within the CoprHD Instance (string value) -#coprhd_project = - -# Virtual Array to utilize within the CoprHD Instance (string value) -#coprhd_varray = - -# True | False to indicate if the storage array in CoprHD is VMAX or VPLEX -# (boolean value) -#coprhd_emulate_snapshot = false - -# Rest Gateway IP or FQDN for Scaleio (string value) -#coprhd_scaleio_rest_gateway_host = None - -# Rest Gateway Port for Scaleio (port value) -# Minimum value: 0 -# Maximum value: 65535 -#coprhd_scaleio_rest_gateway_port = 4984 - -# Username for Rest Gateway (string value) -#coprhd_scaleio_rest_server_username = - -# Rest Gateway Password (string value) -#coprhd_scaleio_rest_server_password = - -# verify server certificate (boolean value) -#scaleio_verify_server_certificate = false - -# Server certificate path (string value) -#scaleio_server_certificate_path = - -# Datera API port. (string value) -#datera_api_port = 7717 - -# DEPRECATED: Datera API version. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#datera_api_version = 2 - -# Timeout for HTTP 503 retry messages (integer value) -#datera_503_timeout = 120 - -# Interval between 503 retries (integer value) -#datera_503_interval = 5 - -# True to set function arg and return logging (boolean value) -#datera_debug = false - -# ONLY FOR DEBUG/TESTING PURPOSES -# True to set replica_count to 1 (boolean value) -#datera_debug_replica_count_override = false - -# If set to 'Map' --> OpenStack project ID will be mapped implicitly to Datera -# tenant ID -# If set to 'None' --> Datera tenant ID will not be used during volume -# provisioning -# If set to anything else --> Datera tenant ID will be the provided value -# (string value) -#datera_tenant_id = - -# Set to True to disable profiling in the Datera driver (boolean value) -#datera_disable_profiler = false - -# Group name to use for creating volumes. Defaults to "group-0". (string value) -#eqlx_group_name = group-0 - -# Maximum retry count for reconnection. Default is 5. (integer value) -# Minimum value: 0 -#eqlx_cli_max_retries = 5 - -# Pool in which volumes will be created. Defaults to "default". (string value) -#eqlx_pool = default - -# Storage Center System Serial Number (integer value) -#dell_sc_ssn = 64702 - -# Dell API port (port value) -# Minimum value: 0 -# Maximum value: 65535 -#dell_sc_api_port = 3033 - -# Name of the server folder to use on the Storage Center (string value) -#dell_sc_server_folder = openstack - -# Name of the volume folder to use on the Storage Center (string value) -#dell_sc_volume_folder = openstack - -# Enable HTTPS SC certificate verification (boolean value) -#dell_sc_verify_cert = false - -# IP address of secondary DSM controller (string value) -#secondary_san_ip = - -# Secondary DSM user name (string value) -#secondary_san_login = Admin - -# Secondary DSM user password name (string value) -#secondary_san_password = - -# Secondary Dell API port (port value) -# Minimum value: 0 -# Maximum value: 65535 -#secondary_sc_api_port = 3033 - -# Domain IP to be excluded from iSCSI returns. (IP address value) -#excluded_domain_ip = - -# Server OS type to use when creating a new server on the Storage Center. -# (string value) -#dell_server_os = Red Hat Linux 6.x - -# REST server port. (string value) -#sio_rest_server_port = 443 - -# Verify server certificate. (boolean value) -#sio_verify_server_certificate = false - -# Server certificate path. (string value) -#sio_server_certificate_path = - -# Round up volume capacity. (boolean value) -#sio_round_volume_capacity = true - -# Unmap volume before deletion. (boolean value) -#sio_unmap_volume_before_deletion = false - -# Storage Pools. (string value) -#sio_storage_pools = - -# DEPRECATED: Protection Domain ID. (string value) -# This option is deprecated for removal since Pike. -# Its value may be silently ignored in the future. -# Reason: Replaced by sio_storage_pools option -#sio_protection_domain_id = - -# DEPRECATED: Protection Domain name. (string value) -# This option is deprecated for removal since Pike. -# Its value may be silently ignored in the future. -# Reason: Replaced by sio_storage_pools option -#sio_protection_domain_name = - -# DEPRECATED: Storage Pool name. (string value) -# This option is deprecated for removal since Pike. -# Its value may be silently ignored in the future. -# Reason: Replaced by sio_storage_pools option -#sio_storage_pool_name = - -# DEPRECATED: Storage Pool ID. (string value) -# This option is deprecated for removal since Pike. -# Its value may be silently ignored in the future. -# Reason: Replaced by sio_storage_pools option -#sio_storage_pool_id = - -# ScaleIO API version. (string value) -#sio_server_api_version = - -# max_over_subscription_ratio setting for the ScaleIO driver. This replaces the -# general max_over_subscription_ratio which has no effect in this -# driver.Maximum value allowed for ScaleIO is 10.0. (floating point value) -#sio_max_over_subscription_ratio = 10.0 - -# A comma-separated list of storage pool names to be used. (list value) -#unity_storage_pool_names = - -# A comma-separated list of iSCSI or FC ports to be used. Each port can be -# Unix-style glob expressions. (list value) -#unity_io_ports = - -# Use this file for cinder emc plugin config data. (string value) -#cinder_dell_emc_config_file = /etc/cinder/cinder_dell_emc_config.xml - -# Use this value to specify length of the interval in seconds. (string value) -#interval = 3 - -# Use this value to specify number of retries. (string value) -#retries = 200 - -# Use this value to enable the initiator_check. (boolean value) -#initiator_check = false - -# VNX authentication scope type. By default, the value is global. (string -# value) -#storage_vnx_authentication_type = global - -# Directory path that contains the VNX security file. Make sure the security -# file is generated first. (string value) -#storage_vnx_security_file_dir = - -# Naviseccli Path. (string value) -#naviseccli_path = - -# Comma-separated list of storage pool names to be used. (list value) -#storage_vnx_pool_names = - -# Default timeout for CLI operations in minutes. For example, LUN migration is -# a typical long running operation, which depends on the LUN size and the load -# of the array. An upper bound in the specific deployment can be set to avoid -# unnecessary long wait. By default, it is 365 days long. (integer value) -#default_timeout = 31536000 - -# Default max number of LUNs in a storage group. By default, the value is 255. -# (integer value) -#max_luns_per_storage_group = 255 - -# To destroy storage group when the last LUN is removed from it. By default, -# the value is False. (boolean value) -#destroy_empty_storage_group = false - -# Mapping between hostname and its iSCSI initiator IP addresses. (string value) -#iscsi_initiators = - -# Comma separated iSCSI or FC ports to be used in Nova or Cinder. (list value) -#io_port_list = - -# Automatically register initiators. By default, the value is False. (boolean -# value) -#initiator_auto_registration = false - -# Automatically deregister initiators after the related storage group is -# destroyed. By default, the value is False. (boolean value) -#initiator_auto_deregistration = false - -# Report free_capacity_gb as 0 when the limit to maximum number of pool LUNs is -# reached. By default, the value is False. (boolean value) -#check_max_pool_luns_threshold = false - -# Delete a LUN even if it is in Storage Groups. By default, the value is False. -# (boolean value) -#force_delete_lun_in_storagegroup = false - -# Force LUN creation even if the full threshold of pool is reached. By default, -# the value is False. (boolean value) -#ignore_pool_full_threshold = false - -# XMS cluster id in multi-cluster environment (string value) -#xtremio_cluster_name = - -# Number of retries in case array is busy (integer value) -#xtremio_array_busy_retry_count = 5 - -# Interval between retries in case array is busy (integer value) -#xtremio_array_busy_retry_interval = 5 - -# Number of volumes created from each cached glance image (integer value) -#xtremio_volumes_per_glance_cache = 100 - -# The IP of DMS client socket server (IP address value) -#disco_client = 127.0.0.1 - -# The port to connect DMS client socket server (port value) -# Minimum value: 0 -# Maximum value: 65535 -#disco_client_port = 9898 - -# DEPRECATED: Path to the wsdl file to communicate with DISCO request manager -# (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#disco_wsdl_path = /etc/cinder/DISCOService.wsdl - -# The IP address of the REST server (IP address value) -# Deprecated group/name - [DEFAULT]/rest_ip -#disco_rest_ip = - -# Use soap client or rest client for communicating with DISCO. Possible values -# are "soap" or "rest". (string value) -# Allowed values: soap, rest -# Deprecated group/name - [DEFAULT]/choice_client -#disco_choice_client = - -# The port of DISCO source API (port value) -# Minimum value: 0 -# Maximum value: 65535 -#disco_src_api_port = 8080 - -# Prefix before volume name to differentiate DISCO volume created through -# openstack and the other ones (string value) -# Deprecated group/name - [backend_defaults]/volume_name_prefix -#disco_volume_name_prefix = openstack- - -# How long we check whether a snapshot is finished before we give up (integer -# value) -# Deprecated group/name - [backend_defaults]/snapshot_check_timeout -#disco_snapshot_check_timeout = 3600 - -# How long we check whether a restore is finished before we give up (integer -# value) -# Deprecated group/name - [backend_defaults]/restore_check_timeout -#disco_restore_check_timeout = 3600 - -# How long we check whether a clone is finished before we give up (integer -# value) -# Deprecated group/name - [backend_defaults]/clone_check_timeout -#disco_clone_check_timeout = 3600 - -# How long we wait before retrying to get an item detail (integer value) -# Deprecated group/name - [backend_defaults]/retry_interval -#disco_retry_interval = 1 - -# Number of nodes that should replicate the data. (integer value) -#drbdmanage_redundancy = 1 - -# Resource deployment completion wait policy. (string value) -#drbdmanage_resource_policy = {"ratio": "0.51", "timeout": "60"} - -# Disk options to set on new resources. See http://www.drbd.org/en/doc/users- -# guide-90/re-drbdconf for all the details. (string value) -#drbdmanage_disk_options = {"c-min-rate": "4M"} - -# Net options to set on new resources. See http://www.drbd.org/en/doc/users- -# guide-90/re-drbdconf for all the details. (string value) -#drbdmanage_net_options = {"connect-int": "4", "allow-two-primaries": "yes", "ko-count": "30", "max-buffers": "20000", "ping-timeout": "100"} - -# Resource options to set on new resources. See http://www.drbd.org/en/doc -# /users-guide-90/re-drbdconf for all the details. (string value) -#drbdmanage_resource_options = {"auto-promote-timeout": "300"} - -# Snapshot completion wait policy. (string value) -#drbdmanage_snapshot_policy = {"count": "1", "timeout": "60"} - -# Volume resize completion wait policy. (string value) -#drbdmanage_resize_policy = {"timeout": "60"} - -# Resource deployment completion wait plugin. (string value) -#drbdmanage_resource_plugin = drbdmanage.plugins.plugins.wait_for.WaitForResource - -# Snapshot completion wait plugin. (string value) -#drbdmanage_snapshot_plugin = drbdmanage.plugins.plugins.wait_for.WaitForSnapshot - -# Volume resize completion wait plugin. (string value) -#drbdmanage_resize_plugin = drbdmanage.plugins.plugins.wait_for.WaitForVolumeSize - -# If set, the c-vol node will receive a useable -# /dev/drbdX device, even if the actual data is stored on -# other nodes only. -# This is useful for debugging, maintenance, and to be -# able to do the iSCSI export from the c-vol node. (boolean -# value) -#drbdmanage_devs_on_controller = true - -# DEPRECATED: FSS pool id in which FalconStor volumes are stored. (integer -# value) -#fss_pool = - -# FSS pool id list in which FalconStor volumes are stored. If you have only one -# pool, use A:. You can also have up to two storage pools, P for -# primary and O for all supporting devices. The usage is P:,O -# : (dict value) -# Deprecated group/name - [backend_defaults]/fss_pool -#fss_pools = - -# Specifies FSS secondary management IP to be used if san_ip is invalid or -# becomes inaccessible. (string value) -#fss_san_secondary_ip = - -# Enable HTTP debugging to FSS (boolean value) -#fss_debug = false - -# FSS additional retry list, separate by ; (string value) -#additional_retry_list = - -# config file for cinder eternus_dx volume driver (string value) -#cinder_eternus_config_file = /etc/cinder/cinder_fujitsu_eternus_dx.xml - -# The flag of thin storage allocation. (boolean value) -#dsware_isthin = false - -# Fusionstorage manager ip addr for cinder-volume. (string value) -#dsware_manager = - -# Fusionstorage agent ip addr range. (string value) -#fusionstorageagent = - -# Pool type, like sata-2copy. (string value) -#pool_type = default - -# Pool id permit to use. (list value) -#pool_id_filter = - -# Create clone volume timeout. (integer value) -#clone_volume_timeout = 680 - -# Space network name to use for data transfer (string value) -#hgst_net = Net 1 (IPv4) - -# Comma separated list of Space storage servers:devices. ex: -# os1_stor:gbd0,os2_stor:gbd0 (string value) -#hgst_storage_servers = os:gbd0 - -# Should spaces be redundantly stored (1/0) (string value) -#hgst_redundancy = 0 - -# User to own created spaces (string value) -#hgst_space_user = root - -# Group to own created spaces (string value) -#hgst_space_group = disk - -# UNIX mode for created spaces (string value) -#hgst_space_mode = 0600 - -# Serial number of storage system (string value) -#hitachi_serial_number = - -# Name of an array unit (string value) -#hitachi_unit_name = - -# Pool ID of storage system (integer value) -#hitachi_pool_id = - -# Thin pool ID of storage system (integer value) -#hitachi_thin_pool_id = - -# Range of logical device of storage system (string value) -#hitachi_ldev_range = - -# Default copy method of storage system (string value) -#hitachi_default_copy_method = FULL - -# Copy speed of storage system (integer value) -#hitachi_copy_speed = 3 - -# Interval to check copy (integer value) -#hitachi_copy_check_interval = 3 - -# Interval to check copy asynchronously (integer value) -#hitachi_async_copy_check_interval = 10 - -# Control port names for HostGroup or iSCSI Target (string value) -#hitachi_target_ports = - -# Range of group number (string value) -#hitachi_group_range = - -# Request for creating HostGroup or iSCSI Target (boolean value) -#hitachi_group_request = false - -# Request for FC Zone creating HostGroup (boolean value) -#hitachi_zoning_request = false - -# Instance numbers for HORCM (string value) -#hitachi_horcm_numbers = 200,201 - -# Username of storage system for HORCM (string value) -#hitachi_horcm_user = - -# Password of storage system for HORCM (string value) -#hitachi_horcm_password = - -# Add to HORCM configuration (boolean value) -#hitachi_horcm_add_conf = true - -# Timeout until a resource lock is released, in seconds. The value must be -# between 0 and 7200. (integer value) -#hitachi_horcm_resource_lock_timeout = 600 - -# Add CHAP user (boolean value) -#hitachi_add_chap_user = false - -# iSCSI authentication method (string value) -#hitachi_auth_method = - -# iSCSI authentication username (string value) -#hitachi_auth_user = HBSD-CHAP-user - -# iSCSI authentication password (string value) -#hitachi_auth_password = HBSD-CHAP-password - -# DEPRECATED: Legacy configuration file for HNAS NFS Cinder plugin. This is not -# needed if you fill all configuration on cinder.conf (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#hds_hnas_nfs_config_file = /opt/hds/hnas/cinder_nfs_conf.xml - -# Management IP address of HNAS. This can be any IP in the admin address on -# HNAS or the SMU IP. (IP address value) -#hnas_mgmt_ip0 = - -# Command to communicate to HNAS. (string value) -#hnas_ssc_cmd = ssc - -# HNAS username. (string value) -#hnas_username = - -# HNAS password. (string value) -#hnas_password = - -# Port to be used for SSH authentication. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#hnas_ssh_port = 22 - -# Path to the SSH private key used to authenticate in HNAS SMU. (string value) -#hnas_ssh_private_key = - -# The IP of the HNAS cluster admin. Required only for HNAS multi-cluster -# setups. (string value) -#hnas_cluster_admin_ip0 = - -# Service 0 pool name (string value) -# Deprecated group/name - [backend_defaults]/hnas_svc0_volume_type -#hnas_svc0_pool_name = - -# Service 0 HDP (string value) -#hnas_svc0_hdp = - -# Service 1 pool name (string value) -# Deprecated group/name - [backend_defaults]/hnas_svc1_volume_type -#hnas_svc1_pool_name = - -# Service 1 HDP (string value) -#hnas_svc1_hdp = - -# Service 2 pool name (string value) -# Deprecated group/name - [backend_defaults]/hnas_svc2_volume_type -#hnas_svc2_pool_name = - -# Service 2 HDP (string value) -#hnas_svc2_hdp = - -# Service 3 pool name: (string value) -# Deprecated group/name - [backend_defaults]/hnas_svc3_volume_type -#hnas_svc3_pool_name = - -# Service 3 HDP (string value) -#hnas_svc3_hdp = - -# Product number of the storage system. (string value) -#vsp_storage_id = - -# Pool number or pool name of the DP pool. (string value) -#vsp_pool = - -# Pool number or pool name of the Thin Image pool. (string value) -#vsp_thin_pool = - -# Range of the LDEV numbers in the format of 'xxxx-yyyy' that can be used by -# the driver. Values can be in decimal format (e.g. 1000) or in colon-separated -# hexadecimal format (e.g. 00:03:E8). (string value) -#vsp_ldev_range = - -# Method of volume copy. FULL indicates full data copy by Shadow Image and THIN -# indicates differential data copy by Thin Image. (string value) -# Allowed values: FULL, THIN -#vsp_default_copy_method = FULL - -# Speed at which data is copied by Shadow Image. 1 or 2 indicates low speed, 3 -# indicates middle speed, and a value between 4 and 15 indicates high speed. -# (integer value) -# Minimum value: 1 -# Maximum value: 15 -#vsp_copy_speed = 3 - -# Interval in seconds at which volume pair synchronization status is checked -# when volume pairs are created. (integer value) -# Minimum value: 1 -# Maximum value: 600 -#vsp_copy_check_interval = 3 - -# Interval in seconds at which volume pair synchronization status is checked -# when volume pairs are deleted. (integer value) -# Minimum value: 1 -# Maximum value: 600 -#vsp_async_copy_check_interval = 10 - -# IDs of the storage ports used to attach volumes to the controller node. To -# specify multiple ports, connect them by commas (e.g. CL1-A,CL2-A). (list -# value) -#vsp_target_ports = - -# IDs of the storage ports used to attach volumes to compute nodes. To specify -# multiple ports, connect them by commas (e.g. CL1-A,CL2-A). (list value) -#vsp_compute_target_ports = - -# If True, the driver will create host groups or iSCSI targets on storage ports -# as needed. (boolean value) -#vsp_group_request = false - -# If True, the driver will configure FC zoning between the server and the -# storage system provided that FC zoning manager is enabled. (boolean value) -#vsp_zoning_request = false - -# Command Control Interface instance numbers in the format of 'xxx,yyy'. The -# second one is for Shadow Image operation and the first one is for other -# purposes. (list value) -#vsp_horcm_numbers = 200,201 - -# Name of the user on the storage system. (string value) -#vsp_horcm_user = - -# Password corresponding to vsp_horcm_user. (string value) -#vsp_horcm_password = - -# If True, the driver will create or update the Command Control Interface -# configuration file as needed. (boolean value) -#vsp_horcm_add_conf = true - -# IDs of the storage ports used to copy volumes by Shadow Image or Thin Image. -# To specify multiple ports, connect them by commas (e.g. CL1-A,CL2-A). (list -# value) -#vsp_horcm_pair_target_ports = - -# If True, CHAP authentication will be applied to communication between hosts -# and any of the iSCSI targets on the storage ports. (boolean value) -#vsp_use_chap_auth = false - -# Name of the user used for CHAP authentication performed in communication -# between hosts and iSCSI targets on the storage ports. (string value) -#vsp_auth_user = - -# Password corresponding to vsp_auth_user. (string value) -#vsp_auth_password = - -# 3PAR WSAPI Server Url like https://<3par ip>:8080/api/v1 (string value) -# Deprecated group/name - [backend_defaults]/hp3par_api_url -#hpe3par_api_url = - -# 3PAR username with the 'edit' role (string value) -# Deprecated group/name - [backend_defaults]/hp3par_username -#hpe3par_username = - -# 3PAR password for the user specified in hpe3par_username (string value) -# Deprecated group/name - [backend_defaults]/hp3par_password -#hpe3par_password = - -# List of the CPG(s) to use for volume creation (list value) -# Deprecated group/name - [backend_defaults]/hp3par_cpg -#hpe3par_cpg = OpenStack - -# The CPG to use for Snapshots for volumes. If empty the userCPG will be used. -# (string value) -# Deprecated group/name - [backend_defaults]/hp3par_cpg_snap -#hpe3par_cpg_snap = - -# The time in hours to retain a snapshot. You can't delete it before this -# expires. (string value) -# Deprecated group/name - [backend_defaults]/hp3par_snapshot_retention -#hpe3par_snapshot_retention = - -# The time in hours when a snapshot expires and is deleted. This must be -# larger than expiration (string value) -# Deprecated group/name - [backend_defaults]/hp3par_snapshot_expiration -#hpe3par_snapshot_expiration = - -# Enable HTTP debugging to 3PAR (boolean value) -# Deprecated group/name - [backend_defaults]/hp3par_debug -#hpe3par_debug = false - -# List of target iSCSI addresses to use. (list value) -# Deprecated group/name - [backend_defaults]/hp3par_iscsi_ips -#hpe3par_iscsi_ips = - -# Enable CHAP authentication for iSCSI connections. (boolean value) -# Deprecated group/name - [backend_defaults]/hp3par_iscsi_chap_enabled -#hpe3par_iscsi_chap_enabled = false - -# HPE LeftHand WSAPI Server Url like https://:8081/lhos (uri -# value) -# Deprecated group/name - [backend_defaults]/hplefthand_api_url -#hpelefthand_api_url = - -# HPE LeftHand Super user username (string value) -# Deprecated group/name - [backend_defaults]/hplefthand_username -#hpelefthand_username = - -# HPE LeftHand Super user password (string value) -# Deprecated group/name - [backend_defaults]/hplefthand_password -#hpelefthand_password = - -# HPE LeftHand cluster name (string value) -# Deprecated group/name - [backend_defaults]/hplefthand_clustername -#hpelefthand_clustername = - -# Configure CHAP authentication for iSCSI connections (Default: Disabled) -# (boolean value) -# Deprecated group/name - [backend_defaults]/hplefthand_iscsi_chap_enabled -#hpelefthand_iscsi_chap_enabled = false - -# Enable HTTP debugging to LeftHand (boolean value) -# Deprecated group/name - [backend_defaults]/hplefthand_debug -#hpelefthand_debug = false - -# Port number of SSH service. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#hpelefthand_ssh_port = 16022 - -# The configuration file for the Cinder Huawei driver. (string value) -#cinder_huawei_conf_file = /etc/cinder/cinder_huawei_conf.xml - -# The remote device hypermetro will use. (string value) -#hypermetro_devices = - -# The remote metro device san user. (string value) -#metro_san_user = - -# The remote metro device san password. (string value) -#metro_san_password = - -# The remote metro device domain name. (string value) -#metro_domain_name = - -# The remote metro device request url. (string value) -#metro_san_address = - -# The remote metro device pool names. (string value) -#metro_storage_pools = - -# Connection protocol should be FC. (Default is FC.) (string value) -#flashsystem_connection_protocol = FC - -# Allows vdisk to multi host mapping. (Default is True) (boolean value) -#flashsystem_multihostmap_enabled = true - -# DEPRECATED: This option no longer has any affect. It is deprecated and will -# be removed in the next release. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#flashsystem_multipath_enabled = false - -# Default iSCSI Port ID of FlashSystem. (Default port is 0.) (integer value) -#flashsystem_iscsi_portid = 0 - -# Specifies the path of the GPFS directory where Block Storage volume and -# snapshot files are stored. (string value) -#gpfs_mount_point_base = - -# Specifies the path of the Image service repository in GPFS. Leave undefined -# if not storing images in GPFS. (string value) -#gpfs_images_dir = - -# Specifies the type of image copy to be used. Set this when the Image service -# repository also uses GPFS so that image files can be transferred efficiently -# from the Image service to the Block Storage service. There are two valid -# values: "copy" specifies that a full copy of the image is made; -# "copy_on_write" specifies that copy-on-write optimization strategy is used -# and unmodified blocks of the image file are shared efficiently. (string -# value) -# Allowed values: copy, copy_on_write, -#gpfs_images_share_mode = - -# Specifies an upper limit on the number of indirections required to reach a -# specific block due to snapshots or clones. A lengthy chain of copy-on-write -# snapshots or clones can have a negative impact on performance, but improves -# space utilization. 0 indicates unlimited clone depth. (integer value) -#gpfs_max_clone_depth = 0 - -# Specifies that volumes are created as sparse files which initially consume no -# space. If set to False, the volume is created as a fully allocated file, in -# which case, creation may take a significantly longer time. (boolean value) -#gpfs_sparse_volumes = true - -# Specifies the storage pool that volumes are assigned to. By default, the -# system storage pool is used. (string value) -#gpfs_storage_pool = system - -# Comma-separated list of IP address or hostnames of GPFS nodes. (list value) -#gpfs_hosts = - -# Username for GPFS nodes. (string value) -#gpfs_user_login = root - -# Password for GPFS node user. (string value) -#gpfs_user_password = - -# Filename of private key to use for SSH authentication. (string value) -#gpfs_private_key = - -# SSH port to use. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#gpfs_ssh_port = 22 - -# File containing SSH host keys for the gpfs nodes with which driver needs to -# communicate. Default=$state_path/ssh_known_hosts (string value) -#gpfs_hosts_key_file = $state_path/ssh_known_hosts - -# Option to enable strict gpfs host key checking while connecting to gpfs -# nodes. Default=False (boolean value) -#gpfs_strict_host_key_policy = false - -# Mapping between IODevice address and unit address. (string value) -#ds8k_devadd_unitadd_mapping = - -# Set the first two digits of SSID. (string value) -#ds8k_ssid_prefix = FF - -# Reserve LSSs for consistency group. (string value) -#lss_range_for_cg = - -# Set to zLinux if your OpenStack version is prior to Liberty and you're -# connecting to zLinux systems. Otherwise set to auto. Valid values for this -# parameter are: 'auto', 'AMDLinuxRHEL', 'AMDLinuxSuse', 'AppleOSX', 'Fujitsu', -# 'Hp', 'HpTru64', 'HpVms', 'LinuxDT', 'LinuxRF', 'LinuxRHEL', 'LinuxSuse', -# 'Novell', 'SGI', 'SVC', 'SanFsAIX', 'SanFsLinux', 'Sun', 'VMWare', 'Win2000', -# 'Win2003', 'Win2008', 'Win2012', 'iLinux', 'nSeries', 'pLinux', 'pSeries', -# 'pSeriesPowerswap', 'zLinux', 'iSeries'. (string value) -#ds8k_host_type = auto - -# Proxy driver that connects to the IBM Storage Array (string value) -#proxy = cinder.volume.drivers.ibm.ibm_storage.proxy.IBMStorageProxy - -# Connection type to the IBM Storage Array (string value) -# Allowed values: fibre_channel, iscsi -#connection_type = iscsi - -# CHAP authentication mode, effective only for iscsi (disabled|enabled) (string -# value) -# Allowed values: disabled, enabled -#chap = disabled - -# List of Management IP addresses (separated by commas) (string value) -#management_ips = - -# Comma separated list of storage system storage pools for volumes. (list -# value) -#storwize_svc_volpool_name = volpool - -# Storage system space-efficiency parameter for volumes (percentage) (integer -# value) -# Minimum value: -1 -# Maximum value: 100 -#storwize_svc_vol_rsize = 2 - -# Storage system threshold for volume capacity warnings (percentage) (integer -# value) -# Minimum value: -1 -# Maximum value: 100 -#storwize_svc_vol_warning = 0 - -# Storage system autoexpand parameter for volumes (True/False) (boolean value) -#storwize_svc_vol_autoexpand = true - -# Storage system grain size parameter for volumes (32/64/128/256) (integer -# value) -#storwize_svc_vol_grainsize = 256 - -# Storage system compression option for volumes (boolean value) -#storwize_svc_vol_compression = false - -# Enable Easy Tier for volumes (boolean value) -#storwize_svc_vol_easytier = true - -# The I/O group in which to allocate volumes. It can be a comma-separated list -# in which case the driver will select an io_group based on least number of -# volumes associated with the io_group. (string value) -#storwize_svc_vol_iogrp = 0 - -# Maximum number of seconds to wait for FlashCopy to be prepared. (integer -# value) -# Minimum value: 1 -# Maximum value: 600 -#storwize_svc_flashcopy_timeout = 120 - -# DEPRECATED: This option no longer has any affect. It is deprecated and will -# be removed in the next release. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#storwize_svc_multihostmap_enabled = true - -# Allow tenants to specify QOS on create (boolean value) -#storwize_svc_allow_tenant_qos = false - -# If operating in stretched cluster mode, specify the name of the pool in which -# mirrored copies are stored.Example: "pool2" (string value) -#storwize_svc_stretched_cluster_partner = - -# Specifies secondary management IP or hostname to be used if san_ip is invalid -# or becomes inaccessible. (string value) -#storwize_san_secondary_ip = - -# Specifies that the volume not be formatted during creation. (boolean value) -#storwize_svc_vol_nofmtdisk = false - -# Specifies the Storwize FlashCopy copy rate to be used when creating a full -# volume copy. The default is rate is 50, and the valid rates are 1-100. -# (integer value) -# Minimum value: 1 -# Maximum value: 100 -#storwize_svc_flashcopy_rate = 50 - -# Specifies the name of the pool in which mirrored copy is stored. Example: -# "pool2" (string value) -#storwize_svc_mirror_pool = - -# This defines an optional cycle period that applies to Global Mirror -# relationships with a cycling mode of multi. A Global Mirror relationship -# using the multi cycling_mode performs a complete cycle at most once each -# period. The default is 300 seconds, and the valid seconds are 60-86400. -# (integer value) -# Minimum value: 60 -# Maximum value: 86400 -#cycle_period_seconds = 300 - -# Connect with multipath (FC only; iSCSI multipath is controlled by Nova) -# (boolean value) -#storwize_svc_multipath_enabled = false - -# Configure CHAP authentication for iSCSI connections (Default: Enabled) -# (boolean value) -#storwize_svc_iscsi_chap_enabled = true - -# Name of the pool from which volumes are allocated (string value) -#infinidat_pool_name = - -# Protocol for transferring data between host and storage back-end. (string -# value) -# Allowed values: iscsi, fc -#infinidat_storage_protocol = fc - -# List of names of network spaces to use for iSCSI connectivity (list value) -#infinidat_iscsi_netspaces = - -# Specifies whether to turn on compression for newly created volumes. (boolean -# value) -#infinidat_use_compression = false - -# Infortrend raid pool name list. It is separated with comma. (string value) -#infortrend_pools_name = - -# The Infortrend CLI absolute path. By default, it is at -# /opt/bin/Infortrend/raidcmd_ESDS10.jar (string value) -#infortrend_cli_path = /opt/bin/Infortrend/raidcmd_ESDS10.jar - -# Maximum retry time for cli. Default is 5. (integer value) -#infortrend_cli_max_retries = 5 - -# Default timeout for CLI copy operations in minutes. Support: migrate volume, -# create cloned volume and create volume from snapshot. By Default, it is 30 -# minutes. (integer value) -#infortrend_cli_timeout = 30 - -# Infortrend raid channel ID list on Slot A for OpenStack usage. It is -# separated with comma. By default, it is the channel 0~7. (string value) -#infortrend_slots_a_channels_id = 0,1,2,3,4,5,6,7 - -# Infortrend raid channel ID list on Slot B for OpenStack usage. It is -# separated with comma. By default, it is the channel 0~7. (string value) -#infortrend_slots_b_channels_id = 0,1,2,3,4,5,6,7 - -# Let the volume use specific provisioning. By default, it is the full -# provisioning. The supported options are full or thin. (string value) -#infortrend_provisioning = full - -# Let the volume use specific tiering level. By default, it is the level 0. The -# supported levels are 0,2,3,4. (string value) -#infortrend_tiering = 0 - -# K2 driver will calculate max_oversubscription_ratio on setting this option as -# True. (boolean value) -#auto_calc_max_oversubscription_ratio = false - -# Pool or Vdisk name to use for volume creation. (string value) -#lenovo_backend_name = A - -# linear (for VDisk) or virtual (for Pool). (string value) -# Allowed values: linear, virtual -#lenovo_backend_type = virtual - -# Lenovo api interface protocol. (string value) -# Allowed values: http, https -#lenovo_api_protocol = https - -# Whether to verify Lenovo array SSL certificate. (boolean value) -#lenovo_verify_certificate = false - -# Lenovo array SSL certificate path. (string value) -#lenovo_verify_certificate_path = - -# List of comma-separated target iSCSI IP addresses. (list value) -#lenovo_iscsi_ips = - -# Name for the VG that will contain exported volumes (string value) -#volume_group = cinder-volumes - -# If >0, create LVs with multiple mirrors. Note that this requires lvm_mirrors -# + 2 PVs with available space (integer value) -#lvm_mirrors = 0 - -# Type of LVM volumes to deploy; (default, thin, or auto). Auto defaults to -# thin if thin is supported. (string value) -# Allowed values: default, thin, auto -#lvm_type = auto - -# LVM conf file to use for the LVM driver in Cinder; this setting is ignored if -# the specified file does not exist (You can also specify 'None' to not use a -# conf file even if one exists). (string value) -#lvm_conf_file = /etc/cinder/lvm.conf - -# max_over_subscription_ratio setting for the LVM driver. This takes precedence -# over the general max_over_subscription_ratio by default. If set to None, the -# general max_over_subscription_ratio is used. (floating point value) -#lvm_max_over_subscription_ratio = 1.0 - -# Suppress leaked file descriptor warnings in LVM commands. (boolean value) -#lvm_suppress_fd_warnings = false - -# The storage family type used on the storage system; valid values are -# ontap_7mode for using Data ONTAP operating in 7-Mode, ontap_cluster for using -# clustered Data ONTAP, or eseries for using E-Series. (string value) -# Allowed values: ontap_7mode, ontap_cluster, eseries -#netapp_storage_family = ontap_cluster - -# The storage protocol to be used on the data path with the storage system. -# (string value) -# Allowed values: iscsi, fc, nfs -#netapp_storage_protocol = - -# The hostname (or IP address) for the storage system or proxy server. (string -# value) -#netapp_server_hostname = - -# The TCP port to use for communication with the storage system or proxy -# server. If not specified, Data ONTAP drivers will use 80 for HTTP and 443 for -# HTTPS; E-Series will use 8080 for HTTP and 8443 for HTTPS. (integer value) -#netapp_server_port = - -# The transport protocol used when communicating with the storage system or -# proxy server. (string value) -# Allowed values: http, https -#netapp_transport_type = http - -# Administrative user account name used to access the storage system or proxy -# server. (string value) -#netapp_login = - -# Password for the administrative user account specified in the netapp_login -# option. (string value) -#netapp_password = - -# This option specifies the virtual storage server (Vserver) name on the -# storage cluster on which provisioning of block storage volumes should occur. -# (string value) -#netapp_vserver = - -# The vFiler unit on which provisioning of block storage volumes will be done. -# This option is only used by the driver when connecting to an instance with a -# storage family of Data ONTAP operating in 7-Mode. Only use this option when -# utilizing the MultiStore feature on the NetApp storage system. (string value) -#netapp_vfiler = - -# The name of the config.conf stanza for a Data ONTAP (7-mode) HA partner. -# This option is only used by the driver when connecting to an instance with a -# storage family of Data ONTAP operating in 7-Mode, and it is required if the -# storage protocol selected is FC. (string value) -#netapp_partner_backend_name = - -# The quantity to be multiplied by the requested volume size to ensure enough -# space is available on the virtual storage server (Vserver) to fulfill the -# volume creation request. Note: this option is deprecated and will be removed -# in favor of "reserved_percentage" in the Mitaka release. (floating point -# value) -#netapp_size_multiplier = 1.2 - -# This option determines if storage space is reserved for LUN allocation. If -# enabled, LUNs are thick provisioned. If space reservation is disabled, -# storage space is allocated on demand. (string value) -# Allowed values: enabled, disabled -#netapp_lun_space_reservation = enabled - -# If the percentage of available space for an NFS share has dropped below the -# value specified by this option, the NFS image cache will be cleaned. (integer -# value) -#thres_avl_size_perc_start = 20 - -# When the percentage of available space on an NFS share has reached the -# percentage specified by this option, the driver will stop clearing files from -# the NFS image cache that have not been accessed in the last M minutes, where -# M is the value of the expiry_thres_minutes configuration option. (integer -# value) -#thres_avl_size_perc_stop = 60 - -# This option specifies the threshold for last access time for images in the -# NFS image cache. When a cache cleaning cycle begins, images in the cache that -# have not been accessed in the last M minutes, where M is the value of this -# parameter, will be deleted from the cache to create free space on the NFS -# share. (integer value) -#expiry_thres_minutes = 720 - -# This option is used to specify the path to the E-Series proxy application on -# a proxy server. The value is combined with the value of the -# netapp_transport_type, netapp_server_hostname, and netapp_server_port options -# to create the URL used by the driver to connect to the proxy application. -# (string value) -#netapp_webservice_path = /devmgr/v2 - -# This option is only utilized when the storage family is configured to -# eseries. This option is used to restrict provisioning to the specified -# controllers. Specify the value of this option to be a comma separated list of -# controller hostnames or IP addresses to be used for provisioning. (string -# value) -#netapp_controller_ips = - -# Password for the NetApp E-Series storage array. (string value) -#netapp_sa_password = - -# This option specifies whether the driver should allow operations that require -# multiple attachments to a volume. An example would be live migration of -# servers that have volumes attached. When enabled, this backend is limited to -# 256 total volumes in order to guarantee volumes can be accessed by more than -# one host. (boolean value) -#netapp_enable_multiattach = false - -# This option specifies the path of the NetApp copy offload tool binary. Ensure -# that the binary has execute permissions set which allow the effective user of -# the cinder-volume process to execute the file. (string value) -#netapp_copyoffload_tool_path = - -# This option defines the type of operating system that will access a LUN -# exported from Data ONTAP; it is assigned to the LUN at the time it is -# created. (string value) -#netapp_lun_ostype = - -# This option defines the type of operating system for all initiators that can -# access a LUN. This information is used when mapping LUNs to individual hosts -# or groups of hosts. (string value) -# Deprecated group/name - [backend_defaults]/netapp_eseries_host_type -#netapp_host_type = - -# This option is used to restrict provisioning to the specified pools. Specify -# the value of this option to be a regular expression which will be applied to -# the names of objects from the storage backend which represent pools in -# Cinder. This option is only utilized when the storage protocol is configured -# to use iSCSI or FC. (string value) -# Deprecated group/name - [backend_defaults]/netapp_volume_list -# Deprecated group/name - [backend_defaults]/netapp_storage_pools -#netapp_pool_name_search_pattern = (.+) - -# Multi opt of dictionaries to represent the aggregate mapping between source -# and destination back ends when using whole back end replication. For every -# source aggregate associated with a cinder pool (NetApp FlexVol), you would -# need to specify the destination aggregate on the replication target device. A -# replication target device is configured with the configuration option -# replication_device. Specify this option as many times as you have replication -# devices. Each entry takes the standard dict config form: -# netapp_replication_aggregate_map = -# backend_id:,src_aggr_name1:dest_aggr_name1,src_aggr_name2:dest_aggr_name2,... -# (dict value) -#netapp_replication_aggregate_map = - -# The maximum time in seconds to wait for existing SnapMirror transfers to -# complete before aborting during a failover. (integer value) -# Minimum value: 0 -#netapp_snapmirror_quiesce_timeout = 3600 - -# IP address of Nexenta SA (string value) -#nexenta_host = - -# HTTP(S) port to connect to Nexenta REST API server. If it is equal zero, 8443 -# for HTTPS and 8080 for HTTP is used (integer value) -#nexenta_rest_port = 0 - -# Use http or https for REST connection (default auto) (string value) -# Allowed values: http, https, auto -#nexenta_rest_protocol = auto - -# Use secure HTTP for REST connection (default True) (boolean value) -#nexenta_use_https = true - -# User name to connect to Nexenta SA (string value) -#nexenta_user = admin - -# Password to connect to Nexenta SA (string value) -#nexenta_password = nexenta - -# Nexenta target portal port (integer value) -#nexenta_iscsi_target_portal_port = 3260 - -# SA Pool that holds all volumes (string value) -#nexenta_volume = cinder - -# IQN prefix for iSCSI targets (string value) -#nexenta_target_prefix = iqn.1986-03.com.sun:02:cinder- - -# Prefix for iSCSI target groups on SA (string value) -#nexenta_target_group_prefix = cinder/ - -# Volume group for ns5 (string value) -#nexenta_volume_group = iscsi - -# Compression value for new ZFS folders. (string value) -# Allowed values: on, off, gzip, gzip-1, gzip-2, gzip-3, gzip-4, gzip-5, gzip-6, gzip-7, gzip-8, gzip-9, lzjb, zle, lz4 -#nexenta_dataset_compression = on - -# Deduplication value for new ZFS folders. (string value) -# Allowed values: on, off, sha256, verify, sha256, verify -#nexenta_dataset_dedup = off - -# Human-readable description for the folder. (string value) -#nexenta_dataset_description = - -# Block size for datasets (integer value) -#nexenta_blocksize = 4096 - -# Block size for datasets (integer value) -#nexenta_ns5_blocksize = 32 - -# Enables or disables the creation of sparse datasets (boolean value) -#nexenta_sparse = false - -# File with the list of available nfs shares (string value) -#nexenta_shares_config = /etc/cinder/nfs_shares - -# Base directory that contains NFS share mount points (string value) -#nexenta_mount_point_base = $state_path/mnt - -# Enables or disables the creation of volumes as sparsed files that take no -# space. If disabled (False), volume is created as a regular file, which takes -# a long time. (boolean value) -#nexenta_sparsed_volumes = true - -# If set True cache NexentaStor appliance volroot option value. (boolean value) -#nexenta_nms_cache_volroot = true - -# Enable stream compression, level 1..9. 1 - gives best speed; 9 - gives best -# compression. (integer value) -#nexenta_rrmgr_compression = 0 - -# TCP Buffer size in KiloBytes. (integer value) -#nexenta_rrmgr_tcp_buf_size = 4096 - -# Number of TCP connections. (integer value) -#nexenta_rrmgr_connections = 2 - -# NexentaEdge logical path of directory to store symbolic links to NBDs (string -# value) -#nexenta_nbd_symlinks_dir = /dev/disk/by-path - -# IP address of NexentaEdge management REST API endpoint (string value) -#nexenta_rest_address = - -# User name to connect to NexentaEdge (string value) -#nexenta_rest_user = admin - -# Password to connect to NexentaEdge (string value) -#nexenta_rest_password = nexenta - -# NexentaEdge logical path of bucket for LUNs (string value) -#nexenta_lun_container = - -# NexentaEdge iSCSI service name (string value) -#nexenta_iscsi_service = - -# NexentaEdge iSCSI Gateway client address for non-VIP service (string value) -#nexenta_client_address = - -# NexentaEdge iSCSI LUN object chunk size (integer value) -#nexenta_chunksize = 32768 - -# File with the list of available NFS shares. (string value) -#nfs_shares_config = /etc/cinder/nfs_shares - -# Create volumes as sparsed files which take no space. If set to False volume -# is created as regular file. In such case volume creation takes a lot of time. -# (boolean value) -#nfs_sparsed_volumes = true - -# Create volumes as QCOW2 files rather than raw files. (boolean value) -#nfs_qcow2_volumes = false - -# Base dir containing mount points for NFS shares. (string value) -#nfs_mount_point_base = $state_path/mnt - -# Mount options passed to the NFS client. See section of the NFS man page for -# details. (string value) -#nfs_mount_options = - -# The number of attempts to mount NFS shares before raising an error. At least -# one attempt will be made to mount an NFS share, regardless of the value -# specified. (integer value) -#nfs_mount_attempts = 3 - -# Enable support for snapshots on the NFS driver. Platforms using libvirt -# <1.2.7 will encounter issues with this feature. (boolean value) -#nfs_snapshot_support = false - -# Nimble Controller pool name (string value) -#nimble_pool_name = default - -# Nimble Subnet Label (string value) -#nimble_subnet_label = * - -# Whether to verify Nimble SSL Certificate (boolean value) -#nimble_verify_certificate = false - -# Path to Nimble Array SSL certificate (string value) -#nimble_verify_cert_path = - -# DPL pool uuid in which DPL volumes are stored. (string value) -#dpl_pool = - -# DPL port number. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#dpl_port = 8357 - -# REST API authorization token. (string value) -#pure_api_token = - -# Automatically determine an oversubscription ratio based on the current total -# data reduction values. If used this calculated value will override the -# max_over_subscription_ratio config option. (boolean value) -#pure_automatic_max_oversubscription_ratio = true - -# Snapshot replication interval in seconds. (integer value) -#pure_replica_interval_default = 3600 - -# Retain all snapshots on target for this time (in seconds.) (integer value) -#pure_replica_retention_short_term_default = 14400 - -# Retain how many snapshots for each day. (integer value) -#pure_replica_retention_long_term_per_day_default = 3 - -# Retain snapshots per day on target for this time (in days.) (integer value) -#pure_replica_retention_long_term_default = 7 - -# When enabled, all Pure volumes, snapshots, and protection groups will be -# eradicated at the time of deletion in Cinder. Data will NOT be recoverable -# after a delete with this set to True! When disabled, volumes and snapshots -# will go into pending eradication state and can be recovered. (boolean value) -#pure_eradicate_on_delete = false - -# The URL to management QNAP Storage (uri value) -#qnap_management_url = - -# The pool name in the QNAP Storage (string value) -#qnap_poolname = - -# Communication protocol to access QNAP storage (string value) -#qnap_storage_protocol = iscsi - -# Quobyte URL to the Quobyte volume e.g., quobyte://, / (string value) -#quobyte_volume_url = - -# Path to a Quobyte Client configuration file. (string value) -#quobyte_client_cfg = - -# Create volumes as sparse files which take no space. If set to False, volume -# is created as regular file.In such case volume creation takes a lot of time. -# (boolean value) -#quobyte_sparsed_volumes = true - -# Create volumes as QCOW2 files rather than raw files. (boolean value) -#quobyte_qcow2_volumes = true - -# Base dir containing the mount point for the Quobyte volume. (string value) -#quobyte_mount_point_base = $state_path/mnt - -# The name of ceph cluster (string value) -#rbd_cluster_name = ceph - -# The RADOS pool where rbd volumes are stored (string value) -#rbd_pool = rbd - -# The RADOS client name for accessing rbd volumes - only set when using cephx -# authentication (string value) -#rbd_user = - -# Path to the ceph configuration file (string value) -#rbd_ceph_conf = - -# Path to the ceph keyring file (string value) -#rbd_keyring_conf = - -# Flatten volumes created from snapshots to remove dependency from volume to -# snapshot (boolean value) -#rbd_flatten_volume_from_snapshot = false - -# The libvirt uuid of the secret for the rbd_user volumes (string value) -#rbd_secret_uuid = - -# Maximum number of nested volume clones that are taken before a flatten -# occurs. Set to 0 to disable cloning. (integer value) -#rbd_max_clone_depth = 5 - -# Volumes will be chunked into objects of this size (in megabytes). (integer -# value) -#rbd_store_chunk_size = 4 - -# Timeout value (in seconds) used when connecting to ceph cluster. If value < -# 0, no timeout is set and default librados value is used. (integer value) -#rados_connect_timeout = -1 - -# Number of retries if connection to ceph cluster failed. (integer value) -#rados_connection_retries = 3 - -# Interval value (in seconds) between connection retries to ceph cluster. -# (integer value) -#rados_connection_interval = 5 - -# Timeout value (in seconds) used when connecting to ceph cluster to do a -# demotion/promotion of volumes. If value < 0, no timeout is set and default -# librados value is used. (integer value) -#replication_connect_timeout = 5 - -# Set to True for driver to report total capacity as a dynamic value -used + -# current free- and to False to report a static value -quota max bytes if -# defined and global size of cluster if not-. (boolean value) -#report_dynamic_total_capacity = true - -# IP address or Hostname of NAS system. (string value) -# Deprecated group/name - [backend_defaults]/nas_ip -#nas_host = - -# User name to connect to NAS system. (string value) -#nas_login = admin - -# Password to connect to NAS system. (string value) -#nas_password = - -# SSH port to use to connect to NAS system. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#nas_ssh_port = 22 - -# Filename of private key to use for SSH authentication. (string value) -#nas_private_key = - -# Allow network-attached storage systems to operate in a secure environment -# where root level access is not permitted. If set to False, access is as the -# root user and insecure. If set to True, access is not as root. If set to -# auto, a check is done to determine if this is a new installation: True is -# used if so, otherwise False. Default is auto. (string value) -#nas_secure_file_operations = auto - -# Set more secure file permissions on network-attached storage volume files to -# restrict broad other/world access. If set to False, volumes are created with -# open permissions. If set to True, volumes are created with permissions for -# the cinder user and group (660). If set to auto, a check is done to determine -# if this is a new installation: True is used if so, otherwise False. Default -# is auto. (string value) -#nas_secure_file_permissions = auto - -# Path to the share to use for storing Cinder volumes. For example: -# "/srv/export1" for an NFS server export available at 10.0.5.10:/srv/export1 . -# (string value) -#nas_share_path = - -# Options used to mount the storage backend file system where Cinder volumes -# are stored. (string value) -#nas_mount_options = - -# Provisioning type that will be used when creating volumes. (string value) -# Allowed values: thin, thick -#nas_volume_prov_type = thin - -# Pool or Vdisk name to use for volume creation. (string value) -#hpmsa_backend_name = A - -# linear (for Vdisk) or virtual (for Pool). (string value) -# Allowed values: linear, virtual -#hpmsa_backend_type = virtual - -# HPMSA API interface protocol. (string value) -# Allowed values: http, https -#hpmsa_api_protocol = https - -# Whether to verify HPMSA array SSL certificate. (boolean value) -#hpmsa_verify_certificate = false - -# HPMSA array SSL certificate path. (string value) -#hpmsa_verify_certificate_path = - -# List of comma-separated target iSCSI IP addresses. (list value) -#hpmsa_iscsi_ips = - -# Use thin provisioning for SAN volumes? (boolean value) -#san_thin_provision = true - -# IP address of SAN controller (string value) -#san_ip = - -# Username for SAN controller (string value) -#san_login = admin - -# Password for SAN controller (string value) -#san_password = - -# Filename of private key to use for SSH authentication (string value) -#san_private_key = - -# Cluster name to use for creating volumes (string value) -#san_clustername = - -# SSH port to use with SAN (port value) -# Minimum value: 0 -# Maximum value: 65535 -#san_ssh_port = 22 - -# Execute commands locally instead of over SSH; use if the volume service is -# running on the SAN device (boolean value) -#san_is_local = false - -# SSH connection timeout in seconds (integer value) -#ssh_conn_timeout = 30 - -# Minimum ssh connections in the pool (integer value) -#ssh_min_pool_conn = 1 - -# Maximum ssh connections in the pool (integer value) -#ssh_max_pool_conn = 5 - -# IP address of sheep daemon. (string value) -#sheepdog_store_address = 127.0.0.1 - -# Port of sheep daemon. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#sheepdog_store_port = 7000 - -# Set 512 byte emulation on volume creation; (boolean value) -#sf_emulate_512 = true - -# Allow tenants to specify QOS on create (boolean value) -#sf_allow_tenant_qos = false - -# Create SolidFire accounts with this prefix. Any string can be used here, but -# the string "hostname" is special and will create a prefix using the cinder -# node hostname (previous default behavior). The default is NO prefix. (string -# value) -#sf_account_prefix = - -# Create SolidFire volumes with this prefix. Volume names are of the form -# . The default is to use a prefix of -# 'UUID-'. (string value) -#sf_volume_prefix = UUID- - -# Account name on the SolidFire Cluster to use as owner of template/cache -# volumes (created if does not exist). (string value) -#sf_template_account_name = openstack-vtemplate - -# Create an internal cache of copy of images when a bootable volume is created -# to eliminate fetch from glance and qemu-conversion on subsequent calls. -# (boolean value) -#sf_allow_template_caching = true - -# Overrides default cluster SVIP with the one specified. This is required or -# deployments that have implemented the use of VLANs for iSCSI networks in -# their cloud. (string value) -#sf_svip = - -# Create an internal mapping of volume IDs and account. Optimizes lookups and -# performance at the expense of memory, very large deployments may want to -# consider setting to False. (boolean value) -#sf_enable_volume_mapping = true - -# SolidFire API port. Useful if the device api is behind a proxy on a different -# port. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#sf_api_port = 443 - -# Utilize volume access groups on a per-tenant basis. (boolean value) -#sf_enable_vag = false - -# Volume on Synology storage to be used for creating lun. (string value) -#synology_pool_name = - -# Management port for Synology storage. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#synology_admin_port = 5000 - -# Administrator of Synology storage. (string value) -#synology_username = admin - -# Password of administrator for logging in Synology storage. (string value) -#synology_password = - -# Do certificate validation or not if $driver_use_ssl is True (boolean value) -#synology_ssl_verify = true - -# One time password of administrator for logging in Synology storage if OTP is -# enabled. (string value) -#synology_one_time_pass = - -# Device id for skip one time password check for logging in Synology storage if -# OTP is enabled. (string value) -#synology_device_id = - -# Create volumes in this pool (string value) -#tegile_default_pool = - -# Create volumes in this project (string value) -#tegile_default_project = - -# The hostname (or IP address) for the storage system (string value) -#tintri_server_hostname = - -# User name for the storage system (string value) -#tintri_server_username = - -# Password for the storage system (string value) -#tintri_server_password = - -# API version for the storage system (string value) -#tintri_api_version = v310 - -# Delete unused image snapshots older than mentioned days (integer value) -#tintri_image_cache_expiry_days = 30 - -# Path to image nfs shares file (string value) -#tintri_image_shares_config = - -# Global backend request timeout, in seconds. (integer value) -#violin_request_timeout = 300 - -# Storage pools to be used to setup dedup luns only.(Comma separated list) -# (list value) -#violin_dedup_only_pools = - -# Storage pools capable of dedup and other luns.(Comma separated list) (list -# value) -#violin_dedup_capable_pools = - -# Method of choosing a storage pool for a lun. (string value) -# Allowed values: random, largest, smallest -#violin_pool_allocation_method = random - -# Target iSCSI addresses to use.(Comma separated list) (list value) -#violin_iscsi_target_ips = - -# IP address for connecting to VMware vCenter server. (string value) -#vmware_host_ip = - -# Port number for connecting to VMware vCenter server. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#vmware_host_port = 443 - -# Username for authenticating with VMware vCenter server. (string value) -#vmware_host_username = - -# Password for authenticating with VMware vCenter server. (string value) -#vmware_host_password = - -# Optional VIM service WSDL Location e.g http:///vimService.wsdl. -# Optional over-ride to default location for bug work-arounds. (string value) -#vmware_wsdl_location = - -# Number of times VMware vCenter server API must be retried upon connection -# related issues. (integer value) -#vmware_api_retry_count = 10 - -# The interval (in seconds) for polling remote tasks invoked on VMware vCenter -# server. (floating point value) -#vmware_task_poll_interval = 2.0 - -# Name of the vCenter inventory folder that will contain Cinder volumes. This -# folder will be created under "OpenStack/", where -# project_folder is of format "Project ()". (string value) -#vmware_volume_folder = Volumes - -# Timeout in seconds for VMDK volume transfer between Cinder and Glance. -# (integer value) -#vmware_image_transfer_timeout_secs = 7200 - -# Max number of objects to be retrieved per batch. Query results will be -# obtained in batches from the server and not in one shot. Server may still -# limit the count to something less than the configured value. (integer value) -#vmware_max_objects_retrieval = 100 - -# Optional string specifying the VMware vCenter server version. The driver -# attempts to retrieve the version from VMware vCenter server. Set this -# configuration only if you want to override the vCenter server version. -# (string value) -#vmware_host_version = - -# Directory where virtual disks are stored during volume backup and restore. -# (string value) -#vmware_tmp_dir = /tmp - -# CA bundle file to use in verifying the vCenter server certificate. (string -# value) -#vmware_ca_file = - -# If true, the vCenter server certificate is not verified. If false, then the -# default CA truststore is used for verification. This option is ignored if -# "vmware_ca_file" is set. (boolean value) -#vmware_insecure = false - -# Name of a vCenter compute cluster where volumes should be created. (multi -# valued) -#vmware_cluster_name = - -# Maximum number of connections in http connection pool. (integer value) -#vmware_connection_pool_size = 10 - -# Default adapter type to be used for attaching volumes. (string value) -# Allowed values: lsiLogic, busLogic, lsiLogicsas, paraVirtual, ide -#vmware_adapter_type = lsiLogic - -# File with the list of available vzstorage shares. (string value) -#vzstorage_shares_config = /etc/cinder/vzstorage_shares - -# Create volumes as sparsed files which take no space rather than regular files -# when using raw format, in which case volume creation takes lot of time. -# (boolean value) -#vzstorage_sparsed_volumes = true - -# Percent of ACTUAL usage of the underlying volume before no new volumes can be -# allocated to the volume destination. (floating point value) -#vzstorage_used_ratio = 0.95 - -# Base dir containing mount points for vzstorage shares. (string value) -#vzstorage_mount_point_base = $state_path/mnt - -# Mount options passed to the vzstorage client. See section of the pstorage- -# mount man page for details. (list value) -#vzstorage_mount_options = - -# Default format that will be used when creating volumes if no volume format is -# specified. (string value) -#vzstorage_default_volume_format = raw - -# File with the list of available smbfs shares. (string value) -#smbfs_shares_config = C:\OpenStack\smbfs_shares.txt - -# DEPRECATED: The path of the automatically generated file containing -# information about volume disk space allocation. (string value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: This allocation file is no longer used. -#smbfs_allocation_info_file_path = C:\OpenStack\allocation_data.txt - -# Default format that will be used when creating volumes if no volume format is -# specified. (string value) -# Allowed values: vhd, vhdx -#smbfs_default_volume_format = vhd - -# Create volumes as sparsed files which take no space rather than regular files -# when using raw format, in which case volume creation takes lot of time. -# (boolean value) -#smbfs_sparsed_volumes = true - -# DEPRECATED: Percent of ACTUAL usage of the underlying volume before no new -# volumes can be allocated to the volume destination. (floating point value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#smbfs_used_ratio = - -# DEPRECATED: This will compare the allocated to available space on the volume -# destination. If the ratio exceeds this number, the destination will no -# longer be valid. (floating point value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#smbfs_oversub_ratio = - -# Base dir containing mount points for smbfs shares. (string value) -#smbfs_mount_point_base = C:\OpenStack\_mnt - -# Mappings between share locations and pool names. If not specified, the share -# names will be used as pool names. Example: -# //addr/share:pool_name,//addr/share2:pool_name2 (dict value) -#smbfs_pool_mappings = - -# Path to store VHD backed volumes (string value) -#windows_iscsi_lun_path = C:\iSCSIVirtualDisks - -# Default storage pool for volumes. (integer value) -#ise_storage_pool = 1 - -# Raid level for ISE volumes. (integer value) -#ise_raid = 1 - -# Number of retries (per port) when establishing connection to ISE management -# port. (integer value) -#ise_connection_retries = 5 - -# Interval (secs) between retries. (integer value) -#ise_retry_interval = 1 - -# Number on retries to get completion status after issuing a command to ISE. -# (integer value) -#ise_completion_retries = 30 - -# VPSA - Use ISER instead of iSCSI (boolean value) -#zadara_use_iser = true - -# VPSA - Management Host name or IP address (string value) -#zadara_vpsa_host = - -# VPSA - Port number (port value) -# Minimum value: 0 -# Maximum value: 65535 -#zadara_vpsa_port = - -# VPSA - Use SSL connection (boolean value) -#zadara_vpsa_use_ssl = false - -# If set to True the http client will validate the SSL certificate of the VPSA -# endpoint. (boolean value) -#zadara_ssl_cert_verify = true - -# VPSA - Username (string value) -#zadara_user = - -# VPSA - Password (string value) -#zadara_password = - -# VPSA - Storage Pool assigned for volumes (string value) -#zadara_vpsa_poolname = - -# VPSA - Default encryption policy for volumes (boolean value) -#zadara_vol_encrypt = false - -# VPSA - Default template for VPSA volume names (string value) -#zadara_vol_name_template = OS_%s - -# VPSA - Attach snapshot policy for volumes (boolean value) -#zadara_default_snap_policy = false - -# Storage pool name. (string value) -#zfssa_pool = - -# Project name. (string value) -#zfssa_project = - -# Block size. (string value) -# Allowed values: 512, 1k, 2k, 4k, 8k, 16k, 32k, 64k, 128k -#zfssa_lun_volblocksize = 8k - -# Flag to enable sparse (thin-provisioned): True, False. (boolean value) -#zfssa_lun_sparse = false - -# Data compression. (string value) -# Allowed values: off, lzjb, gzip-2, gzip, gzip-9 -#zfssa_lun_compression = off - -# Synchronous write bias. (string value) -# Allowed values: latency, throughput -#zfssa_lun_logbias = latency - -# iSCSI initiator group. (string value) -#zfssa_initiator_group = - -# iSCSI initiator IQNs. (comma separated) (string value) -#zfssa_initiator = - -# iSCSI initiator CHAP user (name). (string value) -#zfssa_initiator_user = - -# Secret of the iSCSI initiator CHAP user. (string value) -#zfssa_initiator_password = - -# iSCSI initiators configuration. (string value) -#zfssa_initiator_config = - -# iSCSI target group name. (string value) -#zfssa_target_group = tgt-grp - -# iSCSI target CHAP user (name). (string value) -#zfssa_target_user = - -# Secret of the iSCSI target CHAP user. (string value) -#zfssa_target_password = - -# iSCSI target portal (Data-IP:Port, w.x.y.z:3260). (string value) -#zfssa_target_portal = - -# Network interfaces of iSCSI targets. (comma separated) (string value) -#zfssa_target_interfaces = - -# REST connection timeout. (seconds) (integer value) -#zfssa_rest_timeout = - -# IP address used for replication data. (maybe the same as data ip) (string -# value) -#zfssa_replication_ip = - -# Flag to enable local caching: True, False. (boolean value) -#zfssa_enable_local_cache = true - -# Name of ZFSSA project where cache volumes are stored. (string value) -#zfssa_cache_project = os-cinder-cache - -# Driver policy for volume manage. (string value) -# Allowed values: loose, strict -#zfssa_manage_policy = loose - -# Data path IP address (string value) -#zfssa_data_ip = - -# HTTPS port number (string value) -#zfssa_https_port = 443 - -# Options to be passed while mounting share over nfs (string value) -#zfssa_nfs_mount_options = - -# Storage pool name. (string value) -#zfssa_nfs_pool = - -# Project name. (string value) -#zfssa_nfs_project = NFSProject - -# Share name. (string value) -#zfssa_nfs_share = nfs_share - -# Data compression. (string value) -# Allowed values: off, lzjb, gzip-2, gzip, gzip-9 -#zfssa_nfs_share_compression = off - -# Synchronous write bias-latency, throughput. (string value) -# Allowed values: latency, throughput -#zfssa_nfs_share_logbias = latency - -# Name of directory inside zfssa_nfs_share where cache volumes are stored. -# (string value) -#zfssa_cache_directory = os-cinder-cache - -# Main controller IP. (IP address value) -#zteControllerIP0 = - -# Slave controller IP. (IP address value) -#zteControllerIP1 = - -# Local IP. (IP address value) -#zteLocalIP = - -# User name. (string value) -#zteUserName = - -# User password. (string value) -#zteUserPassword = - -# Virtual block size of pool. Unit : KB. Valid value : 4, 8, 16, 32, 64, 128, -# 256, 512. (integer value) -#zteChunkSize = 4 - -# Cache readahead size. (integer value) -#zteAheadReadSize = 8 - -# Cache policy. 0, Write Back; 1, Write Through. (integer value) -#zteCachePolicy = 1 - -# SSD cache switch. 0, OFF; 1, ON. (integer value) -#zteSSDCacheSwitch = 1 - -# Pool name list. (list value) -#zteStoragePool = - -# Pool volume allocated policy. 0, Auto; 1, High Performance Tier First; 2, -# Performance Tier First; 3, Capacity Tier First. (integer value) -#ztePoolVoAllocatedPolicy = 0 - -# Pool volume move policy.0, Auto; 1, Highest Available; 2, Lowest Available; -# 3, No Relocation. (integer value) -#ztePoolVolMovePolicy = 0 - -# Whether it is a thin volume. (boolean value) -#ztePoolVolIsThin = false - -# Pool volume init allocated Capacity.Unit : KB. (integer value) -#ztePoolVolInitAllocatedCapacity = 0 - -# Pool volume alarm threshold. [0, 100] (integer value) -#ztePoolVolAlarmThreshold = 0 - -# Pool volume alarm stop allocated flag. (integer value) -#ztePoolVolAlarmStopAllocatedFlag = 0 - -# Driver to use for volume creation (string value) -#volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver - -# FC Zoning mode configured (string value) -#zoning_mode = - -# User defined capabilities, a JSON formatted string specifying key/value -# pairs. The key/value pairs can be used by the CapabilitiesFilter to select -# between backends when requests specify volume types. For example, specifying -# a service level or the geographical location of a backend, then creating a -# volume type to allow the user to select by these different properties. -# (string value) -#extra_capabilities = {} - -# Suppress requests library SSL certificate warnings. (boolean value) -#suppress_requests_ssl_warnings = false - - -[barbican] - -# -# From castellan.config -# - -# Use this endpoint to connect to Barbican, for example: -# "http://localhost:9311/" (string value) -#barbican_endpoint = - -# Version of the Barbican API, for example: "v1" (string value) -#barbican_api_version = - -# Use this endpoint to connect to Keystone (string value) -#auth_endpoint = http://localhost/identity/v3 - -# Number of seconds to wait before retrying poll for key creation completion -# (integer value) -#retry_delay = 1 - -# Number of times to retry poll for key creation completion (integer value) -#number_of_retries = 60 - -# Specifies if insecure TLS (https) requests. If False, the server's -# certificate will not be validated (boolean value) -#verify_ssl = true - - -[brcd_fabric_example] - -# -# From cinder -# - -# South bound connector for the fabric. (string value) -# Allowed values: SSH, HTTP, HTTPS -#fc_southbound_protocol = HTTP - -# Management IP of fabric. (string value) -#fc_fabric_address = - -# Fabric user ID. (string value) -#fc_fabric_user = - -# Password for user. (string value) -#fc_fabric_password = - -# Connecting port (port value) -# Minimum value: 0 -# Maximum value: 65535 -#fc_fabric_port = 22 - -# Local SSH certificate Path. (string value) -#fc_fabric_ssh_cert_path = - -# Overridden zoning policy. (string value) -#zoning_policy = initiator-target - -# Overridden zoning activation state. (boolean value) -#zone_activate = true - -# Overridden zone name prefix. (string value) -#zone_name_prefix = openstack - -# Virtual Fabric ID. (string value) -#fc_virtual_fabric_id = - - -[cisco_fabric_example] - -# -# From cinder -# - -# Management IP of fabric (string value) -#cisco_fc_fabric_address = - -# Fabric user ID (string value) -#cisco_fc_fabric_user = - -# Password for user (string value) -#cisco_fc_fabric_password = - -# Connecting port (port value) -# Minimum value: 0 -# Maximum value: 65535 -#cisco_fc_fabric_port = 22 - -# overridden zoning policy (string value) -#cisco_zoning_policy = initiator-target - -# overridden zoning activation state (boolean value) -#cisco_zone_activate = true - -# overridden zone name prefix (string value) -#cisco_zone_name_prefix = - -# VSAN of the Fabric (string value) -#cisco_zoning_vsan = - - -[coordination] - -# -# From cinder -# - -# The backend URL to use for distributed coordination. (string value) -#backend_url = file://$state_path - -# DEPRECATED: Number of seconds between heartbeats for distributed -# coordination. No longer used since distributed coordination manages its -# heartbeat internally. (floating point value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: This option is no longer used. -#heartbeat = 1.0 - -# DEPRECATED: Initial number of seconds to wait after failed reconnection. No -# longer used since distributed coordination manages its heartbeat internally. -# (floating point value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: This option is no longer used. -#initial_reconnect_backoff = 0.1 - -# DEPRECATED: Maximum number of seconds between sequential reconnection -# retries. No longer used since distributed coordination manages its heartbeat -# internally. (floating point value) -# This option is deprecated for removal since 11.0.0. -# Its value may be silently ignored in the future. -# Reason: This option is no longer used. -#max_reconnect_backoff = 60.0 - - -[cors] - -# -# From oslo.middleware -# - -# Indicate whether this resource may be shared with the domain received in the -# requests "origin" header. Format: "://[:]", no trailing -# slash. Example: https://horizon.example.com (list value) -#allowed_origin = - -# Indicate that the actual request can include user credentials (boolean value) -#allow_credentials = true - -# Indicate which headers are safe to expose to the API. Defaults to HTTP Simple -# Headers. (list value) -#expose_headers = X-Auth-Token,X-Subject-Token,X-Service-Token,X-OpenStack-Request-ID,OpenStack-API-Version - -# Maximum cache age of CORS preflight requests. (integer value) -#max_age = 3600 - -# Indicate which methods can be used during the actual request. (list value) -#allow_methods = GET,PUT,POST,DELETE,PATCH,HEAD - -# Indicate which header field names may be used during the actual request. -# (list value) -#allow_headers = X-Auth-Token,X-Identity-Status,X-Roles,X-Service-Catalog,X-User-Id,X-Tenant-Id,X-OpenStack-Request-ID,X-Trace-Info,X-Trace-HMAC,OpenStack-API-Version - - -[database] - -# -# From oslo.db -# - -# If True, SQLite uses synchronous mode. (boolean value) -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. (string -# value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = - -# The SQLAlchemy connection string to use to connect to the slave database. -# (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including the -# default, overrides any server-set SQL mode. To use whatever SQL mode is set -# by the server configuration, set this to no value. Example: mysql_sql_mode= -# (string value) -#mysql_sql_mode = TRADITIONAL - -# If True, transparently enables support for handling MySQL Cluster (NDB). -# (boolean value) -#mysql_enable_ndb = false - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. Setting a value of -# 0 indicates no limit. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = 5 - -# Maximum number of database connection retries during startup. Set to -1 to -# specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = 50 - -# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer -# value) -# Minimum value: 0 -# Maximum value: 100 -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection lost. -# (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database operation up to -# db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries of a -# database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before error is -# raised. Set to -1 to specify an infinite retry count. (integer value) -#db_max_retries = 20 - - -[fc-zone-manager] - -# -# From cinder -# - -# South bound connector for zoning operation (string value) -#brcd_sb_connector = HTTP - -# Southbound connector for zoning operation (string value) -#cisco_sb_connector = cinder.zonemanager.drivers.cisco.cisco_fc_zone_client_cli.CiscoFCZoneClientCLI - -# FC Zone Driver responsible for zone management (string value) -#zone_driver = cinder.zonemanager.drivers.brocade.brcd_fc_zone_driver.BrcdFCZoneDriver - -# Zoning policy configured by user; valid values include "initiator-target" or -# "initiator" (string value) -#zoning_policy = initiator-target - -# Comma separated list of Fibre Channel fabric names. This list of names is -# used to retrieve other SAN credentials for connecting to each SAN fabric -# (string value) -#fc_fabric_names = - -# FC SAN Lookup Service (string value) -#fc_san_lookup_service = cinder.zonemanager.drivers.brocade.brcd_fc_san_lookup_service.BrcdFCSanLookupService - -# Set this to True when you want to allow an unsupported zone manager driver to -# start. Drivers that haven't maintained a working CI system and testing are -# marked as unsupported until CI is working again. This also marks a driver as -# deprecated and may be removed in the next release. (boolean value) -#enable_unsupported_driver = false - - -[healthcheck] - -# -# From oslo.middleware -# - -# DEPRECATED: The path to respond to healtcheck requests on. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#path = /healthcheck - -# Show more detailed information as part of the response (boolean value) -#detailed = false - -# Additional backends that can perform health checks and report that -# information back as part of a request. (list value) -#backends = - -# Check the presence of a file to determine if an application is running on a -# port. Used by DisableByFileHealthcheck plugin. (string value) -#disable_by_file_path = - -# Check the presence of a file based on a port to determine if an application -# is running on a port. Expects a "port:path" list of strings. Used by -# DisableByFilesPortsHealthcheck plugin. (list value) -#disable_by_file_paths = - - -[key_manager] - -# -# From castellan.config -# - -# The full class name of the key manager API class (string value) -#api_class = castellan.key_manager.barbican_key_manager.BarbicanKeyManager - -# The type of authentication credential to create. Possible values are 'token', -# 'password', 'keystone_token', and 'keystone_password'. Required if no context -# is passed to the credential factory. (string value) -#auth_type = - -# Token for authentication. Required for 'token' and 'keystone_token' auth_type -# if no context is passed to the credential factory. (string value) -#token = - -# Username for authentication. Required for 'password' auth_type. Optional for -# the 'keystone_password' auth_type. (string value) -#username = - -# Password for authentication. Required for 'password' and 'keystone_password' -# auth_type. (string value) -#password = - -# User ID for authentication. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#user_id = - -# User's domain ID for authentication. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#user_domain_id = - -# User's domain name for authentication. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#user_domain_name = - -# Trust ID for trust scoping. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#trust_id = - -# Domain ID for domain scoping. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#domain_id = - -# Domain name for domain scoping. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#domain_name = - -# Project ID for project scoping. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#project_id = - -# Project name for project scoping. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#project_name = - -# Project's domain ID for project. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#project_domain_id = - -# Project's domain name for project. Optional for 'keystone_token' and -# 'keystone_password' auth_type. (string value) -#project_domain_name = - -# Allow fetching a new token if the current one is going to expire. Optional -# for 'keystone_token' and 'keystone_password' auth_type. (boolean value) -#reauthenticate = true - -# -# From cinder -# - -# Fixed key returned by key manager, specified in hex (string value) -#fixed_key = - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Complete "public" Identity API endpoint. This endpoint should not be an -# "admin" endpoint, as it should be accessible by all end users. -# Unauthenticated clients are redirected to this endpoint to authenticate. -# Although this endpoint should ideally be unversioned, client support in the -# wild varies. If you're using a versioned v2 endpoint here, then this should -# *not* be the same endpoint the service user utilizes for validating tokens, -# because normal end users may not be able to reach that endpoint. (string -# value) -#auth_uri = - -# API version of the admin Identity API endpoint. (string value) -#auth_version = - -# Do not handle authorization requests within the middleware, but delegate the -# authorization decision to downstream WSGI components. (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. (integer -# value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with Identity -# API Server. (integer value) -#http_request_max_retries = 3 - -# Request environment key where the Swift cache object is stored. When -# auth_token middleware is deployed with a Swift cache, use this option to have -# the middleware share a caching backend with swift. Otherwise, use the -# ``memcached_servers`` option instead. (string value) -#cache = - -# Required if identity server requires client certificate (string value) -#certfile = - -# Required if identity server requires client certificate (string value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs connections. -# Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# The region in which the identity server can be found. (string value) -#region_name = - -# DEPRECATED: Directory used to cache files related to PKI tokens. This option -# has been deprecated in the Ocata release and will be removed in the P -# release. (string value) -# This option is deprecated for removal since Ocata. -# Its value may be silently ignored in the future. -# Reason: PKI token format is no longer supported. -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. If left -# undefined, tokens will instead be cached in-process. (list value) -# Deprecated group/name - [keystone_authtoken]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the middleware -# caches previously-seen tokens for a configurable duration (in seconds). Set -# to -1 to disable caching completely. (integer value) -#token_cache_time = 300 - -# DEPRECATED: Determines the frequency at which the list of revoked tokens is -# retrieved from the Identity service (in seconds). A high number of revocation -# events combined with a low cache duration may significantly reduce -# performance. Only valid for PKI tokens. This option has been deprecated in -# the Ocata release and will be removed in the P release. (integer value) -# This option is deprecated for removal since Ocata. -# Its value may be silently ignored in the future. -# Reason: PKI token format is no longer supported. -#revocation_cache_time = 10 - -# (Optional) If defined, indicate whether token data should be authenticated or -# authenticated and encrypted. If MAC, token data is authenticated (with HMAC) -# in the cache. If ENCRYPT, token data is encrypted and authenticated in the -# cache. If the value is not one of these options or empty, auth_token will -# raise an exception on initialization. (string value) -# Allowed values: None, MAC, ENCRYPT -#memcache_security_strategy = None - -# (Optional, mandatory if memcache_security_strategy is defined) This string is -# used for key derivation. (string value) -#memcache_secret_key = - -# (Optional) Number of seconds memcached server is considered dead before it is -# tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (Optional) Maximum total number of open connections to every memcached -# server. (integer value) -#memcache_pool_maxsize = 10 - -# (Optional) Socket timeout in seconds for communicating with a memcached -# server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (Optional) Number of seconds a connection to memcached is held unused in the -# pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (Optional) Number of seconds that an operation will wait to get a memcached -# client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (Optional) Use the advanced (eventlet safe) memcached client pool. The -# advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (Optional) Indicate whether to set the X-Service-Catalog header. If False, -# middleware will not ask for service catalog on token validation and will not -# set the X-Service-Catalog header. (boolean value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: "disabled" -# to not check token binding. "permissive" (default) to validate binding -# information if the bind type is of a form known to the server and ignore it -# if not. "strict" like "permissive" but if the bind type is unknown the token -# will be rejected. "required" any form of token binding is needed to be -# allowed. Finally the name of a binding method that must be present in tokens. -# (string value) -#enforce_token_bind = permissive - -# DEPRECATED: If true, the revocation list will be checked for cached tokens. -# This requires that PKI tokens are configured on the identity server. (boolean -# value) -# This option is deprecated for removal since Ocata. -# Its value may be silently ignored in the future. -# Reason: PKI token format is no longer supported. -#check_revocations_for_cached = false - -# DEPRECATED: Hash algorithms to use for hashing PKI tokens. This may be a -# single algorithm or multiple. The algorithms are those supported by Python -# standard hashlib.new(). The hashes will be tried in the order given, so put -# the preferred one first for performance. The result of the first hash will be -# stored in the cache. This will typically be set to multiple values only while -# migrating from a less secure algorithm to a more secure one. Once all the old -# tokens are expired this option should be set to a single value for better -# performance. (list value) -# This option is deprecated for removal since Ocata. -# Its value may be silently ignored in the future. -# Reason: PKI token format is no longer supported. -#hash_algorithms = md5 - -# A choice of roles that must be present in a service token. Service tokens are -# allowed to request that an expired token can be used and so this check should -# tightly control that only actual services should be sending this token. Roles -# here are applied as an ANY check so any role in this list must be present. -# For backwards compatibility reasons this currently only affects the -# allow_expired check. (list value) -#service_token_roles = service - -# For backwards compatibility reasons we must let valid service tokens pass -# that don't pass the service_token_roles check as valid. Setting this true -# will become the default in a future release and should be enabled if -# possible. (boolean value) -#service_token_roles_required = false - -# Authentication type to load (string value) -# Deprecated group/name - [keystone_authtoken]/auth_plugin -#auth_type = - -# Config Section from which to load plugin specific options (string value) -#auth_section = - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# DEPRECATED: Host to locate redis. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#host = 127.0.0.1 - -# DEPRECATED: Use this port to connect to redis host. (port value) -# Minimum value: 0 -# Maximum value: 65535 -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#port = 6379 - -# DEPRECATED: Password for Redis server (optional). (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#password = - -# DEPRECATED: List of Redis Sentinel hosts (fault tolerance mode), e.g., -# [host:port, host1:port ... ] (list value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#sentinel_hosts = - -# Redis replica set name. (string value) -#sentinel_group_name = oslo-messaging-zeromq - -# Time in ms to wait between connection attempts. (integer value) -#wait_timeout = 2000 - -# Time in ms to wait before the transaction is killed. (integer value) -#check_timeout = 20000 - -# Timeout in ms on blocking socket operations. (integer value) -#socket_timeout = 10000 - - -[nova_client] - -# -# From cinder -# - -# The max number of the timing objects to keep (integer value) -#max_timing_buffer = 200 - - -[nova_group] - -# -# From cinder -# - -# Name of nova region to use. Useful if keystone manages more than one region. -# (string value) -# Deprecated group/name - [DEFAULT]/os_region_name -#region_name = - -# Type of the nova endpoint to use. This endpoint will be looked up in the -# keystone catalog and should be one of public, internal or admin. (string -# value) -# Allowed values: public, admin, internal -#interface = public - -# The authentication URL for the nova connection when using the current users -# token (string value) -#token_auth_url = - -# PEM encoded Certificate Authority to use when verifying HTTPs connections. -# (string value) -# Deprecated group/name - [nova_group]/nova_ca_certificates_file -#cafile = - -# PEM encoded client certificate cert file (string value) -#certfile = - -# PEM encoded client certificate key file (string value) -#keyfile = - -# Verify HTTPS connections. (boolean value) -# Deprecated group/name - [nova_group]/nova_api_insecure -#insecure = false - -# Timeout value for http requests (integer value) -#timeout = - -# Authentication type to load (string value) -# Deprecated group/name - [nova_group]/auth_plugin -#auth_type = - -# Config Section from which to load plugin specific options (string value) -#auth_section = - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -#disable_process_locking = false - -# Directory to use for lock files. For security, the specified directory -# should only be writable by the user running the processes that need locking. -# Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, -# a lock path must be set. (string value) -#lock_path = - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# Name for the AMQP container. must be globally unique. Defaults to a generated -# UUID (string value) -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -#trace = false - -# Attempt to connect via SSL. If no other ssl-related parameters are given, it -# will use the system's CA-bundle to verify the server's certificate. (boolean -# value) -#ssl = false - -# CA certificate PEM file used to verify the server's certificate (string -# value) -#ssl_ca_file = - -# Self-identifying certificate PEM file for client authentication (string -# value) -#ssl_cert_file = - -# Private key PEM file used to sign ssl_cert_file certificate (optional) -# (string value) -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -#ssl_key_password = - -# By default SSL checks that the name in the server's certificate matches the -# hostname in the transport_url. In some configurations it may be preferable to -# use the virtual hostname instead, for example if the server uses the Server -# Name Indication TLS extension (rfc6066) to provide a certificate per virtual -# host. Set ssl_verify_vhost to True if the server's SSL certificate uses the -# virtual host name instead of the DNS name. (boolean value) -#ssl_verify_vhost = false - -# DEPRECATED: Accept clients using either SSL or plain TCP (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Not applicable - not a SSL server -#allow_insecure_clients = false - -# Space separated list of acceptable SASL mechanisms (string value) -#sasl_mechanisms = - -# Path to directory that contains the SASL configuration (string value) -#sasl_config_dir = - -# Name of configuration file (without .conf suffix) (string value) -#sasl_config_name = - -# SASL realm to use if no realm present in username (string value) -#sasl_default_realm = - -# DEPRECATED: User name for message broker authentication (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Should use configuration option transport_url to provide the -# username. -#username = - -# DEPRECATED: Password for message broker authentication (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Should use configuration option transport_url to provide the -# password. -#password = - -# Seconds to pause before attempting to re-connect. (integer value) -# Minimum value: 1 -#connection_retry_interval = 1 - -# Increase the connection_retry_interval by this many seconds after each -# unsuccessful failover attempt. (integer value) -# Minimum value: 0 -#connection_retry_backoff = 2 - -# Maximum limit for connection_retry_interval + connection_retry_backoff -# (integer value) -# Minimum value: 1 -#connection_retry_interval_max = 30 - -# Time to pause between re-connecting an AMQP 1.0 link that failed due to a -# recoverable error. (integer value) -# Minimum value: 1 -#link_retry_delay = 10 - -# The maximum number of attempts to re-send a reply message which failed due to -# a recoverable error. (integer value) -# Minimum value: -1 -#default_reply_retry = 0 - -# The deadline for an rpc reply message delivery. (integer value) -# Minimum value: 5 -#default_reply_timeout = 30 - -# The deadline for an rpc cast or call message delivery. Only used when caller -# does not provide a timeout expiry. (integer value) -# Minimum value: 5 -#default_send_timeout = 30 - -# The deadline for a sent notification message delivery. Only used when caller -# does not provide a timeout expiry. (integer value) -# Minimum value: 5 -#default_notify_timeout = 30 - -# The duration to schedule a purge of idle sender links. Detach link after -# expiry. (integer value) -# Minimum value: 1 -#default_sender_link_timeout = 600 - -# Indicates the addressing mode used by the driver. -# Permitted values: -# 'legacy' - use legacy non-routable addressing -# 'routable' - use routable addresses -# 'dynamic' - use legacy addresses if the message bus does not support routing -# otherwise use routable addressing (string value) -#addressing_mode = dynamic - -# Enable virtual host support for those message buses that do not natively -# support virtual hosting (such as qpidd). When set to true the virtual host -# name will be added to all message bus addresses, effectively creating a -# private 'subnet' per virtual host. Set to False if the message bus supports -# virtual hosting using the 'hostname' field in the AMQP 1.0 Open performative -# as the name of the virtual host. (boolean value) -#pseudo_vhost = true - -# address prefix used when sending to a specific server (string value) -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -#group_request_prefix = unicast - -# Address prefix for all generated RPC addresses (string value) -#rpc_address_prefix = openstack.org/om/rpc - -# Address prefix for all generated Notification addresses (string value) -#notify_address_prefix = openstack.org/om/notify - -# Appended to the address prefix when sending a fanout message. Used by the -# message bus to identify fanout messages. (string value) -#multicast_address = multicast - -# Appended to the address prefix when sending to a particular RPC/Notification -# server. Used by the message bus to identify messages sent to a single -# destination. (string value) -#unicast_address = unicast - -# Appended to the address prefix when sending to a group of consumers. Used by -# the message bus to identify messages that should be delivered in a round- -# robin fashion across consumers. (string value) -#anycast_address = anycast - -# Exchange name used in notification addresses. -# Exchange name resolution precedence: -# Target.exchange if set -# else default_notification_exchange if set -# else control_exchange if set -# else 'notify' (string value) -#default_notification_exchange = - -# Exchange name used in RPC addresses. -# Exchange name resolution precedence: -# Target.exchange if set -# else default_rpc_exchange if set -# else control_exchange if set -# else 'rpc' (string value) -#default_rpc_exchange = - -# Window size for incoming RPC Reply messages. (integer value) -# Minimum value: 1 -#reply_link_credit = 200 - -# Window size for incoming RPC Request messages (integer value) -# Minimum value: 1 -#rpc_server_credit = 100 - -# Window size for incoming Notification messages (integer value) -# Minimum value: 1 -#notify_server_credit = 100 - -# Send messages of this type pre-settled. -# Pre-settled messages will not receive acknowledgement -# from the peer. Note well: pre-settled messages may be -# silently discarded if the delivery fails. -# Permitted values: -# 'rpc-call' - send RPC Calls pre-settled -# 'rpc-reply'- send RPC Replies pre-settled -# 'rpc-cast' - Send RPC Casts pre-settled -# 'notify' - Send Notifications pre-settled -# (multi valued) -#pre_settled = rpc-cast -#pre_settled = rpc-reply - - -[oslo_messaging_kafka] - -# -# From oslo.messaging -# - -# DEPRECATED: Default Kafka broker Host (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#kafka_default_host = localhost - -# DEPRECATED: Default Kafka broker Port (port value) -# Minimum value: 0 -# Maximum value: 65535 -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#kafka_default_port = 9092 - -# Max fetch bytes of Kafka consumer (integer value) -#kafka_max_fetch_bytes = 1048576 - -# Default timeout(s) for Kafka consumers (floating point value) -#kafka_consumer_timeout = 1.0 - -# Pool Size for Kafka Consumers (integer value) -#pool_size = 10 - -# The pool size limit for connections expiration policy (integer value) -#conn_pool_min_size = 2 - -# The time-to-live in sec of idle connections in the pool (integer value) -#conn_pool_ttl = 1200 - -# Group id for Kafka consumer. Consumers in one group will coordinate message -# consumption (string value) -#consumer_group = oslo_messaging_consumer - -# Upper bound on the delay for KafkaProducer batching in seconds (floating -# point value) -#producer_batch_timeout = 0.0 - -# Size of batch for the producer async send (integer value) -#producer_batch_size = 16384 - - -[oslo_messaging_notifications] - -# -# From oslo.messaging -# - -# The Drivers(s) to handle sending notifications. Possible values are -# messaging, messagingv2, routing, log, test, noop (multi valued) -# Deprecated group/name - [DEFAULT]/notification_driver -#driver = - -# A URL representing the messaging driver to use for notifications. If not set, -# we fall back to the same configuration used for RPC. (string value) -# Deprecated group/name - [DEFAULT]/notification_transport_url -#transport_url = - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -# Deprecated group/name - [DEFAULT]/notification_topics -#topics = notifications - -# The maximum number of attempts to re-send a notification message which failed -# to be delivered due to a recoverable error. 0 - No retry, -1 - indefinite -# (integer value) -#retry = -1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_durable_queues -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -#amqp_auto_delete = false - -# Enable SSL (boolean value) -#ssl = - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_version -#ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_keyfile -#ssl_key_file = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_certfile -#ssl_cert_file = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [oslo_messaging_rabbit]/kombu_ssl_ca_certs -#ssl_ca_file = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -#kombu_reconnect_delay = 1.0 - -# EXPERIMENTAL: Possible values are: gzip, bz2. If not set compression will not -# be used. This option may not be available in future versions. (string value) -#kombu_compression = - -# How long to wait a missing client before abandoning to send it its replies. -# This value should not be longer than rpc_response_timeout. (integer value) -# Deprecated group/name - [oslo_messaging_rabbit]/kombu_reconnect_timeout -#kombu_missing_consumer_retry_timeout = 60 - -# Determines how the next RabbitMQ node is chosen in case the one we are -# currently connected to becomes unavailable. Takes effect only if more than -# one RabbitMQ node is provided in config. (string value) -# Allowed values: round-robin, shuffle -#kombu_failover_strategy = round-robin - -# DEPRECATED: The RabbitMQ broker address where a single node is used. (string -# value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_host = localhost - -# DEPRECATED: The RabbitMQ broker port where a single node is used. (port -# value) -# Minimum value: 0 -# Maximum value: 65535 -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_port = 5672 - -# DEPRECATED: RabbitMQ HA cluster host:port pairs. (list value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_hosts = $rabbit_host:$rabbit_port - -# DEPRECATED: The RabbitMQ userid. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_userid = guest - -# DEPRECATED: The RabbitMQ password. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_password = guest - -# The RabbitMQ login method. (string value) -# Allowed values: PLAIN, AMQPLAIN, RABBIT-CR-DEMO -#rabbit_login_method = AMQPLAIN - -# DEPRECATED: The RabbitMQ virtual host. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -# Reason: Replaced by [DEFAULT]/transport_url -#rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -#rabbit_retry_backoff = 2 - -# Maximum interval of RabbitMQ connection retries. Default is 30 seconds. -# (integer value) -#rabbit_interval_max = 30 - -# DEPRECATED: Maximum number of RabbitMQ connection retries. Default is 0 -# (infinite retry count). (integer value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#rabbit_max_retries = 0 - -# Try to use HA queues in RabbitMQ (x-ha-policy: all). If you change this -# option, you must wipe the RabbitMQ database. In RabbitMQ 3.0, queue mirroring -# is no longer controlled by the x-ha-policy argument when declaring a queue. -# If you just want to make sure that all queues (except those with auto- -# generated names) are mirrored across all nodes, run: "rabbitmqctl set_policy -# HA '^(?!amq\.).*' '{"ha-mode": "all"}' " (boolean value) -#rabbit_ha_queues = false - -# Positive integer representing duration in seconds for queue TTL (x-expires). -# Queues which are unused for the duration of the TTL are automatically -# deleted. The parameter affects only reply and fanout queues. (integer value) -# Minimum value: 1 -#rabbit_transient_queues_ttl = 1800 - -# Specifies the number of messages to prefetch. Setting to zero allows -# unlimited messages. (integer value) -#rabbit_qos_prefetch_count = 0 - -# Number of seconds after which the Rabbit broker is considered down if -# heartbeat's keep-alive fails (0 disable the heartbeat). EXPERIMENTAL (integer -# value) -#heartbeat_timeout_threshold = 60 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -#fake_rabbit = false - -# Maximum number of channels to allow (integer value) -#channel_max = - -# The maximum byte size for an AMQP frame (integer value) -#frame_max = - -# How often to send heartbeats for consumer's connections (integer value) -#heartbeat_interval = 3 - -# Arguments passed to ssl.wrap_socket (dict value) -#ssl_options = - -# Set socket timeout in seconds for connection's socket (floating point value) -#socket_timeout = 0.25 - -# Set TCP_USER_TIMEOUT in seconds for connection's socket (floating point -# value) -#tcp_user_timeout = 0.25 - -# Set delay for reconnection to some host which has connection error (floating -# point value) -#host_connection_reconnect_delay = 0.25 - -# Connection factory implementation (string value) -# Allowed values: new, single, read_write -#connection_factory = single - -# Maximum number of connections to keep queued. (integer value) -#pool_max_size = 30 - -# Maximum number of connections to create above `pool_max_size`. (integer -# value) -#pool_max_overflow = 0 - -# Default number of seconds to wait for a connections to available (integer -# value) -#pool_timeout = 30 - -# Lifetime of a connection (since creation) in seconds or None for no -# recycling. Expired connections are closed on acquire. (integer value) -#pool_recycle = 600 - -# Threshold at which inactive (since release) connections are considered stale -# in seconds or None for no staleness. Stale connections are closed on acquire. -# (integer value) -#pool_stale = 60 - -# Default serialization mechanism for serializing/deserializing -# outgoing/incoming messages (string value) -# Allowed values: json, msgpack -#default_serializer_type = json - -# Persist notification messages. (boolean value) -#notification_persistence = false - -# Exchange name for sending notifications (string value) -#default_notification_exchange = ${control_exchange}_notification - -# Max number of not acknowledged message which RabbitMQ can send to -# notification listener. (integer value) -#notification_listener_prefetch_count = 100 - -# Reconnecting retry count in case of connectivity problem during sending -# notification, -1 means infinite retry. (integer value) -#default_notification_retry_attempts = -1 - -# Reconnecting retry delay in case of connectivity problem during sending -# notification message (floating point value) -#notification_retry_delay = 0.25 - -# Time to live for rpc queues without consumers in seconds. (integer value) -#rpc_queue_expiration = 60 - -# Exchange name for sending RPC messages (string value) -#default_rpc_exchange = ${control_exchange}_rpc - -# Exchange name for receiving RPC replies (string value) -#rpc_reply_exchange = ${control_exchange}_rpc_reply - -# Max number of not acknowledged message which RabbitMQ can send to rpc -# listener. (integer value) -#rpc_listener_prefetch_count = 100 - -# Max number of not acknowledged message which RabbitMQ can send to rpc reply -# listener. (integer value) -#rpc_reply_listener_prefetch_count = 100 - -# Reconnecting retry count in case of connectivity problem during sending -# reply. -1 means infinite retry during rpc_timeout (integer value) -#rpc_reply_retry_attempts = -1 - -# Reconnecting retry delay in case of connectivity problem during sending -# reply. (floating point value) -#rpc_reply_retry_delay = 0.25 - -# Reconnecting retry count in case of connectivity problem during sending RPC -# message, -1 means infinite retry. If actual retry attempts in not 0 the rpc -# request could be processed more than one time (integer value) -#default_rpc_retry_attempts = -1 - -# Reconnecting retry delay in case of connectivity problem during sending RPC -# message (floating point value) -#rpc_retry_delay = 0.25 - - -[oslo_messaging_zmq] - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -# Allowed values: redis, sentinel, dummy -#rpc_zmq_matchmaker = redis - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Number of seconds to wait before all pending messages will be sent after -# closing a socket. The default value of -1 specifies an infinite linger -# period. The value of 0 specifies no linger period. Pending messages shall be -# discarded immediately when the socket is closed. Positive values specify an -# upper bound for the linger period. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_cast_timeout -#zmq_linger = -1 - -# The default number of seconds that poll should wait. Poll raises timeout -# exception when timeout expired. (integer value) -#rpc_poll_timeout = 1 - -# Expiration timeout in seconds of a name service record about existing target -# ( < 0 means no timeout). (integer value) -#zmq_target_expire = 300 - -# Update period in seconds of a name service record about existing target. -# (integer value) -#zmq_target_update = 180 - -# Use PUB/SUB pattern for fanout methods. PUB/SUB always uses proxy. (boolean -# value) -#use_pub_sub = false - -# Use ROUTER remote proxy. (boolean value) -#use_router_proxy = false - -# This option makes direct connections dynamic or static. It makes sense only -# with use_router_proxy=False which means to use direct connections for direct -# message types (ignored otherwise). (boolean value) -#use_dynamic_connections = false - -# How many additional connections to a host will be made for failover reasons. -# This option is actual only in dynamic connections mode. (integer value) -#zmq_failover_connections = 2 - -# Minimal port number for random ports range. (port value) -# Minimum value: 0 -# Maximum value: 65535 -#rpc_zmq_min_port = 49153 - -# Maximal port number for random ports range. (integer value) -# Minimum value: 1 -# Maximum value: 65536 -#rpc_zmq_max_port = 65536 - -# Number of retries to find free port number before fail with ZMQBindError. -# (integer value) -#rpc_zmq_bind_port_retries = 100 - -# Default serialization mechanism for serializing/deserializing -# outgoing/incoming messages (string value) -# Allowed values: json, msgpack -#rpc_zmq_serialization = json - -# This option configures round-robin mode in zmq socket. True means not keeping -# a queue when server side disconnects. False means to keep queue and messages -# even if server is disconnected, when the server appears we send all -# accumulated messages to it. (boolean value) -#zmq_immediate = true - -# Enable/disable TCP keepalive (KA) mechanism. The default value of -1 (or any -# other negative value) means to skip any overrides and leave it to OS default; -# 0 and 1 (or any other positive value) mean to disable and enable the option -# respectively. (integer value) -#zmq_tcp_keepalive = -1 - -# The duration between two keepalive transmissions in idle condition. The unit -# is platform dependent, for example, seconds in Linux, milliseconds in Windows -# etc. The default value of -1 (or any other negative value and 0) means to -# skip any overrides and leave it to OS default. (integer value) -#zmq_tcp_keepalive_idle = -1 - -# The number of retransmissions to be carried out before declaring that remote -# end is not available. The default value of -1 (or any other negative value -# and 0) means to skip any overrides and leave it to OS default. (integer -# value) -#zmq_tcp_keepalive_cnt = -1 - -# The duration between two successive keepalive retransmissions, if -# acknowledgement to the previous keepalive transmission is not received. The -# unit is platform dependent, for example, seconds in Linux, milliseconds in -# Windows etc. The default value of -1 (or any other negative value and 0) -# means to skip any overrides and leave it to OS default. (integer value) -#zmq_tcp_keepalive_intvl = -1 - -# Maximum number of (green) threads to work concurrently. (integer value) -#rpc_thread_pool_size = 100 - -# Expiration timeout in seconds of a sent/received message after which it is -# not tracked anymore by a client/server. (integer value) -#rpc_message_ttl = 300 - -# Wait for message acknowledgements from receivers. This mechanism works only -# via proxy without PUB/SUB. (boolean value) -#rpc_use_acks = false - -# Number of seconds to wait for an ack from a cast/call. After each retry -# attempt this timeout is multiplied by some specified multiplier. (integer -# value) -#rpc_ack_timeout_base = 15 - -# Number to multiply base ack timeout by after each retry attempt. (integer -# value) -#rpc_ack_timeout_multiplier = 2 - -# Default number of message sending attempts in case of any problems occurred: -# positive value N means at most N retries, 0 means no retries, None or -1 (or -# any other negative values) mean to retry forever. This option is used only if -# acknowledgments are enabled. (integer value) -#rpc_retry_attempts = 3 - -# List of publisher hosts SubConsumer can subscribe on. This option has higher -# priority then the default publishers list taken from the matchmaker. (list -# value) -#subscribe_on = - - -[oslo_middleware] - -# -# From oslo.middleware -# - -# The maximum body size for each request, in bytes. (integer value) -# Deprecated group/name - [DEFAULT]/osapi_max_request_body_size -# Deprecated group/name - [DEFAULT]/max_request_body_size -#max_request_body_size = 114688 - -# DEPRECATED: The HTTP Header that will be used to determine what the original -# request protocol scheme was, even if it was hidden by a SSL termination -# proxy. (string value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#secure_proxy_ssl_header = X-Forwarded-Proto - -# Whether the application is behind a proxy or not. This determines if the -# middleware should parse the headers or not. (boolean value) -#enable_proxy_headers_parsing = false - - -[oslo_policy] - -# -# From oslo.policy -# - -# The file that defines policies. (string value) -#policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. (string value) -#policy_default_rule = default - -# Directories where policy configuration files are stored. They can be relative -# to any directory in the search path defined by the config_dir option, or -# absolute paths. The file defined by policy_file must exist for these -# directories to be searched. Missing or empty directories are ignored. (multi -# valued) -#policy_dirs = policy.d - - -[oslo_reports] - -# -# From oslo.reports -# - -# Path to a log directory where to create a file (string value) -#log_dir = - -# The path to a file to watch for changes to trigger the reports, instead of -# signals. Setting this option disables the signal trigger for the reports. If -# application is running as a WSGI application it is recommended to use this -# instead of signals. (string value) -#file_event_handler = - -# How many seconds to wait between polls when file_event_handler is set -# (integer value) -#file_event_handler_interval = 1 - - -[oslo_versionedobjects] - -# -# From oslo.versionedobjects -# - -# Make exception message format errors fatal (boolean value) -#fatal_exception_format_errors = false - - -[profiler] - -# -# From osprofiler -# - -# -# Enables the profiling for all services on this node. Default value is False -# (fully disable the profiling feature). -# -# Possible values: -# -# * True: Enables the feature -# * False: Disables the feature. The profiling cannot be started via this -# project -# operations. If the profiling is triggered by another project, this project -# part -# will be empty. -# (boolean value) -# Deprecated group/name - [profiler]/profiler_enabled -#enabled = false - -# -# Enables SQL requests profiling in services. Default value is False (SQL -# requests won't be traced). -# -# Possible values: -# -# * True: Enables SQL requests profiling. Each SQL query will be part of the -# trace and can the be analyzed by how much time was spent for that. -# * False: Disables SQL requests profiling. The spent time is only shown on a -# higher level of operations. Single SQL queries cannot be analyzed this -# way. -# (boolean value) -#trace_sqlalchemy = false - -# -# Secret key(s) to use for encrypting context data for performance profiling. -# This string value should have the following format: -# [,,...], -# where each key is some random string. A user who triggers the profiling via -# the REST API has to set one of these keys in the headers of the REST API call -# to include profiling results of this node for this particular project. -# -# Both "enabled" flag and "hmac_keys" config options should be set to enable -# profiling. Also, to generate correct profiling information across all -# services -# at least one key needs to be consistent between OpenStack projects. This -# ensures it can be used from client side to generate the trace, containing -# information from all possible resources. (string value) -#hmac_keys = SECRET_KEY - -# -# Connection string for a notifier backend. Default value is messaging:// which -# sets the notifier to oslo_messaging. -# -# Examples of possible values: -# -# * messaging://: use oslo_messaging driver for sending notifications. -# * mongodb://127.0.0.1:27017 : use mongodb driver for sending notifications. -# * elasticsearch://127.0.0.1:9200 : use elasticsearch driver for sending -# notifications. -# (string value) -#connection_string = messaging:// - -# -# Document type for notification indexing in elasticsearch. -# (string value) -#es_doc_type = notification - -# -# This parameter is a time value parameter (for example: es_scroll_time=2m), -# indicating for how long the nodes that participate in the search will -# maintain -# relevant resources in order to continue and support it. -# (string value) -#es_scroll_time = 2m - -# -# Elasticsearch splits large requests in batches. This parameter defines -# maximum size of each batch (for example: es_scroll_size=10000). -# (integer value) -#es_scroll_size = 10000 - -# -# Redissentinel provides a timeout option on the connections. -# This parameter defines that timeout (for example: socket_timeout=0.1). -# (floating point value) -#socket_timeout = 0.1 - -# -# Redissentinel uses a service name to identify a master redis service. -# This parameter defines the name (for example: -# sentinal_service_name=mymaster). -# (string value) -#sentinel_service_name = mymaster - - -[ssl] - -# -# From oslo.service.sslutils -# - -# CA certificate file to use to verify connecting clients. (string value) -# Deprecated group/name - [DEFAULT]/ssl_ca_file -#ca_file = - -# Certificate file to use when starting the server securely. (string value) -# Deprecated group/name - [DEFAULT]/ssl_cert_file -#cert_file = - -# Private key file to use when starting the server securely. (string value) -# Deprecated group/name - [DEFAULT]/ssl_key_file -#key_file = - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -#version = - -# Sets the list of available ciphers. value should be a string in the OpenSSL -# cipher list format. (string value) -#ciphers = diff --git a/openstack/python-cinder/centos/files/cinder.logrotate b/openstack/python-cinder/centos/files/cinder.logrotate deleted file mode 100644 index b31713ff..00000000 --- a/openstack/python-cinder/centos/files/cinder.logrotate +++ /dev/null @@ -1,11 +0,0 @@ -compress - -/var/log/cinder/*.log { - weekly - rotate 4 - missingok - compress - minsize 100k - size 10M - copytruncate -} diff --git a/openstack/python-cinder/centos/files/openstack-cinder-api.service b/openstack/python-cinder/centos/files/openstack-cinder-api.service deleted file mode 100644 index 16a4f3ee..00000000 --- a/openstack/python-cinder/centos/files/openstack-cinder-api.service +++ /dev/null @@ -1,18 +0,0 @@ -[Unit] -Description=OpenStack Cinder API Server -After=syslog.target network.target - -[Service] -Type=simple -# WRS - use root user -#User=cinder -User=root -ExecStart=/usr/bin/cinder-api --config-file /usr/share/cinder/cinder-dist.conf --config-file /etc/cinder/cinder.conf --logfile /var/log/cinder/cinder-api.log -# WRS - Managed by sm/OCF scripts -#Restart=on-failure -#KillMode=process -PIDFile=/var/run/resource-agents/cinder-api.pid - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-cinder/centos/files/openstack-cinder-backup.service b/openstack/python-cinder/centos/files/openstack-cinder-backup.service deleted file mode 100644 index 30b8dc89..00000000 --- a/openstack/python-cinder/centos/files/openstack-cinder-backup.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Cinder Backup Server -After=syslog.target network.target - -[Service] -Type=simple -# WRS - use root user -#User=cinder -User=root -ExecStart=/usr/bin/cinder-backup --config-file /usr/share/cinder/cinder-dist.conf --config-file /etc/cinder/cinder.conf --logfile /var/log/cinder/cinder-backup.log -# WRS - Currently not used but would be also managed by sm -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-cinder/centos/files/openstack-cinder-scheduler.service b/openstack/python-cinder/centos/files/openstack-cinder-scheduler.service deleted file mode 100644 index ccf8ade1..00000000 --- a/openstack/python-cinder/centos/files/openstack-cinder-scheduler.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=OpenStack Cinder Scheduler Server -After=syslog.target network.target - -[Service] -Type=simple -# WRS - use root user -#User=cinder -User=root -ExecStart=/usr/bin/cinder-scheduler --config-file /usr/share/cinder/cinder-dist.conf --config-file /etc/cinder/cinder.conf --logfile /var/log/cinder/cinder-scheduler.log -# WRS - Managed by sm -#Restart=on-failure -Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-cinder/centos/files/openstack-cinder-volume.service b/openstack/python-cinder/centos/files/openstack-cinder-volume.service deleted file mode 100644 index 1183024a..00000000 --- a/openstack/python-cinder/centos/files/openstack-cinder-volume.service +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=OpenStack Cinder Volume Server -After=syslog.target network.target - -[Service] -LimitNOFILE=131072 -LimitNPROC=131072 -Type=simple -# WRS - use root user -#User=cinder -User=root -ExecStart=/usr/bin/cinder-volume --config-file /usr/share/cinder/cinder-dist.conf --config-file /etc/cinder/cinder.conf --logfile /var/log/cinder/cinder-volume.log -# WRS - Managed by sm -#Restart=on-failure -#KillMode=process - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-cinder/centos/files/restart-cinder b/openstack/python-cinder/centos/files/restart-cinder deleted file mode 100644 index fbbd7464..00000000 --- a/openstack/python-cinder/centos/files/restart-cinder +++ /dev/null @@ -1,165 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2016 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# - -# -# The patching subsystem provides a patch-functions bash source file -# with useful function and variable definitions. -# -. /etc/patching/patch-functions - -# -# We can now check to see what type of node we're on, if it's locked, etc, -# and act accordingly -# - -# -# Declare an overall script return code -# -declare -i GLOBAL_RC=$PATCH_STATUS_OK - -# -# Handle restarting Cinder services -# - -# Syntax:(" "\) -SERVICES=("cinder-volume 30 30 kill"\ - "cinder-scheduler 50 20 kill"\ - "cinder-backup 30 30 kill"\ - "cinder-api 30 20 kill") -# where: -# = name of executable file reported by ps -# = how much to wait for the process to gracefully shutdown -# = either 'kill' the process with SIGKILL or 'leave' it running -# the idea is to avoid leaving behind processes that are degraded, better have -# new ones re-spawn -# = how much to wait before the new process can be considered available. -# The processes are restarted by sm by running the ocf scripts at -# /usr/lib/ocf/resource.d/openstack/cinder-*. These scripts have a very good service init -# monitoring routine. We just have to make sure that they don't hang while restarting. -# The values are taken from SM, but we don't wait for any retry. -# Note: cinder-volume timeout is set to 180 secs in sm which is too much for our controlled -# restart - - -function get_pid { - local service=$1 - PID=$(cat /var/run/resource-agents/$service.pid) - echo "$PID" -} - -if is_controller -then - # Cinder services only run on the controller - - if [ ! -f $PATCH_FLAGDIR/cinder.restarted ] - then - touch $PATCH_FLAGDIR/cinder.restarted - # cinder-volume uses this to know that its new process was restarted by in-service patching - touch $PATCH_FLAGDIR/cinder.restarting - for s in "${SERVICES[@]}"; do - set -- $s - service="$1" - timeout="$2" - initialize_interval="$3" - after_timeout="$4" - new_process="false" - - # Check SM to see if service is running - sm-query service $service | grep -q 'enabled-active' - if [ $? -eq 0 ] - then - loginfo "$0: Restarting $service" - - # Get PID - PID=$(get_pid $service) - - # Send restart signal to process - kill -s TERM $PID - - # Wait up to $timeout seconds for service to gracefully recover - let -i UNTIL=$SECONDS+$timeout - while [ $UNTIL -ge $SECONDS ] - do - # Check to see if we have a new process - NEW_PID=$(get_pid $service) - if [[ "$PID" != "$NEW_PID" ]] - then - # We have a new process - new_process="true" - break - fi - - # Still old process? Let's wait 5 seconds and check again - sleep 5 - done - - # Do a hard restart of the process if we still have the old one - NEW_PID=$(get_pid $service) - if [[ "$PID" == "$NEW_PID" ]] - then - # we have the old process still running! - if [[ "$after_timeout" == "kill" ]] - then - loginfo "$0: Old process of $service failed to gracefully terminate in $timeout, killing it!" - # kill the old process - kill -s KILL $PID - # wait for a new process to be restarted by sm - let -i UNTIL=$SECONDS+10 - while [ $UNTIL -ge $SECONDS ] - do - sleep 1 - # Check to see if we have a new process - NEW_PID=$(get_pid $service) - if [[ ! -z "$NEW_PID" ]] && [[ "$PID" != "$NEW_PID" ]] - then - loginfo "$0: New process of $service started" - new_process="true" - break - fi - done - fi - fi - - # Wait for the new process to complete initialisation - if [[ "$new_process" == "true" ]] - then - let -i UNTIL=$SECONDS+$initialize_interval - while [ $UNTIL -ge $SECONDS ] - do - # Note: Services are restarted by sm which runs the ocf start script. - # Sm reports enabled-active only *after* those scripts return success - sm-query service $service | grep -q 'enabled-active' - if [ $? -eq 0 ] - then - loginfo "$0: New process of $service started correctly" - break - fi - sleep 1 - done - fi - - sm-query service $service | grep -q 'enabled-active' - if [ $? -ne 0 ] - then - # Still not running! Clear the flag and mark the RC as failed - loginfo "$0: Failed to restart $service" - rm -f $PATCH_FLAGDIR/$service.restarted - GLOBAL_RC=$PATCH_STATUS_FAILED - sm-query service $service - break - # Note: break if any process in the SERVICES list fails - fi - fi - done - fi -fi -# -# Exit the script with the overall return code -# -rm -f $PATCH_FLAGDIR/cinder.restarting -exit $GLOBAL_RC - diff --git a/openstack/python-cinder/centos/openstack-cinder.spec b/openstack/python-cinder/centos/openstack-cinder.spec deleted file mode 100644 index a437c9fa..00000000 --- a/openstack/python-cinder/centos/openstack-cinder.spec +++ /dev/null @@ -1,481 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%global pypi_name cinder - -# WRS: Keep service name - used by build scripts -#%global service cinder - -# WRS: remove docs - for now -%global with_doc 0 - -%global common_desc \ -OpenStack Volume (codename Cinder) provides services to manage and \ -access block storage volumes for use by Virtual Machine instances. - -Name: openstack-cinder -# Liberty semver reset -# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z -Epoch: 1 -Version: 11.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Volume service - -License: ASL 2.0 -URL: http://www.openstack.org/software/openstack-storage/ -Source0: https://tarballs.openstack.org/%{pypi_name}/%{pypi_name}-%{upstream_version}.tar.gz - -# - -Source1: cinder-dist.conf -Source2: cinder.logrotate -# WRS: Adding pre-built config file (via: tox -egenconfig) as this is not -# getting generated correctly in our build system. Might be due to partial -# rebase env w/ mitaka+newton. We need to re-evaluate once rebase is -# complete. -Source3: cinder.conf.sample - -Source10: openstack-cinder-api.service -Source11: openstack-cinder-scheduler.service -Source12: openstack-cinder-volume.service -Source13: openstack-cinder-backup.service -Source20: cinder-sudoers - -Source21: restart-cinder -Source22: cinder-purge-deleted-active - -BuildArch: noarch -BuildRequires: intltool -BuildRequires: python-d2to1 -BuildRequires: python-openstackdocstheme -BuildRequires: python-pbr -BuildRequires: python-reno -BuildRequires: python-sphinx -BuildRequires: python2-devel -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-netaddr -BuildRequires: systemd -BuildRequires: git -BuildRequires: openstack-macros -BuildRequires: os-brick -BuildRequires: pyparsing -BuildRequires: pytz -BuildRequires: python-decorator -BuildRequires: openstack-macros -# Required to build cinder.conf -BuildRequires: python-google-api-client >= 1.4.2 -BuildRequires: python-keystonemiddleware -BuildRequires: python-glanceclient >= 1:2.8.0 -#BuildRequires: python-novaclient >= 1:9.0.0 -BuildRequires: python-novaclient >= 2.29.0 -BuildRequires: python-swiftclient >= 3.2.0 -BuildRequires: python-oslo-db -BuildRequires: python-oslo-config >= 2:4.0.0 -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-reports -BuildRequires: python-oslotest -BuildRequires: python-oslo-utils -BuildRequires: python-oslo-versionedobjects -BuildRequires: python-oslo-vmware -BuildRequires: python-os-win -BuildRequires: python-castellan -BuildRequires: python-cryptography -BuildRequires: python-lxml -BuildRequires: python-osprofiler -BuildRequires: python-paramiko -BuildRequires: python-suds -BuildRequires: python-taskflow -BuildRequires: python-tooz -BuildRequires: python-oslo-log -BuildRequires: python-oslo-i18n -BuildRequires: python-barbicanclient -BuildRequires: python-requests -BuildRequires: python-retrying - -# Required to compile translation files -BuildRequires: python-babel - -# Needed for unit tests -BuildRequires: python-ddt -BuildRequires: python-fixtures -BuildRequires: python-mock -BuildRequires: python-oslotest -BuildRequires: python-subunit -BuildRequires: python-testtools -BuildRequires: python-testrepository -BuildRequires: python-testresources -BuildRequires: python-testscenarios -BuildRequires: python-os-testr -BuildRequires: python-rtslib - -Requires: python-cinder = %{epoch}:%{version}-%{release} - -# we dropped the patch to remove PBR for Delorean -Requires: python-pbr - -# as convenience -Requires: python-cinderclient - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -Requires(pre): shadow-utils - -Requires: lvm2 -Requires: python-osprofiler -Requires: python-rtslib - -# Required for EMC VNX driver -Requires: python2-storops - -%description -%{common_desc} - - -%package -n python-cinder -Summary: OpenStack Volume Python libraries -Group: Applications/System - -Requires: sudo - -Requires: qemu-img -Requires: sysfsutils -Requires: os-brick >= 1.15.2 -Requires: python-paramiko >= 2.0 -Requires: python-simplejson >= 2.2.0 - -Requires: python-castellan >= 0.7.0 -Requires: python-eventlet >= 0.18.2 -Requires: python-greenlet >= 0.3.2 -Requires: python-iso8601 >= 0.1.11 -Requires: python-lxml >= 2.3 -Requires: python-stevedore >= 1.20.0 -Requires: python-suds -Requires: python-tooz >= 1.47.0 - -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-migrate >= 0.11.0 - -Requires: python-paste-deploy -Requires: python-routes >= 2.3.1 -Requires: python-webob >= 1.7.1 - -Requires: python-glanceclient >= 1:2.8.0 -Requires: python-swiftclient >= 3.2.0 -Requires: python-keystoneclient >= 3.8.0 -#Requires: python-novaclient >= 1:9.0.0 -Requires: python-novaclient >= 2.29.0 - -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-six >= 1.9.0 -Requires: python-psutil >= 3.2.2 - -Requires: python-babel -Requires: python-google-api-client >= 1.4.2 - -Requires: python-oslo-rootwrap >= 5.0.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-taskflow >= 2.7.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-versionedobjects >= 1.19.0 - -Requires: iscsi-initiator-utils - -Requires: python-osprofiler >= 1.4.0 - -Requires: python-httplib2 >= 0.7.5 -Requires: python-oauth2client >= 1.5.0 - -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-barbicanclient >= 4.0.0 -Requires: python-requests >= 2.10.0 -Requires: python-retrying >= 1.2.3 -Requires: pyparsing >= 2.0.7 -Requires: pytz -Requires: python-decorator -Requires: python-enum34 -Requires: python-ipaddress - -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-keystoneauth1 >= 3.1.0 - -Requires: python-oslo-privsep >= 1.9.0 - -Requires: python-cryptography >= 1.6 - - -%description -n python-cinder -%{common_desc} - -This package contains the cinder Python library. - -%package -n python-cinder-tests -Summary: Cinder tests -Requires: openstack-cinder = %{epoch}:%{version}-%{release} - -# Added test requirements -Requires: python-hacking -Requires: python-anyjson -Requires: python-coverage -Requires: python-ddt -Requires: python-fixtures -Requires: python-mock -Requires: python-mox3 -Requires: python-oslotest -Requires: python-subunit -Requires: python-testtools -Requires: python-testrepository -Requires: python-testresources -Requires: python-testscenarios -Requires: python-os-testr -Requires: python-tempest - -%description -n python-cinder-tests -%{common_desc} - -This package contains the Cinder test files. - -%if 0%{?with_doc} -%package doc -Summary: Documentation for OpenStack Volume -Group: Documentation - -Requires: %{name} = %{epoch}:%{version}-%{release} - -BuildRequires: graphviz - -# Required to build module documents -BuildRequires: python-eventlet -BuildRequires: python-routes -BuildRequires: python-sqlalchemy -BuildRequires: python-webob -BuildRequires: python-stevedore -# while not strictly required, quiets the build down when building docs. -BuildRequires: python-migrate -BuildRequires: python-iso8601 >= 0.1.9 - -%description doc -%{common_desc} - -This package contains documentation files for cinder. -%endif - -%prep -%autosetup -n cinder-%{upstream_version} -S git - -find . \( -name .gitignore -o -name .placeholder \) -delete - -find cinder -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + - -#sed -i 's/%{version}.%{milestone}/%{version}/' PKG-INFO - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -%py_req_cleanup - -%build -# Generate config file -PYTHONPATH=. oslo-config-generator --config-file=cinder/config/cinder-config-generator.conf -# WRS: Put this pre-built config file in place of the generated one as it's not -# being built correctly currently -cp %{SOURCE3} etc/cinder/cinder.conf.sample - -# Build -export PBR_VERSION=%{version} -%{__python2} setup.py build - -# Generate i18n files -# (amoralej) we can remove '-D cinder' once https://review.openstack.org/#/c/439501/ is merged -%{__python2} setup.py compile_catalog -d build/lib/%{pypi_name}/locale -D cinder - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Create fake egg-info for the tempest plugin -# TODO switch to %{service} everywhere as in openstack-example.spec -%global service cinder -%py2_entrypoint %{service} %{service} - -# docs generation requires everything to be installed first -export PYTHONPATH="$( pwd ):$PYTHONPATH" - -%if 0%{?with_doc} -%{__python2} setup.py build_sphinx --builder html -# Fix hidden-file-or-dir warnings -rm -fr doc/build/html/.buildinfo -%endif - -%{__python2} setup.py build_sphinx --builder man -mkdir -p %{buildroot}%{_mandir}/man1 -install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ - -# Setup directories -install -d -m 755 %{buildroot}%{_sharedstatedir}/cinder -install -d -m 755 %{buildroot}%{_sharedstatedir}/cinder/tmp -install -d -m 755 %{buildroot}%{_localstatedir}/log/cinder - -# Install config files -install -d -m 755 %{buildroot}%{_sysconfdir}/cinder -install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/cinder/cinder-dist.conf -install -d -m 755 %{buildroot}%{_sysconfdir}/cinder/volumes -install -p -D -m 640 etc/cinder/rootwrap.conf %{buildroot}%{_sysconfdir}/cinder/rootwrap.conf -install -p -D -m 640 etc/cinder/api-paste.ini %{buildroot}%{_sysconfdir}/cinder/api-paste.ini -install -p -D -m 640 etc/cinder/policy.json %{buildroot}%{_sysconfdir}/cinder/policy.json -install -p -D -m 640 etc/cinder/cinder.conf.sample %{buildroot}%{_sysconfdir}/cinder/cinder.conf - -# Install initscripts for services -install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/openstack-cinder-api.service -install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/openstack-cinder-scheduler.service -install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/openstack-cinder-volume.service -install -p -D -m 644 %{SOURCE13} %{buildroot}%{_unitdir}/openstack-cinder-backup.service - -# Install sudoers -install -p -D -m 440 %{SOURCE20} %{buildroot}%{_sysconfdir}/sudoers.d/cinder - -# Install pid directory -install -d -m 755 %{buildroot}%{_localstatedir}/run/cinder - -# Install rootwrap files in /usr/share/cinder/rootwrap -mkdir -p %{buildroot}%{_datarootdir}/cinder/rootwrap/ -install -p -D -m 644 etc/cinder/rootwrap.d/* %{buildroot}%{_datarootdir}/cinder/rootwrap/ - - -# Symlinks to rootwrap config files -mkdir -p %{buildroot}%{_sysconfdir}/cinder/rootwrap.d -for filter in %{_datarootdir}/os-brick/rootwrap/*.filters; do -ln -s $filter %{buildroot}%{_sysconfdir}/cinder/rootwrap.d/ -done - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*/LC_*/%{pypi_name}*po -rm -f %{buildroot}%{python2_sitelib}/%{pypi_name}/locale/*pot -mv %{buildroot}%{python2_sitelib}/%{pypi_name}/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang %{pypi_name} --all-name - -# Remove unneeded in production stuff -rm -f %{buildroot}%{_bindir}/cinder-all -rm -f %{buildroot}%{_bindir}/cinder-debug -rm -fr %{buildroot}%{python2_sitelib}/run_tests.* -rm -f %{buildroot}/usr/share/doc/cinder/README* - -# FIXME(jpena): unit tests are taking too long in the current DLRN infra -# Until we have a better architecture, let's not run them when under DLRN -%if 0%{!?dlrn} -%check -OS_TEST_PATH=./cinder/tests/unit ostestr --concurrency=2 -%endif - -# WRS: in-service restarts -install -p -D -m 700 %{SOURCE21} %{buildroot}%{_bindir}/restart-cinder - -# WRS: purge cron -install -p -D -m 755 %{SOURCE22} %{buildroot}%{_bindir}/cinder-purge-deleted-active - -%pre -getent group cinder >/dev/null || groupadd -r cinder --gid 165 -if ! getent passwd cinder >/dev/null; then - useradd -u 165 -r -g cinder -G cinder,nobody -d %{_sharedstatedir}/cinder -s /sbin/nologin -c "OpenStack Cinder Daemons" cinder -fi -exit 0 - -%post -%systemd_post openstack-cinder-volume -%systemd_post openstack-cinder-api -%systemd_post openstack-cinder-scheduler -%systemd_post openstack-cinder-backup - -%preun -%systemd_preun openstack-cinder-volume -%systemd_preun openstack-cinder-api -%systemd_preun openstack-cinder-scheduler -%systemd_preun openstack-cinder-backup - -%postun -%systemd_postun_with_restart openstack-cinder-volume -%systemd_postun_with_restart openstack-cinder-api -%systemd_postun_with_restart openstack-cinder-scheduler -%systemd_postun_with_restart openstack-cinder-backup - -%files -%dir %{_sysconfdir}/cinder -%config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/cinder.conf -%config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/api-paste.ini -%config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/rootwrap.conf -%config(noreplace) %attr(-, root, cinder) %{_sysconfdir}/cinder/policy.json -%config(noreplace) %{_sysconfdir}/sudoers.d/cinder -%{_sysconfdir}/cinder/rootwrap.d/ -%attr(-, root, cinder) %{_datadir}/cinder/cinder-dist.conf - -%dir %attr(0750, cinder, root) %{_localstatedir}/log/cinder -%dir %attr(0755, cinder, root) %{_localstatedir}/run/cinder -%dir %attr(0755, cinder, root) %{_sysconfdir}/cinder/volumes - -%{_bindir}/cinder-* -%{_unitdir}/*.service -%{_datarootdir}/cinder -%{_mandir}/man1/cinder*.1.gz - -#WRS: in-service patching -%{_bindir}/restart-cinder - -#WRS: purge cron -%{_bindir}/cinder-purge-deleted-active - -%defattr(-, cinder, cinder, -) -%dir %{_sharedstatedir}/cinder -%dir %{_sharedstatedir}/cinder/tmp - -%files -n python-cinder -f %{pypi_name}.lang -%{?!_licensedir: %global license %%doc} -%license LICENSE -%{python2_sitelib}/cinder -%{python2_sitelib}/cinder-*.egg-info -%exclude %{python2_sitelib}/cinder/tests - -%files -n python-cinder-tests -%license LICENSE -%{python2_sitelib}/cinder/tests -%{python2_sitelib}/%{service}_tests.egg-info - -%if 0%{?with_doc} -%files doc -%doc doc/build/html -%endif - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 1:11.0.0-1 -- Update to 11.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 1:11.0.0-0.2.0rc2 -- Update to 11.0.0.0rc2 - -* Tue Aug 22 2017 Alfredo Moralejo 1:11.0.0-0.1.0rc1 -- Update to 11.0.0.0rc1 - diff --git a/openstack/python-glance-store/centos/build_srpm.data b/openstack/python-glance-store/centos/build_srpm.data deleted file mode 100644 index 1ca8cb84..00000000 --- a/openstack/python-glance-store/centos/build_srpm.data +++ /dev/null @@ -1 +0,0 @@ -TIS_PATCH_VER=0 diff --git a/openstack/python-glance-store/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch b/openstack/python-glance-store/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch deleted file mode 100644 index 870670f9..00000000 --- a/openstack/python-glance-store/centos/meta_patches/0001-Update-package-versioning-for-TIS-format.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 89c5d60116569e1446c62d652d30eb0a21130193 Mon Sep 17 00:00:00 2001 -From: Daniel Badea -Date: Thu, 2 Nov 2017 18:26:56 +0200 -Subject: [PATCH 1/2] Update package versioning for TIS format - ---- - SPECS/python-glance-store.spec | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/SPECS/python-glance-store.spec b/SPECS/python-glance-store.spec -index 831aba4..387a326 100644 ---- a/SPECS/python-glance-store.spec -+++ b/SPECS/python-glance-store.spec -@@ -7,7 +7,7 @@ - - Name: python-glance-store - Version: 0.22.0 --Release: 1%{?dist} -+Release: 1%{?_tis_dist}.%{tis_patch_ver} - Summary: OpenStack Image Service Store Library - - License: ASL 2.0 --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/meta_patches/0002-meta-patch-Check-ceph-cluster-free-space.patch b/openstack/python-glance-store/centos/meta_patches/0002-meta-patch-Check-ceph-cluster-free-space.patch deleted file mode 100644 index 6742cf3a..00000000 --- a/openstack/python-glance-store/centos/meta_patches/0002-meta-patch-Check-ceph-cluster-free-space.patch +++ /dev/null @@ -1,34 +0,0 @@ -From aef63b7fcf58613c233cbe519b814f5366522299 Mon Sep 17 00:00:00 2001 -From: Daniel Badea -Date: Thu, 2 Nov 2017 18:29:54 +0200 -Subject: [PATCH 2/2] Check ceph cluster free space - ---- - SPECS/python-glance-store.spec | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/SPECS/python-glance-store.spec b/SPECS/python-glance-store.spec -index 387a326..b60bd97 100644 ---- a/SPECS/python-glance-store.spec -+++ b/SPECS/python-glance-store.spec -@@ -13,6 +13,8 @@ Summary: OpenStack Image Service Store Library - License: ASL 2.0 - URL: https://github.com/openstack/%{upstream_name} - Source0: https://tarballs.openstack.org/%{upstream_name}/%{upstream_name}-%{upstream_version}.tar.gz -+# WRS -+Patch0001: 0001-Check-ceph-cluster-free-space-before-creating-image.patch - - BuildArch: noarch - -@@ -84,6 +86,8 @@ Requires: python3-oslo-privsep >= 1.9.0 - %prep - %setup -q -n %{upstream_name}-%{upstream_version} - -+# Apply WRS patches -+%patch0001 -p1 - - %build - %py2_build --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/meta_patches/0003-meta-patch-Glance-Driver.patch b/openstack/python-glance-store/centos/meta_patches/0003-meta-patch-Glance-Driver.patch deleted file mode 100644 index ca7d22e1..00000000 --- a/openstack/python-glance-store/centos/meta_patches/0003-meta-patch-Glance-Driver.patch +++ /dev/null @@ -1,32 +0,0 @@ -From bcdcfce2587d467d756d7493f40a41167c2b68ed Mon Sep 17 00:00:00 2001 -From: Stefan Dinescu -Date: Thu, 16 Nov 2017 17:44:10 +0000 -Subject: Meta Glance Driver - ---- - SPECS/python-glance-store.spec | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/SPECS/python-glance-store.spec b/SPECS/python-glance-store.spec -index b60bd97..0c0d728 100644 ---- a/SPECS/python-glance-store.spec -+++ b/SPECS/python-glance-store.spec -@@ -15,6 +15,7 @@ URL: https://github.com/openstack/%{upstream_name} - Source0: https://tarballs.openstack.org/%{upstream_name}/%{upstream_name}-%{upstream_version}.tar.gz - # WRS - Patch0001: 0001-Check-ceph-cluster-free-space-before-creating-image.patch -+Patch0002: 0002-Add-glance-driver.patch - - BuildArch: noarch - -@@ -88,6 +89,7 @@ Requires: python3-oslo-privsep >= 1.9.0 - - # Apply WRS patches - %patch0001 -p1 -+%patch0002 -p1 - - %build - %py2_build --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/meta_patches/0004-meta-Add-glance-schedulre-greenthreads.patch b/openstack/python-glance-store/centos/meta_patches/0004-meta-Add-glance-schedulre-greenthreads.patch deleted file mode 100644 index 5302f7ac..00000000 --- a/openstack/python-glance-store/centos/meta_patches/0004-meta-Add-glance-schedulre-greenthreads.patch +++ /dev/null @@ -1,32 +0,0 @@ -From fc9b9d397b503eeff6585310d8de177b051a11e9 Mon Sep 17 00:00:00 2001 -From: Elena Taivan -Date: Wed, 6 Jun 2018 10:02:56 +0000 -Subject: [PATCH 1/1] meta Add glance schedulre greenthreads - ---- - SPECS/python-glance-store.spec | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/SPECS/python-glance-store.spec b/SPECS/python-glance-store.spec -index 0c0d728..977b2bc 100644 ---- a/SPECS/python-glance-store.spec -+++ b/SPECS/python-glance-store.spec -@@ -16,6 +16,7 @@ Source0: https://tarballs.openstack.org/%{upstream_name}/%{upstream_name} - # WRS - Patch0001: 0001-Check-ceph-cluster-free-space-before-creating-image.patch - Patch0002: 0002-Add-glance-driver.patch -+Patch0003: 0003-Add-glance-schedule-greenthreads.patch - - BuildArch: noarch - -@@ -90,6 +91,7 @@ Requires: python3-oslo-privsep >= 1.9.0 - # Apply WRS patches - %patch0001 -p1 - %patch0002 -p1 -+%patch0003 -p1 - - %build - %py2_build --- -1.8.3.1 - diff --git a/openstack/python-glance-store/centos/meta_patches/0005-Add-image-download-support-to-DC-config.patch b/openstack/python-glance-store/centos/meta_patches/0005-Add-image-download-support-to-DC-config.patch deleted file mode 100644 index c648ebf2..00000000 --- a/openstack/python-glance-store/centos/meta_patches/0005-Add-image-download-support-to-DC-config.patch +++ /dev/null @@ -1,32 +0,0 @@ -From e314323f74f4b434b812baccc444a0724abe507b Mon Sep 17 00:00:00 2001 -From: Andy Ning -Date: Thu, 14 Jun 2018 16:42:20 -0400 -Subject: [PATCH 1/1] Add image download support to DC config - ---- - SPECS/python-glance-store.spec | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/SPECS/python-glance-store.spec b/SPECS/python-glance-store.spec -index 977b2bc..54442bb 100644 ---- a/SPECS/python-glance-store.spec -+++ b/SPECS/python-glance-store.spec -@@ -17,6 +17,7 @@ Source0: https://tarballs.openstack.org/%{upstream_name}/%{upstream_name} - Patch0001: 0001-Check-ceph-cluster-free-space-before-creating-image.patch - Patch0002: 0002-Add-glance-driver.patch - Patch0003: 0003-Add-glance-schedule-greenthreads.patch -+Patch0004: 0004-Add-image-download-support-to-DC-config.patch - - BuildArch: noarch - -@@ -92,6 +93,7 @@ Requires: python3-oslo-privsep >= 1.9.0 - %patch0001 -p1 - %patch0002 -p1 - %patch0003 -p1 -+%patch0004 -p1 - - %build - %py2_build --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/meta_patches/PATCH_ORDER b/openstack/python-glance-store/centos/meta_patches/PATCH_ORDER deleted file mode 100644 index 3e5fb3c4..00000000 --- a/openstack/python-glance-store/centos/meta_patches/PATCH_ORDER +++ /dev/null @@ -1,5 +0,0 @@ -0001-Update-package-versioning-for-TIS-format.patch -0002-meta-patch-Check-ceph-cluster-free-space.patch -0003-meta-patch-Glance-Driver.patch -0004-meta-Add-glance-schedulre-greenthreads.patch -0005-Add-image-download-support-to-DC-config.patch diff --git a/openstack/python-glance-store/centos/patches/0001-Check-ceph-cluster-free-space-before-creating-image.patch b/openstack/python-glance-store/centos/patches/0001-Check-ceph-cluster-free-space-before-creating-image.patch deleted file mode 100644 index 7c261a13..00000000 --- a/openstack/python-glance-store/centos/patches/0001-Check-ceph-cluster-free-space-before-creating-image.patch +++ /dev/null @@ -1,298 +0,0 @@ -From 8dbde864bbdd4302918e91ac696b0ae95f698b36 Mon Sep 17 00:00:00 2001 -From: Daniel Badea -Date: Thu, 2 Nov 2017 21:07:24 +0200 -Subject: [PATCH] Check available ceph space before creating image - ---- - glance_store/_drivers/rbd.py | 159 +++++++++++++++++++++++++++++- - glance_store/tests/unit/test_rbd_store.py | 17 +++- - tox.ini | 2 +- - 3 files changed, 170 insertions(+), 8 deletions(-) - -diff --git a/glance_store/_drivers/rbd.py b/glance_store/_drivers/rbd.py -index 7b803bc..9895472 100644 ---- a/glance_store/_drivers/rbd.py -+++ b/glance_store/_drivers/rbd.py -@@ -18,11 +18,15 @@ - from __future__ import absolute_import - from __future__ import with_statement - -+import ast - import contextlib - import hashlib -+import json - import logging - import math - -+from oslo_concurrency import lockutils -+from oslo_concurrency import processutils - from oslo_config import cfg - from oslo_utils import units - from six.moves import urllib -@@ -46,6 +50,10 @@ DEFAULT_CONFFILE = '/etc/ceph/ceph.conf' - DEFAULT_USER = None # let librados decide based on the Ceph conf file - DEFAULT_CHUNKSIZE = 8 # in MiB - DEFAULT_SNAPNAME = 'snap' -+DEFAULT_POOL_RESERVATION_FILE = '/var/run/glance-space-reservations' -+LOCK_DIR = "/tmp" -+LOCK_PREFIX = "glance_" -+LOCK_RBD_USAGE = "rbd_cluster_usage" - - LOG = logging.getLogger(__name__) - -@@ -344,8 +352,117 @@ class Store(driver.Store): - LOG.debug(msg) - raise exceptions.NotFound(msg) - -+ def validate_available_space(self, ioctx, image_name, -+ image_size, total_space=0, -+ reserved=0, ignore=[]): -+ """ -+ Checks if there is sufficient free space in the -+ ceph cluster to put the whole image in -+ -+ :param image_size: the size of the new image -+ :param total_space: total cluster guaranteed space for images -+ :param reserved: space reserved for other uses -+ :param ignore: list of image names to ignore in space computation -+ -+ Raises exception in case not enough space is found -+ """ -+ -+ pool_name = ioctx.name -+ -+ # Get free space if there is no space guarantee (e.g. no quota set) -+ if total_space == 0: -+ cmd = ('env', 'LC_ALL=C', 'ceph', 'df', -+ '--format', 'json') -+ out, err = processutils.execute(*cmd) -+ ceph_df_pools = json.loads(out).get('pools', []) -+ for pool in ceph_df_pools: -+ if pool_name == pool.get("name", "") and 'stats' in pool: -+ # Leave space to avoid cluster filling up as some -+ # other processes can write at the same time we import -+ # our image. -+ total_space = pool['stats'].get("max_avail", 0) * 0.99 -+ break -+ else: -+ msg = ("Query of max available space in %(pool) failed." -+ "cmd: %(cmd)s, stdout: %(stdout)s, " -+ "stderr: %(stderr)s" % -+ {"pool": pool_name, "cmd": cmd, -+ "stdout": out, "stderr": err}) -+ LOG.error(msg) -+ raise exceptions.GlanceStoreException(message=msg) -+ -+ # Get used space by all images in pool -+ # NOTE: There is no librbd python API for getting real space usage -+ cmd = ('env', 'LC_ALL=C', 'rbd', 'du', '-p', pool_name, -+ '--format', 'json') -+ out, err = processutils.execute(*cmd, check_exit_code=[0, 2]) -+ if out: -+ image_list = json.loads(out).get("images", []) -+ else: -+ image_list = [] -+ -+ # Compute occupied space -+ # NOTE: RBD images can be sparse, in this case real disk usage is -+ # lower than provisioned. All glance images real size equals -+ # provisioned space while raw cache are sparse. Moreover, delta -+ # between RAW caching provisioned and real sizes usually is high. -+ # For e.g. a CentOS cloud image that uses approx. 900MB of real -+ # space yet provisions for 8GB. Therefore, we want the real usage -+ # not waste space with provisions that are never going to be used. -+ occupied_space = 0 -+ image_id = "" -+ for image in image_list: -+ image_id = image.get("name", "") -+ # Process ignores -+ for img in ignore: -+ if img == image_id: -+ continue -+ # Sanitize input -+ if "used_size" not in image or "provisioned_size" not in image: -+ LOG.error("Image disk usage query failure for " -+ "image: %(id)s. cmd: %(cmd)s, " -+ "stdout: %(stdout)s, stderr: %(stderr)s" % -+ {"id": image_id, "cmd": cmd, -+ "stdout": out, "stderr": err}) -+ # Get image usage -+ if "_raw" in image_id: -+ if image.get("snapshot", None) != "snap": -+ # Each image is listed twice, after import, only snapshots -+ # display 'used_size' correctly -+ continue -+ # Get raw cached images real used space -+ size = image["used_size"] -+ else: -+ if image.get("snapshot", None) == "snap": -+ # Before import, there is no snapshot and we also need -+ # reserved space during glance image creation -+ continue -+ # Get glance images provisioned space -+ size = image["provisioned_size"] -+ occupied_space += size -+ LOG.debug("Image %(id)s used RBD space is: %(used_size)s" % -+ {"id": image_id, "used_size": image_size}) -+ -+ # Verify if there is enough space to proceed -+ data = {"image": image_id, -+ "pool": pool_name, -+ "used": occupied_space // 2 ** 20, -+ "needed": image_size // 2 ** 20, -+ "available": (total_space - occupied_space) // 2 ** 20, -+ "reserved": reserved // 2 ** 20} -+ LOG.info("Requesting %(needed)s MB for image %(image)s in " -+ "Ceph %(pool)s pool. Used: %(used)s MB. Available: " -+ "%(available)s MB (where %(reserved)s reserved)" % data) -+ if (total_space and image_size and -+ occupied_space + image_size + reserved > total_space): -+ msg = (_('Not enough cluster free space for image %s.') % -+ image_name) -+ LOG.error(msg) -+ raise exceptions.StorageFull(message=msg) -+ -+ @lockutils.synchronized(LOCK_RBD_USAGE, LOCK_PREFIX, True, LOCK_DIR) - def _create_image(self, fsid, conn, ioctx, image_name, -- size, order, context=None): -+ size, order, total_available_space, context=None): - """ - Create an rbd image. If librbd supports it, - make it a cloneable snapshot, so that copy-on-write -@@ -356,6 +473,34 @@ class Store(driver.Store): - :retval: `glance_store.rbd.StoreLocation` object - """ - librbd = rbd.RBD() -+ -+ # Get space reserved by RAW Caching feature -+ # NOTE: Real space is updated on the fly while an image is added to -+ # RBD (i.e. with 'rbd import') so we will know how big an image is -+ # only after its imported. Also, due to sparse mode provisioned RBD -+ # space is higher than real usage. Therefore we need to get a better -+ # value closer to what we will have as real usage in RBD, and this -+ # has to come from raw caching itself. -+ try: -+ out = None -+ with open(DEFAULT_POOL_RESERVATION_FILE, "r") as f: -+ out = f.read() -+ data = ast.literal_eval(out) -+ reserved = data.get("reserved", 0) -+ img_under_caching = ([data["image_id"]] if -+ "image_id" in data else []) -+ except IOError: -+ # In case reservation file does not exist -+ reserved, img_under_caching = (0, []) -+ except Exception: -+ # In case of any other error ignore reservations -+ LOG.error("Failed parsing: %s" % out) -+ reserved, img_under_caching = (0, []) -+ -+ self.validate_available_space( -+ ioctx, image_name, size, total_available_space, -+ reserved, img_under_caching) -+ - features = conn.conf_get('rbd_default_features') - if ((features is None) or (int(features) == 0)): - features = rbd.RBD_FEATURE_LAYERING -@@ -464,9 +609,19 @@ class Store(driver.Store): - "resize-before-write for each chunk which " - "will be considerably slower than normal")) - -+ ceph_quota_output = json.loads( -+ conn.mon_command( -+ json.dumps({ -+ "prefix": "osd pool get-quota", -+ "pool": self.pool, -+ "format": "json-pretty"}), "")[1]) -+ -+ glance_ceph_quota = ceph_quota_output.get("quota_max_bytes", 0) -+ - try: - loc = self._create_image(fsid, conn, ioctx, image_name, -- image_size, order) -+ image_size, order, -+ glance_ceph_quota) - except rbd.ImageExists: - msg = _('RBD image %s already exists') % image_id - raise exceptions.Duplicate(message=msg) -diff --git a/glance_store/tests/unit/test_rbd_store.py b/glance_store/tests/unit/test_rbd_store.py -index 9765aa3..34ab7b4 100644 ---- a/glance_store/tests/unit/test_rbd_store.py -+++ b/glance_store/tests/unit/test_rbd_store.py -@@ -69,6 +69,9 @@ class MockRados(object): - def conf_get(self, *args, **kwargs): - pass - -+ def mon_command(self, *args, **kwargs): -+ return ["{}", "{}"] -+ - - class MockRBD(object): - -@@ -152,7 +155,7 @@ class MockRBD(object): - pass - - def list(self, *args, **kwargs): -- raise NotImplementedError() -+ return [] - - def clone(self, *args, **kwargs): - raise NotImplementedError() -@@ -184,7 +187,8 @@ class TestStore(base.StoreBaseTest, - self.data_len = 3 * units.Ki - self.data_iter = six.BytesIO(b'*' * self.data_len) - -- def test_add_w_image_size_zero(self): -+ @mock.patch.object(rbd_store.Store, 'validate_available_space') -+ def test_add_w_image_size_zero(self, validate_available_space): - """Assert that correct size is returned even though 0 was provided.""" - self.store.chunk_size = units.Ki - with mock.patch.object(rbd_store.rbd.Image, 'resize') as resize: -@@ -234,7 +238,8 @@ class TestStore(base.StoreBaseTest, - 'fake_image_id', self.data_iter, self.data_len) - self.called_commands_expected = ['create'] - -- def test_add_with_verifier(self): -+ @mock.patch.object(rbd_store.Store, 'validate_available_space') -+ def test_add_with_verifier(self, validate_available_space): - """Assert 'verifier.update' is called when verifier is provided.""" - self.store.chunk_size = units.Ki - verifier = mock.MagicMock(name='mock_verifier') -@@ -403,7 +408,8 @@ class TestStore(base.StoreBaseTest, - pass - self.assertRaises(exceptions.BackendException, test) - -- def test_create_image_conf_features(self): -+ @mock.patch.object(rbd_store.Store, 'validate_available_space') -+ def test_create_image_conf_features(self, validate_available_space): - # Tests that we use non-0 features from ceph.conf and cast to int. - fsid = 'fake' - features = '3' -@@ -413,9 +419,10 @@ class TestStore(base.StoreBaseTest, - name = '1' - size = 1024 - order = 3 -+ ceph_size = 0 - with mock.patch.object(rbd_store.rbd.RBD, 'create') as create_mock: - location = self.store._create_image( -- fsid, conn, ioctxt, name, size, order) -+ fsid, conn, ioctxt, name, size, order, ceph_size) - self.assertEqual(fsid, location.specs['fsid']) - self.assertEqual(rbd_store.DEFAULT_POOL, location.specs['pool']) - self.assertEqual(name, location.specs['image']) -diff --git a/tox.ini b/tox.ini -index 2e5a2f8..426c024 100644 ---- a/tox.ini -+++ b/tox.ini -@@ -27,7 +27,7 @@ commands = - # B101 - Use of assert detected. - # B110 - Try, Except, Pass detected. - # B303 - Use of insecure MD2, MD4, or MD5 hash function. -- bandit -r glance_store -x tests --skip B101,B110,B303 -+ bandit -r glance_store -x tests --skip B101,B110,B303,B108 - - [testenv:bandit] - # NOTE(browne): This is required for the integration test job of the bandit --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/patches/0002-Add-glance-driver.patch b/openstack/python-glance-store/centos/patches/0002-Add-glance-driver.patch deleted file mode 100644 index 5382f134..00000000 --- a/openstack/python-glance-store/centos/patches/0002-Add-glance-driver.patch +++ /dev/null @@ -1,250 +0,0 @@ -From 6da11c584cab0e2ff396cc0208453a3e19b4dc2d Mon Sep 17 00:00:00 2001 -From: Stefan Dinescu -Date: Fri, 17 Nov 2017 15:50:23 +0000 -Subject: [PATCH 1/1] Add glance driver - ---- - glance_store/_drivers/glance.py | 210 ++++++++++++++++++++++++++++++++++++++++ - setup.cfg | 2 + - 2 files changed, 212 insertions(+) - create mode 100644 glance_store/_drivers/glance.py - -diff --git a/glance_store/_drivers/glance.py b/glance_store/_drivers/glance.py -new file mode 100644 -index 0000000..554a5a1 ---- /dev/null -+++ b/glance_store/_drivers/glance.py -@@ -0,0 +1,210 @@ -+# Copyright (c) 2013-2017 Wind River Systems, Inc. -+# SPDX-License-Identifier: Apache-2.0 -+# -+# -+# -+# -+ -+# vim: tabstop=4 shiftwidth=4 softtabstop=4 -+ -+# All Rights Reserved. -+# -+ -+"""Storage backend for glance""" -+ -+import contextlib -+import errno -+import hashlib -+import logging -+import math -+import os -+import socket -+import time -+ -+from oslo_concurrency import processutils -+from oslo_config import cfg -+from oslo_utils import units -+ -+from glance_store import capabilities -+from glance_store.common import utils -+import glance_store.driver -+from glance_store import exceptions -+from glance_store.i18n import _, _LE, _LW, _LI -+import glance_store.location -+from keystoneclient import exceptions as keystone_exc -+from keystoneclient import service_catalog as keystone_sc -+ -+import keystoneauth1.loading -+import keystoneauth1.session -+ -+from glanceclient import client as glance_client -+from cinderclient import exceptions as glance_exception -+ -+CONF = cfg.CONF -+LOG = logging.getLogger(__name__) -+ -+_GLANCE_OPTS = [ -+ cfg.StrOpt('glance_endpoint_template', -+ default=None, -+ help=_("Glance Endpoint template")), -+ cfg.StrOpt('glance_catalog_info', -+ default='image:glance:internalURL', -+ help=_("Glance catalog info")),] -+ -+def get_glanceclient(conf, remote_region, context=None): -+ -+ glance_store = conf.glance_store -+ -+ if glance_store.cinder_endpoint_template: -+ url = glance_store.glance_endpoint_template % context.to_dict() -+ else: -+ info = glance_store.glance_catalog_info -+ service_type, service_name, endpoint_type = info.split(':') -+ sc = {'serviceCatalog': context.service_catalog} -+ try: -+ url = keystone_sc.ServiceCatalogV2(sc).url_for( -+ region_name=remote_region, -+ service_type=service_type, -+ service_name=service_name, -+ endpoint_type=endpoint_type) -+ except keystone_exc.EndpointNotFound: -+ reason = _("Failed to find Glance from a service catalog.") -+ raise exceptions.BadStoreConfiguration(store_name="glance", -+ reason=reason) -+ -+ c = glance_client.Client('2', -+ endpoint=url, -+ token=context.auth_token) -+ -+ return c -+ -+ -+class StoreLocation(glance_store.location.StoreLocation): -+ -+ """Class describing a Glance URI.""" -+ -+ def process_specs(self): -+ self.scheme = self.specs.get('scheme', 'glance') -+ self.image_id = self.specs.get('image_id') -+ self.remote_region = self.specs.get('remote_region') -+ -+ def get_uri(self): -+ return "glance://%s/%s" % (self.remote_region, self.image_id) -+ -+ def parse_uri(self, uri): -+ -+ if not uri.startswith('glance://'): -+ reason = _("URI must start with 'glance://'") -+ LOG.info(reason) -+ raise exceptions.BadStoreUri(message=reason) -+ -+ self.scheme = 'glance' -+ -+ sp = uri.split('/') -+ -+ self.image_id = sp[-1] -+ self.remote_region=sp[-2] -+ -+ if not utils.is_uuid_like(self.image_id): -+ reason = _("URI contains invalid image ID") -+ LOG.info(reason) -+ raise exceptions.BadStoreUri(message=reason) -+ -+ -+ -+class Store(glance_store.driver.Store): -+ -+ """Cinder backend store adapter.""" -+ -+ _CAPABILITIES = (capabilities.BitMasks.READ_ACCESS | -+ capabilities.BitMasks.DRIVER_REUSABLE) -+ OPTIONS = _GLANCE_OPTS -+ EXAMPLE_URL = "glance:///" -+ -+ def __init__(self, *args, **kargs): -+ super(Store, self).__init__(*args, **kargs) -+ -+ def get_schemes(self): -+ return ('glance',) -+ -+ def _check_context(self, context, require_tenant=False): -+ -+ if context is None: -+ reason = _("Glance storage requires a context.") -+ raise exceptions.BadStoreConfiguration(store_name="glance", -+ reason=reason) -+ if context.service_catalog is None: -+ reason = _("glance storage requires a service catalog.") -+ raise exceptions.BadStoreConfiguration(store_name="glance", -+ reason=reason) -+ -+ -+ @capabilities.check -+ def get(self, location, offset=0, chunk_size=None, context=None): -+ """ -+ Takes a `glance_store.location.Location` object that indicates -+ where to find the image file, and returns a tuple of generator -+ (for reading the image file) and image_size -+ -+ :param location `glance_store.location.Location` object, supplied -+ from glance_store.location.get_location_from_uri() -+ :param offset: offset to start reading -+ :param chunk_size: size to read, or None to get all the image -+ :param context: Request context -+ :raises `glance_store.exceptions.NotFound` if image does not exist -+ """ -+ -+ loc = location.store_location -+ self._check_context(context) -+ -+ try: -+ gc = get_glanceclient(self.conf, loc.remote_region, context) -+ img = gc.images.get(loc.image_id) -+ -+ size = int(img.size/(1024*1024)) -+ iterator = gc.images.data(loc.image_id) -+ return (iterator, chunk_size or size) -+ except glance_exception.NotFound: -+ reason = _("Failed to get image size due to " -+ "volume can not be found: %s") % volume.id -+ LOG.error(reason) -+ raise exceptions.NotFound(reason) -+ except glance_exception.ClientException as e: -+ msg = (_('Failed to get image volume %(volume_id): %(error)s') -+ % {'volume_id': loc.volume_id, 'error': e}) -+ LOG.error(msg) -+ raise exceptions.BackendException(msg) -+ -+ def get_size(self, location, context=None): -+ """ -+ Takes a `glance_store.location.Location` object that indicates -+ where to find the image file and returns the image size -+ -+ :param location: `glance_store.location.Location` object, supplied -+ from glance_store.location.get_location_from_uri() -+ :raises: `glance_store.exceptions.NotFound` if image does not exist -+ :rtype int -+ """ -+ -+ loc = location.store_location -+ -+ try: -+ self._check_context(context) -+ img = get_glanceclient(self.conf, -+ context).images.get(loc.image_id) -+ return int(img.size/1024 * 1024) -+ except glance_exception.NotFound: -+ raise exceptions.NotFound(image=loc.image_id) -+ except Exception: -+ LOG.exception(_LE("Failed to get image size due to " -+ "internal error.")) -+ return 0 -+ -+ @capabilities.check -+ def add(self, image_id, image_file, image_size, context=None, -+ verifier=None): -+ raise NotImplementedError -+ -+ @capabilities.check -+ def delete(self, location, context=None): -+ raise NotImplementedError -diff --git a/setup.cfg b/setup.cfg -index b3054c4..8cc9fb7 100644 ---- a/setup.cfg -+++ b/setup.cfg -@@ -32,6 +32,7 @@ glance_store.drivers = - sheepdog = glance_store._drivers.sheepdog:Store - cinder = glance_store._drivers.cinder:Store - vmware = glance_store._drivers.vmware_datastore:Store -+ glance = glance_store._drivers.glance:Store - # TESTS ONLY - no_conf = glance_store.tests.fakes:UnconfigurableStore - # Backwards compatibility -@@ -42,6 +43,7 @@ glance_store.drivers = - glance.store.sheepdog.Store = glance_store._drivers.sheepdog:Store - glance.store.cinder.Store = glance_store._drivers.cinder:Store - glance.store.vmware_datastore.Store = glance_store._drivers.vmware_datastore:Store -+ glance.store.glance.Store = glance_store._drivers.glance:Store - oslo.config.opts = - glance.store = glance_store.backend:_list_opts - console_scripts = --- -1.8.3.1 - diff --git a/openstack/python-glance-store/centos/patches/0003-Add-glance-schedule-greenthreads.patch b/openstack/python-glance-store/centos/patches/0003-Add-glance-schedule-greenthreads.patch deleted file mode 100644 index 8d443e48..00000000 --- a/openstack/python-glance-store/centos/patches/0003-Add-glance-schedule-greenthreads.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 71f9d9555e0909cbc878d8852cd2c2243abd0b1c Mon Sep 17 00:00:00 2001 -From: Elena Taivan -Date: Wed, 6 Jun 2018 09:41:42 +0000 -Subject: [PATCH 1/1] Add glance schedule greenthreads - ---- - glance_store/_drivers/filesystem.py | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/glance_store/_drivers/filesystem.py b/glance_store/_drivers/filesystem.py -index 5de011d..4a26d10 100644 ---- a/glance_store/_drivers/filesystem.py -+++ b/glance_store/_drivers/filesystem.py -@@ -23,6 +23,7 @@ import hashlib - import logging - import os - import stat -+import time - - import jsonschema - from oslo_config import cfg -@@ -685,6 +686,8 @@ class Store(glance_store.driver.Store): - if verifier: - verifier.update(buf) - f.write(buf) -+ # Give other greenthreads a chance to schedule. -+ time.sleep(0) - except IOError as e: - if e.errno != errno.EACCES: - self._delete_partial(filepath, image_id) --- -1.8.3.1 - diff --git a/openstack/python-glance-store/centos/patches/0004-Add-image-download-support-to-DC-config.patch b/openstack/python-glance-store/centos/patches/0004-Add-image-download-support-to-DC-config.patch deleted file mode 100644 index c03c5313..00000000 --- a/openstack/python-glance-store/centos/patches/0004-Add-image-download-support-to-DC-config.patch +++ /dev/null @@ -1,73 +0,0 @@ -From 7448d61cc5dfa9c658a739cbb2dae678971a347b Mon Sep 17 00:00:00 2001 -From: Andy Ning -Date: Thu, 14 Jun 2018 16:35:44 -0400 -Subject: [PATCH 1/1] Add image download support to DC config - ---- - glance_store/_drivers/glance.py | 36 ++++++++++++++++++++++++++++++++++-- - 1 file changed, 34 insertions(+), 2 deletions(-) - -diff --git a/glance_store/_drivers/glance.py b/glance_store/_drivers/glance.py -index 554a5a1..70f3e65 100644 ---- a/glance_store/_drivers/glance.py -+++ b/glance_store/_drivers/glance.py -@@ -34,13 +34,23 @@ import glance_store.location - from keystoneclient import exceptions as keystone_exc - from keystoneclient import service_catalog as keystone_sc - --import keystoneauth1.loading --import keystoneauth1.session -+import keystoneauth1.loading as loading -+import keystoneauth1.session as session - - from glanceclient import client as glance_client -+from glanceclient import Client - from cinderclient import exceptions as glance_exception - - CONF = cfg.CONF -+_registry_client = 'glance.registry.client' -+CONF.import_opt('use_user_token', _registry_client) -+CONF.import_opt('admin_user', _registry_client) -+CONF.import_opt('admin_password', _registry_client) -+CONF.import_opt('admin_tenant_name', _registry_client) -+CONF.import_opt('auth_url', _registry_client) -+CONF.import_opt('auth_strategy', _registry_client) -+CONF.import_opt('auth_region', _registry_client) -+ - LOG = logging.getLogger(__name__) - - _GLANCE_OPTS = [ -@@ -51,8 +61,30 @@ _GLANCE_OPTS = [ - default='image:glance:internalURL', - help=_("Glance catalog info")),] - -+def get_glanceclient_dc(): -+ -+ loader = loading.get_plugin_loader('password') -+ auth = loader.load_from_options( -+ auth_url=CONF.auth_url, -+ username=CONF.admin_user, -+ password=CONF.admin_password, -+ user_domain_id='default', -+ project_name=CONF.admin_tenant_name, -+ project_domain_id='default') -+ auth_session = session.Session(auth=auth) -+ c = Client('2', session=auth_session) -+ -+ return c -+ -+ - def get_glanceclient(conf, remote_region, context=None): - -+ # In DC config, need to authentication against central region -+ # keystone. -+ if not CONF.use_user_token: -+ c = get_glanceclient_dc() -+ return c -+ - glance_store = conf.glance_store - - if glance_store.cinder_endpoint_template: --- -2.7.4 - diff --git a/openstack/python-glance-store/centos/srpm_path b/openstack/python-glance-store/centos/srpm_path deleted file mode 100644 index 62249bea..00000000 --- a/openstack/python-glance-store/centos/srpm_path +++ /dev/null @@ -1 +0,0 @@ -mirror:Source/python-glance-store-0.22.0-1.el7.src.rpm diff --git a/openstack/python-glance/centos/build_srpm.data b/openstack/python-glance/centos/build_srpm.data deleted file mode 100644 index 359d02d8..00000000 --- a/openstack/python-glance/centos/build_srpm.data +++ /dev/null @@ -1,4 +0,0 @@ -SRC_DIR="$CGCS_BASE/git/glance" -COPY_LIST="$FILES_BASE/*" -TIS_BASE_SRCREV=06af2eb5abe0332f7035a7d7c2fbfd19fbc4dae7 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-glance/centos/files/glance-api-dist.conf b/openstack/python-glance/centos/files/glance-api-dist.conf deleted file mode 100644 index fced82ff..00000000 --- a/openstack/python-glance/centos/files/glance-api-dist.conf +++ /dev/null @@ -1,20 +0,0 @@ -[DEFAULT] -debug = False -verbose = True -use_stderr = False -log_file = /var/log/glance/api.log -filesystem_store_datadir = /var/lib/glance/images/ -scrubber_datadir = /var/lib/glance/scrubber -image_cache_dir = /var/lib/glance/image-cache/ - -[database] -connection = mysql://glance:glance@localhost/glance - -[keystone_authtoken] -auth_host = 127.0.0.1 -auth_port = 35357 -auth_protocol = http - -[paste_deploy] -config_file = /usr/share/glance/glance-api-dist-paste.ini - diff --git a/openstack/python-glance/centos/files/glance-cache-dist.conf b/openstack/python-glance/centos/files/glance-cache-dist.conf deleted file mode 100644 index 0daf5248..00000000 --- a/openstack/python-glance/centos/files/glance-cache-dist.conf +++ /dev/null @@ -1,5 +0,0 @@ -[DEFAULT] -debug = False -verbose = True -log_file = /var/log/glance/image-cache.log -image_cache_dir = /var/lib/glance/image-cache/ diff --git a/openstack/python-glance/centos/files/glance-purge-deleted-active b/openstack/python-glance/centos/files/glance-purge-deleted-active deleted file mode 100644 index 2c86c0d0..00000000 --- a/openstack/python-glance/centos/files/glance-purge-deleted-active +++ /dev/null @@ -1,63 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run glance-manage to purge soft deleted rows on active controller only -# -GLANCE_PURGE_INFO="/var/run/glance-purge.info" -GLANCE_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/glance-manage db purge --age_in_days 1 --max_rows 1000000 >> /dev/null 2>&1" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${GLANCE_PURGE_INFO} ] - then - echo delay_count=0 > ${GLANCE_PURGE_INFO} - fi - - source ${GLANCE_PURGE_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - # Purge soft deleted records that are older than 1 day from glance database. - sh -c "exec taskset -c $idle_core ${GLANCE_PURGE_CMD}" - sed -i "/delay_count/s/=.*/=0/" ${GLANCE_PURGE_INFO} - exit 0 - fi - fi - - if [ "$delay_count" -lt "3" ] - then - newval=$(($delay_count+1)) - sed -i "/delay_count/s/=.*/=$newval/" ${GLANCE_PURGE_INFO} - (sleep 3600; /usr/bin/glance-purge-deleted-active) & - exit 0 - fi - fi - - # Purge soft deleted records that are older than 1 day from glance database. - eval ${GLANCE_PURGE_CMD} - sed -i "/delay_count/s/=.*/=0/" ${GLANCE_PURGE_INFO} -fi - -exit 0 diff --git a/openstack/python-glance/centos/files/glance-registry-dist.conf b/openstack/python-glance/centos/files/glance-registry-dist.conf deleted file mode 100644 index baed0a54..00000000 --- a/openstack/python-glance/centos/files/glance-registry-dist.conf +++ /dev/null @@ -1,20 +0,0 @@ -[DEFAULT] -debug = False -verbose = True -use_stderr = False -log_file = /var/log/glance/registry.log - -[database] -connection = mysql://glance:glance@localhost/glance - -[keystone_authtoken] -admin_tenant_name = %SERVICE_TENANT_NAME% -admin_user = %SERVICE_USER% -admin_password = %SERVICE_PASSWORD% -auth_host = 127.0.0.1 -auth_port = 35357 -auth_protocol = http - -[paste_deploy] -config_file = /usr/share/glance/glance-registry-dist-paste.ini - diff --git a/openstack/python-glance/centos/files/glance-scrubber-dist.conf b/openstack/python-glance/centos/files/glance-scrubber-dist.conf deleted file mode 100644 index 9e16edef..00000000 --- a/openstack/python-glance/centos/files/glance-scrubber-dist.conf +++ /dev/null @@ -1,6 +0,0 @@ -[DEFAULT] -debug = False -verbose = True -log_file = /var/log/glance/scrubber.log -scrubber_datadir = /var/lib/glance/scrubber - diff --git a/openstack/python-glance/centos/files/glance-sudoers b/openstack/python-glance/centos/files/glance-sudoers deleted file mode 100644 index ebb61440..00000000 --- a/openstack/python-glance/centos/files/glance-sudoers +++ /dev/null @@ -1,3 +0,0 @@ -Defaults:glance !requiretty - -glance ALL = (root) NOPASSWD: /usr/bin/glance-rootwrap /etc/glance/rootwrap.conf * diff --git a/openstack/python-glance/centos/files/glance-swift.conf b/openstack/python-glance/centos/files/glance-swift.conf deleted file mode 100644 index 3c7e1d3b..00000000 --- a/openstack/python-glance/centos/files/glance-swift.conf +++ /dev/null @@ -1,25 +0,0 @@ -# glance-swift.conf.sample -# -# This file is an example config file when -# multiple swift accounts/backing stores are enabled. -# -# Specify the reference name in [] -# For each section, specify the auth_address, user and key. -# -# WARNING: -# * If any of auth_address, user or key is not specified, -# the glance-api's swift store will fail to configure -# -# [ref1] -# user = tenant:user1 -# key = key1 -# auth_version = 2 -# auth_address = http://localhost:5000/v2.0 -# -# [ref2] -# user = project_name:user_name2 -# key = key2 -# user_domain_id = default -# project_domain_id = default -# auth_version = 3 -# auth_address = http://localhost:5000/v3 diff --git a/openstack/python-glance/centos/files/openstack-glance-api.service b/openstack/python-glance/centos/files/openstack-glance-api.service deleted file mode 100644 index e4f22d30..00000000 --- a/openstack/python-glance/centos/files/openstack-glance-api.service +++ /dev/null @@ -1,19 +0,0 @@ -[Unit] -Description=OpenStack Image Service (code-named Glance) API server -After=syslog.target network.target - -[Service] -LimitNOFILE=131072 -LimitNPROC=131072 -Type=simple -# WRS - use root user -#User=glance -User=root -ExecStart=/usr/bin/glance-api -PrivateTmp=true -# WRS - managed by sm -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-glance/centos/files/openstack-glance-registry.service b/openstack/python-glance/centos/files/openstack-glance-registry.service deleted file mode 100644 index f1fdd3e6..00000000 --- a/openstack/python-glance/centos/files/openstack-glance-registry.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=OpenStack Image Service (code-named Glance) Registry server -After=syslog.target network.target - -[Service] -Type=simple -# WRS - use root user -#User=glance -User=root -ExecStart=/usr/bin/glance-registry -PrivateTmp=true -# WRS - managed by sm -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-glance/centos/files/openstack-glance-scrubber.service b/openstack/python-glance/centos/files/openstack-glance-scrubber.service deleted file mode 100644 index 972c7d38..00000000 --- a/openstack/python-glance/centos/files/openstack-glance-scrubber.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=OpenStack Image Service deferred image deletion service -After=syslog.target network.target - -[Service] -Type=simple -# WRS - use root user -#User=glance -User=root -ExecStart=/usr/bin/glance-scrubber -PrivateTmp=true -# WRS - Not currently used - would be managed by sm -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-glance/centos/files/openstack-glance.logrotate b/openstack/python-glance/centos/files/openstack-glance.logrotate deleted file mode 100644 index 0a0900e4..00000000 --- a/openstack/python-glance/centos/files/openstack-glance.logrotate +++ /dev/null @@ -1,8 +0,0 @@ -/var/log/glance/*.log { - weekly - rotate 14 - size 10M - missingok - compress - minsize 100k -} diff --git a/openstack/python-glance/centos/files/restart-glance b/openstack/python-glance/centos/files/restart-glance deleted file mode 100644 index 167f8875..00000000 --- a/openstack/python-glance/centos/files/restart-glance +++ /dev/null @@ -1,150 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2016 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# - -# -# The patching subsystem provides a patch-functions bash source file -# with useful function and variable definitions. -# -. /etc/patching/patch-functions - -# -# We can now check to see what type of node we're on, if it's locked, etc, -# and act accordingly -# - -# -# Declare an overall script return code -# -declare -i GLOBAL_RC=$PATCH_STATUS_OK - -# -# Handle restarting Glance services -# - -# Syntax:(" "\) -SERVICES=("glance-api 30 kill"\ - "glance-registry 30 kill") -# where: -# = name of executable file reported by ps -# = how much to wait for the process to gracefully shutdown -# = either 'kill' the process with SIGKILL or 'leave' it running -# the idea is to avoid leaving behind processes that are degraded, better have -# new ones re-spawned - - -function get_pid { - local service=$1 - PID=$(cat /var/run/resource-agents/$service.pid) - echo "$PID" -} - -if is_controller -then - # Glance services only run on the controller - - if [ ! -f $PATCH_FLAGDIR/glance.restarted ] - then - touch $PATCH_FLAGDIR/glance.restarted - for s in "${SERVICES[@]}"; do - set -- $s - service="$1" - timeout="$2" - after_timeout="$3" - new_process="false" - - # Check SM to see if Horizon is running - sm-query service $service | grep -q 'enabled-active' - if [ $? -eq 0 ] - then - loginfo "$0: Restarting $service" - - # Get PID - PID=$(get_pid $service) - - # Send restart signal to process - kill -s USR1 $PID - - # Wait up to $timeout seconds for service to gracefully recover - let -i UNTIL=$SECONDS+$timeout - while [ $UNTIL -ge $SECONDS ] - do - # Check to see if we have a new process - NEW_PID=$(get_pid $service) - if [[ "$PID" != "$NEW_PID" ]] - then - new_process="true" - break - fi - - # Still old process? Let's wait 5 seconds and check again - sleep 5 - done - - # Do a hard restart of the process if we still have the old one - NEW_PID=$(get_pid $service) - if [[ "$PID" == "$NEW_PID" ]] - then - # we have the old process still running! - if [[ "$after_timeout" == "kill" ]] - then - loginfo "$0: Old process of $service failed to gracefully terminate in $timeout, killing it!" - # kill the old process - kill -s KILL -- -$PID - # wait for a new process to be restarted by sm - let -i UNTIL=$SECONDS+10 - while [ $UNTIL -ge $SECONDS ] - do - # Check to see if we have a new process - NEW_PID=$(get_pid $service) - if [[ ! -z "$NEW_PID" ]] && [[ "$PID" != "$NEW_PID" ]] - then - loginfo "$0: New process of $service started" - new_process="true" - break - fi - done - fi - fi - - # Wait for the new process to complete initialisation - if [[ "$new_process" == "true" ]] - then - let -i UNTIL=$SECONDS+20 - while [ $UNTIL -ge $SECONDS ] - do - # Note: Services are restarted by sm which runs the ocf start script. - # Sm reports enabled-active only *after* those scripts return success - sm-query service $service | grep -q 'enabled-active' - if [ $? -eq 0 ] - then - loginfo "$0: New process of $service started correctly" - break - fi - sleep 1 - done - fi - - sm-query service $service | grep -q 'enabled-active' - if [ $? -ne 0 ] - then - # Still not running! Clear the flag and mark the RC as failed - loginfo "$0: Failed to restart $service" - rm -f $PATCH_FLAGDIR/$service.restarted - GLOBAL_RC=$PATCH_STATUS_FAILED - sm-query service $service - break - # Note: break if any process in the SERVICES list fails - fi - fi - done - fi -fi -# -# Exit the script with the overall return code -# -exit $GLOBAL_RC - diff --git a/openstack/python-glance/centos/openstack-glance.spec b/openstack/python-glance/centos/openstack-glance.spec deleted file mode 100644 index 0b9a8f90..00000000 --- a/openstack/python-glance/centos/openstack-glance.spec +++ /dev/null @@ -1,421 +0,0 @@ -%global service glance - -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} - -# WRS: remove docs - for now -%global with_doc 0 - -%global common_desc \ -OpenStack Image Service (code-named Glance) provides discovery, registration, \ -and delivery services for virtual disk images. The Image Service API server \ -provides a standard REST interface for querying information about virtual disk \ -images stored in a variety of back-end stores, including OpenStack Object \ -Storage. Clients can register new virtual disk images with the Image Service, \ -query for information on publicly available disk images, and use the Image \ -Service's client library for streaming virtual disk images. - -Name: openstack-glance -# Liberty semver reset -# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z -Epoch: 1 -Version: 15.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Image Service - -License: ASL 2.0 -URL: http://glance.openstack.org -Source0: https://tarballs.openstack.org/%{service}/%{service}-%{upstream_version}.tar.gz - -# - -Source001: openstack-glance-api.service -Source003: openstack-glance-registry.service -Source004: openstack-glance-scrubber.service -Source010: openstack-glance.logrotate - -Source021: glance-api-dist.conf -Source022: glance-cache-dist.conf -Source024: glance-registry-dist.conf -Source025: glance-scrubber-dist.conf -Source026: glance-swift.conf - -Source030: glance-sudoers -Source031: restart-glance -Source032: glance-purge-deleted-active - -BuildArch: noarch - -BuildRequires: git -BuildRequires: python2-devel -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-pbr -BuildRequires: intltool -# Required for config generation -BuildRequires: openstack-macros -BuildRequires: python-alembic -BuildRequires: python-cursive -BuildRequires: python-crypto -BuildRequires: python-eventlet -BuildRequires: python-futurist -BuildRequires: python-glance-store >= 0.21.0 -BuildRequires: python-httplib2 -BuildRequires: python-oslo-config >= 2:4.0.0 -BuildRequires: python-oslo-log -BuildRequires: python-oslo-middleware >= 3.27.0 -BuildRequires: python-oslo-policy >= 1.23.0 -BuildRequires: python-oslo-utils >= 3.20.0 -BuildRequires: python-osprofiler -BuildRequires: python-paste-deploy -BuildRequires: python-requests -BuildRequires: python-routes -BuildRequires: python-oslo-messaging >= 5.24.2 -BuildRequires: python-taskflow >= 2.7.0 -BuildRequires: python-wsme >= 0.8 - -Requires(pre): shadow-utils -Requires: python-glance = %{epoch}:%{version}-%{release} -Requires: python-glanceclient >= 1:2.8.0 - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -BuildRequires: systemd -BuildRequires: systemd-devel -BuildRequires: python-psutil -BuildRequires: python-mock - -%description -%{common_desc} - -This package contains the API and registry servers. - -%package -n python-glance -Summary: Glance Python libraries - -Requires: pysendfile -Requires: python-cursive -Requires: python-cryptography >= 1.6 -Requires: python-debtcollector >= 1.2.0 -Requires: python-eventlet >= 0.18.2 -Requires: python-futurist >= 0.11.0 -Requires: python-glance-store >= 0.21.0 -Requires: python-httplib2 -Requires: python-iso8601 >= 0.1.11 -Requires: python-jsonschema -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-keystoneclient >= 1:3.8.0 -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-migrate >= 0.11.0 -Requires: python-monotonic >= 0.6 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-vmware >= 0.11.1 -Requires: python-osprofiler -Requires: python-paste -Requires: python-paste-deploy -Requires: python-pbr -Requires: python-prettytable -Requires: python-retrying -Requires: python-routes -Requires: python-six >= 1.9.0 -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-stevedore >= 1.20.0 -Requires: python-swiftclient >= 2.2.0 -Requires: python-taskflow >= 2.7.0 -Requires: python-webob >= 1.7.1 -Requires: python-wsme >= 0.8 -Requires: pyOpenSSL -Requires: pyxattr -Requires: python-os-brick >= 1.8.0 -Requires: python-alembic >= 0.8.7 -Requires: python-sqlparse - -#test deps: python-mox python-nose python-requests -#test and optional store: -#ceph - glance.store.rdb -#python-boto - glance.store.s3 -Requires: python-boto - -%description -n python-glance -%{common_desc} - -This package contains the glance Python library. - -%if 0%{?with_doc} -%package doc -Summary: Documentation for OpenStack Image Service - -Requires: %{name} = %{epoch}:%{version}-%{release} - -BuildRequires: systemd-units -BuildRequires: python-sphinx -BuildRequires: python-openstackdocstheme -BuildRequires: graphviz -# Required to build module documents -BuildRequires: python-boto -BuildRequires: python-cryptography >= 1.6 -BuildRequires: python-keystoneauth1 -BuildRequires: python-keystonemiddleware -BuildRequires: python-oslo-concurrency >= 3.5.0 -BuildRequires: python-oslo-context >= 0.2.0 -BuildRequires: python-oslo-db >= 4.1.0 -BuildRequires: python-sqlalchemy >= 1.0.10 -BuildRequires: python-stevedore -BuildRequires: python-webob >= 1.2.3 -BuildRequires: python-oslotest -BuildRequires: python-psutil -BuildRequires: python-testresources -BuildRequires: pyxattr -# Required to compile translation files -BuildRequires: python-babel - -%description doc -%{common_desc} - -This package contains documentation files for glance. -%endif - -%package -n python-%{service}-tests -Summary: Glance tests -Requires: openstack-%{service} = %{epoch}:%{version}-%{release} - -%description -n python-%{service}-tests -%{common_desc} - -This package contains the Glance test files. - - -%prep -%autosetup -n glance-%{upstream_version} -S git - -sed -i '/\/usr\/bin\/env python/d' glance/common/config.py glance/common/crypt.py glance/db/sqlalchemy/migrate_repo/manage.py - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requiers_dist config -%py_req_cleanup - -%build -PYTHONPATH=. oslo-config-generator --config-dir=etc/oslo-config-generator/ -export PBR_VERSION=%{version} - -# Build -%{__python2} setup.py build - -# Generate i18n files -%{__python2} setup.py compile_catalog -d build/lib/%{service}/locale - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -export PYTHONPATH="$( pwd ):$PYTHONPATH" -%if 0%{?with_doc} -%{__python2} setup.py build_sphinx -%{__python2} setup.py build_sphinx --builder man -mkdir -p %{buildroot}%{_mandir}/man1 -install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ -%endif - -# Fix hidden-file-or-dir warnings -%if 0%{?with_doc} -rm -fr doc/build/html/.doctrees doc/build/html/.buildinfo -%endif -rm -f %{buildroot}/usr/share/doc/glance/README.rst - -# Setup directories -install -d -m 755 %{buildroot}%{_datadir}/glance -install -d -m 755 %{buildroot}%{_sharedstatedir}/glance/images -install -d -m 755 %{buildroot}%{_sysconfdir}/glance/metadefs - -# WRS: -install -p -D -m 644 etc/glance-api-paste.ini %{buildroot}%{_sysconfdir}/glance/glance-api-paste.ini -install -p -D -m 644 etc/glance-registry-paste.ini %{buildroot}%{_sysconfdir}/glance/glance-registry-paste.ini - -# WRS in-service restarts -install -p -D -m 700 %{SOURCE31} %{buildroot}%{_bindir}/restart-glance - -# WRS purge cron -install -p -D -m 755 %{SOURCE32} %{buildroot}%{_bindir}/glance-purge-deleted-active - -# Config file -install -p -D -m 640 etc/glance-api.conf %{buildroot}%{_sysconfdir}/glance/glance-api.conf -install -p -D -m 644 %{SOURCE21} %{buildroot}%{_datadir}/glance/glance-api-dist.conf -install -p -D -m 644 etc/glance-api-paste.ini %{buildroot}%{_datadir}/glance/glance-api-dist-paste.ini -## -install -p -D -m 640 etc/glance-cache.conf %{buildroot}%{_sysconfdir}/glance/glance-cache.conf -install -p -D -m 644 %{SOURCE22} %{buildroot}%{_datadir}/glance/glance-cache-dist.conf -## -install -p -D -m 640 etc/glance-registry.conf %{buildroot}%{_sysconfdir}/glance/glance-registry.conf -install -p -D -m 644 %{SOURCE24} %{buildroot}%{_datadir}/glance/glance-registry-dist.conf -install -p -D -m 644 etc/glance-registry-paste.ini %{buildroot}%{_datadir}/glance/glance-registry-dist-paste.ini -## -install -p -D -m 640 etc/glance-scrubber.conf %{buildroot}%{_sysconfdir}/glance/glance-scrubber.conf -install -p -D -m 644 %{SOURCE25} %{buildroot}%{_datadir}/glance/glance-scrubber-dist.conf -## -install -p -D -m 644 %{SOURCE26} %{buildroot}%{_sysconfdir}/glance/glance-swift.conf - -install -p -D -m 640 etc/policy.json %{buildroot}%{_sysconfdir}/glance/policy.json -install -p -D -m 640 etc/rootwrap.conf %{buildroot}%{_sysconfdir}/glance/rootwrap.conf -install -p -D -m 640 etc/schema-image.json %{buildroot}%{_sysconfdir}/glance/schema-image.json - -# Move metadefs -install -p -D -m 640 etc/metadefs/*.json %{buildroot}%{_sysconfdir}/glance/metadefs/ - -# systemd services -install -p -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/openstack-glance-api.service -install -p -D -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/openstack-glance-registry.service -install -p -D -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/openstack-glance-scrubber.service - -# Install pid directory -install -d -m 755 %{buildroot}%{_localstatedir}/run/glance - -# Install log directory -install -d -m 755 %{buildroot}%{_localstatedir}/log/glance - -# Install sudoers -install -p -D -m 440 %{SOURCE30} %{buildroot}%{_sysconfdir}/sudoers.d/glance - -# Symlinks to rootwrap config files -mkdir -p %{buildroot}%{_sysconfdir}/glance/rootwrap.d -for filter in %{_datarootdir}/os-brick/rootwrap/*.filters; do - ln -s $filter %{buildroot}%{_sysconfdir}/glance/rootwrap.d -done -for filter in %{_datarootdir}/glance_store/rootwrap/*.filters; do - test -f $filter && ln -s $filter %{buildroot}%{_sysconfdir}/glance/rootwrap.d -done - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/%{service}/locale/*/LC_*/%{service}*po -rm -f %{buildroot}%{python2_sitelib}/%{service}/locale/*pot -mv %{buildroot}%{python2_sitelib}/%{service}/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang %{service} --all-name - -# Cleanup -rm -rf %{buildroot}%{_prefix}%{_sysconfdir} - -%pre -getent group glance >/dev/null || groupadd -r glance -g 161 -getent passwd glance >/dev/null || \ -useradd -u 161 -r -g glance -d %{_sharedstatedir}/glance -s /sbin/nologin \ --c "OpenStack Glance Daemons" glance -exit 0 - -%post -# Initial installation -%systemd_post openstack-glance-api.service -%systemd_post openstack-glance-registry.service -%systemd_post openstack-glance-scrubber.service - - -%preun -%systemd_preun openstack-glance-api.service -%systemd_preun openstack-glance-registry.service -%systemd_preun openstack-glance-scrubber.service - -%postun -%systemd_postun_with_restart openstack-glance-api.service -%systemd_postun_with_restart openstack-glance-registry.service -%systemd_postun_with_restart openstack-glance-scrubber.service - -%files -%doc README.rst -%{_bindir}/glance-api -%{_bindir}/glance-wsgi-api -%{_bindir}/glance-control -%{_bindir}/glance-manage -%{_bindir}/glance-registry -%{_bindir}/glance-cache-cleaner -%{_bindir}/glance-cache-manage -%{_bindir}/glance-cache-prefetcher -%{_bindir}/glance-cache-pruner -%{_bindir}/glance-scrubber -%{_bindir}/glance-replicator - -%{_datadir}/glance/glance-api-dist.conf -%{_datadir}/glance/glance-cache-dist.conf -%{_datadir}/glance/glance-registry-dist.conf -%{_datadir}/glance/glance-scrubber-dist.conf -%{_datadir}/glance/glance-api-dist-paste.ini -%{_datadir}/glance/glance-registry-dist-paste.ini - -%{_unitdir}/openstack-glance-api.service -%{_unitdir}/openstack-glance-registry.service -%{_unitdir}/openstack-glance-scrubber.service - -#WRS: in-service patching -%{_bindir}/restart-glance - -#WRS: purge cron -%{_bindir}/glance-purge-deleted-active - -%dir %attr(770, root, glance) %{_sysconfdir}/glance -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-api-paste.ini -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-registry-paste.ini - -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-api.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-cache.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-registry.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-scrubber.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/glance-swift.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/policy.json -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/rootwrap.conf -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/schema-image.json -%config(noreplace) %attr(-, root, glance) %{_sysconfdir}/glance/metadefs/*.json -%{_sysconfdir}/glance/rootwrap.d/ -%dir %attr(0755, glance, nobody) %{_sharedstatedir}/glance -%dir %attr(0750, glance, glance) %{_localstatedir}/log/glance -%config(noreplace) %{_sysconfdir}/sudoers.d/glance - -%files -n python-glance -f %{service}.lang -%doc README.rst -%{python2_sitelib}/glance -%{python2_sitelib}/glance-*.egg-info -%exclude %{python2_sitelib}/glance/tests - -%files -n python-%{service}-tests -%license LICENSE -%{python2_sitelib}/%{service}/tests - -%if 0%{?with_doc} -%files doc -%doc doc/build/html -%endif - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 1:15.0.0-1 -- Update to 15.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 1:15.0.0-0.2.0rc2 -- Update to 15.0.0.0rc2 - -* Mon Aug 21 2017 Alfredo Moralejo 1:15.0.0-0.1.0rc1 -- Update to 15.0.0.0rc1 - diff --git a/openstack/python-gnocchi/centos/build_srpm.data b/openstack/python-gnocchi/centos/build_srpm.data deleted file mode 100644 index 11d172e0..00000000 --- a/openstack/python-gnocchi/centos/build_srpm.data +++ /dev/null @@ -1,7 +0,0 @@ -VERSION=4.2.5 -TAR_NAME=gnocchi -COPY_LIST="$FILES_BASE/* \ - $FILES_BASE/scripts/* \ - $DISTRO/patches/* \ - $CGCS_BASE/downloads/$TAR_NAME-$VERSION.tar.gz" -TIS_PATCH_VER=1 diff --git a/openstack/python-gnocchi/centos/files/gnocchi-api.service b/openstack/python-gnocchi/centos/files/gnocchi-api.service deleted file mode 100644 index 99fd4003..00000000 --- a/openstack/python-gnocchi/centos/files/gnocchi-api.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Gnocchi API service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/bin/python /usr/bin/gunicorn \ - --config /usr/share/gnocchi/gnocchi-api.conf \ - --pythonpath /usr/share/gnocchi gnocchi-api \ - --log-file /var/log/gnocchi/api.log \ - --pid /var/run/gnocchi-api.pid -#Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-gnocchi/centos/files/gnocchi-dist.conf b/openstack/python-gnocchi/centos/files/gnocchi-dist.conf deleted file mode 100644 index d0070f90..00000000 --- a/openstack/python-gnocchi/centos/files/gnocchi-dist.conf +++ /dev/null @@ -1,4 +0,0 @@ -[DEFAULT] -#log_dir = /var/log/gnocchi -use_stderr = False - diff --git a/openstack/python-gnocchi/centos/files/gnocchi-metricd.service b/openstack/python-gnocchi/centos/files/gnocchi-metricd.service deleted file mode 100644 index 763fd934..00000000 --- a/openstack/python-gnocchi/centos/files/gnocchi-metricd.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Gnocchi metricd service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/gnocchi-metricd --log-file /var/log/gnocchi/metricd.log -#Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-gnocchi/centos/files/gnocchi-statsd.service b/openstack/python-gnocchi/centos/files/gnocchi-statsd.service deleted file mode 100644 index ea4f293d..00000000 --- a/openstack/python-gnocchi/centos/files/gnocchi-statsd.service +++ /dev/null @@ -1,12 +0,0 @@ -[Unit] -Description=Gnocchi statsd service -After=syslog.target network.target - -[Service] -Type=simple -User=gnocchi -ExecStart=/usr/bin/gnocchi-statsd --log-file /var/log/gnocchi/statsd.log -Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-gnocchi/centos/files/gnocchi.logrotate b/openstack/python-gnocchi/centos/files/gnocchi.logrotate deleted file mode 100644 index cc393d04..00000000 --- a/openstack/python-gnocchi/centos/files/gnocchi.logrotate +++ /dev/null @@ -1,10 +0,0 @@ -compress - -/var/log/gnocchi/*.log { - weekly - rotate 4 - size 10M - missingok - compress - minsize 100k -} diff --git a/openstack/python-gnocchi/centos/files/scripts/gnocchi-api.init b/openstack/python-gnocchi/centos/files/scripts/gnocchi-api.init deleted file mode 100644 index 2f679071..00000000 --- a/openstack/python-gnocchi/centos/files/scripts/gnocchi-api.init +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2018 Wind River Systems, Inc. -# -# The right to copy, distribute, modify, or otherwise make use -# of this software may be licensed only pursuant to the terms -# of an applicable Wind River license agreement. -# - -### BEGIN INIT INFO -# Provides: Gnocchi API -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Gnocchi REST API daemon -### END INIT INFO - -RETVAL=0 -DESC="gnocchi-api" -PIDFILE="/var/run/$DESC.pid" -PYTHON=`which python` -EXEC="/usr/bin/gunicorn" - -CONFIGFILE="/usr/share/gnocchi/gnocchi-api.conf" -LOGFILE="/var/log/gnocchi/api.log" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - return - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background --pidfile ${PIDFILE} \ - --make-pidfile --exec ${PYTHON} -- ${EXEC} --config ${CONFIGFILE} \ - --pythonpath '/usr/share/gnocchi' gnocchi-api --log-file ${LOGFILE} - - RETVAL=$? - if [ $RETVAL -eq 0 ]; then - echo "Gnocchi API started." - else - echo "Gnocchi API start failed." - fi -} - -stop() -{ - if [ ! -e $PIDFILE ]; then - echo "Gnocchi API already stopped." - return - fi - - echo -n "Stopping $DESC..." - - start-stop-daemon --stop --quiet --pidfile $PIDFILE - RETVAL=$? - if [ $RETVAL -eq 0 ]; then - echo "Gnocchi API stopped." - else - echo "Gnocchi API stop failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &> /dev/null ; then - echo "$DESC is running" - RETVAL=0 - return - else - echo "$DESC is not running but has pid file" - RETVAL=1 - fi - fi - echo "$DESC is not running" - RETVAL=3 -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status}" - RETVAL=1 - ;; -esac - -exit $RETVAL diff --git a/openstack/python-gnocchi/centos/files/scripts/gnocchi-metricd.init b/openstack/python-gnocchi/centos/files/scripts/gnocchi-metricd.init deleted file mode 100644 index 3511333c..00000000 --- a/openstack/python-gnocchi/centos/files/scripts/gnocchi-metricd.init +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/sh -# -# Copyright (c) 2018 Wind River Systems, Inc. -# -# The right to copy, distribute, modify, or otherwise make use -# of this software may be licensed only pursuant to the terms -# of an applicable Wind River license agreement. -# - -### BEGIN INIT INFO -# Provides: Gnocchi metricd -# Default-Start: 2 3 4 5 -# Default-Stop: 0 1 6 -# Short-Description: Gnocchi metricd service -### END INIT INFO - -RETVAL=0 -DESC="gnocchi-metricd" -DAEMON="/usr/bin/gnocchi-metricd" -PIDFILE="/var/run/$DESC.pid" - -CONFIGFILE="/etc/gnocchi/gnocchi.conf" -LOGFILE="/var/log/gnocchi/metricd.log" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - return - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background --pidfile ${PIDFILE} \ - --make-pidfile --exec ${DAEMON} -- --config-file ${CONFIGFILE} \ - --log-file ${LOGFILE} - - RETVAL=$? - if [ $RETVAL -eq 0 ]; then - echo "Gnocchi metricd started." - else - echo "Gnocchi metricd start failed." - fi -} - -stop() -{ - if [ ! -e $PIDFILE ]; then - echo "Gnocchi metricd already stopped." - return - fi - - echo -n "Stopping $DESC..." - - start-stop-daemon --stop --quiet --pidfile $PIDFILE - RETVAL=$? - if [ $RETVAL -eq 0 ]; then - echo "Gnocchi metricd stopped." - else - echo "Gnocchi metricd stop failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &> /dev/null ; then - echo "$DESC is running" - RETVAL=0 - return - else - echo "$DESC is not running but has pid file" - RETVAL=1 - fi - fi - echo "$DESC is not running" - RETVAL=3 -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status}" - RETVAL=1 - ;; -esac - -exit $RETVAL diff --git a/openstack/python-gnocchi/centos/openstack-gnocchi.spec b/openstack/python-gnocchi/centos/openstack-gnocchi.spec deleted file mode 100644 index e5f7aede..00000000 --- a/openstack/python-gnocchi/centos/openstack-gnocchi.spec +++ /dev/null @@ -1,350 +0,0 @@ -%global pypi_name gnocchi -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%global service gnocchi - -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -Name: %{service} -Version: 4.2.5 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: Gnocchi is a API to store metrics and index resources - -License: ASL 2.0 -URL: http://github.com/gnocchixyz/%{service} -Source0: https://pypi.io/packages/source/g/%{pypi_name}/%{pypi_name}-%{version}.tar.gz -Source1: %{pypi_name}-dist.conf -Source10: %{name}-api.service -Source11: %{name}-metricd.service -Source12: %{name}-statsd.service -# WRS -Source13: gnocchi-api.init -Source14: gnocchi-metricd.init -# Include patches here -Patch1: Integrate-gnocchi-storage-backend.patch - -BuildArch: noarch - -BuildRequires: python2-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python2-sphinx -BuildRequires: python2-pbr -BuildRequires: python2-devel -BuildRequires: systemd -BuildRequires: python2-tenacity >= 4.0.0 -BuildRequires: openstack-macros - -%description -HTTP API to store metrics and index resources. - -%package -n python-%{service} -Summary: %{service} python libraries - -Requires: numpy >= 1.9.0 -Requires: python2-daiquiri -Requires: python-futures -Requires: python2-iso8601 -Requires: python2-jinja2 -Requires: python2-keystonemiddleware >= 4.0.0 -Requires: python2-lz4 >= 0.9.0 -Requires: python-monotonic -Requires: python-msgpack -Requires: python2-oslo-config >= 2:3.22.0 -Requires: python2-oslo-db >= 4.17.0 -Requires: python2-oslo-log >= 2.3.0 -Requires: python2-oslo-middleware >= 3.22.0 -Requires: python2-oslo-policy >= 0.3.0 -Requires: python2-oslo-sphinx >= 2.2.0 -Requires: python2-oslo-serialization >= 1.4.0 -Requires: python2-pandas >= 0.18.0 -Requires: python-paste -Requires: python-paste-deploy -Requires: python2-pbr -Requires: python2-pecan >= 0.9 -Requires: python-pytimeparse >= 1.1.5 -Requires: python2-requests -Requires: python2-scipy -Requires: python2-swiftclient >= 3.1.0 -Requires: python2-six -Requires: python2-sqlalchemy -Requires: python-sqlalchemy-utils -Requires: python2-stevedore -Requires: python-sysv_ipc -Requires: python-tooz >= 0.30 -Requires: python-trollius -Requires: python2-tenacity >= 4.0.0 -Requires: python2-ujson -Requires: python-voluptuous -Requires: python-werkzeug -Requires: python2-pytz -Requires: PyYAML -Requires: python-webob >= 1.4.1 -Requires: python-alembic -Requires: python-psycopg2 -Requires: python2-prettytable -Requires: python2-cotyledon >= 1.5.0 -Requires: python2-jsonpatch -Requires: python-cachetools -Requires: python2-pyparsing - -%description -n python-%{service} -%{service} provides API to store metrics from components -and index resources. - -This package contains the %{service} python library. - - -%package api - -Summary: %{service} api - -Requires: %{name}-common = %{version}-%{release} -Obsoletes: openstack-%{service}-api < 4.1.3 -Provides: openstack-%{service}-api = %{version}-%{release} - -%description api -%{service} provides API to store metrics from components -and index resources. - -This package contains the %{service} API service. - -%package common -Summary: Components common to all %{service} services - -# Config file generation -BuildRequires: python2-daiquiri -BuildRequires: python2-jsonpatch -BuildRequires: python2-oslo-config >= 2:3.22.0 -BuildRequires: python2-oslo-concurrency -BuildRequires: python2-oslo-db -BuildRequires: python2-oslo-log -BuildRequires: python2-oslo-messaging -BuildRequires: python2-oslo-policy -BuildRequires: python2-oslo-reports -BuildRequires: python2-oslo-service -BuildRequires: python2-lz4 >= 0.9.0 -BuildRequires: python2-pandas >= 0.18.0 -BuildRequires: python2-pecan >= 0.9 -BuildRequires: python-pytimeparse >= 1.1.5 -BuildRequires: python-tooz -BuildRequires: python2-ujson -BuildRequires: python-werkzeug -BuildRequires: python2-gnocchiclient >= 2.1.0 - -Requires: python-%{service} = %{version}-%{release} -Requires(pre): shadow-utils - -Provides: openstack-%{service}-common = %{version}-%{release} -Obsoletes: openstack-%{service}-common < 4.1.3 - -Obsoletes: openstack-%{service}-carbonara - -# openstack-gnocchi-indexer-sqlalchemy is removed and merged into common -Provides: openstack-%{service}-indexer-sqlalchemy = %{version}-%{release} -Obsoletes: openstack-%{service}-indexer-sqlalchemy < 4.1.3 - -# Obsolete old openstack-gnocchi packages - -%description common -%{service} provides services to measure and -collect metrics from components. - -%package metricd - -Summary: %{service} metricd daemon - -Requires: %{name}-common = %{version}-%{release} - -Obsoletes: openstack-%{service}-metricd < 4.1.3 -Provides: openstack-%{service}-metricd = %{version}-%{release} - -%description metricd -%{service} provides API to store metrics from OpenStack -components and index resources. - -This package contains the %{service} metricd daemon - - -%package statsd - -Summary: %{service} statsd daemon - -Requires: %{name}-common = %{version}-%{release} - -Obsoletes: openstack-%{service}-statsd < 4.1.3 -Provides: openstack-%{service}-statsd = %{version}-%{release} - -%description statsd -%{service} provides API to store metrics from OpenStack -components and index resources. - -This package contains the %{service} statsd daemon - -%package -n python-%{service}-tests -Summary: Gnocchi tests -Requires: python-%{service} = %{version}-%{release} -Requires: python2-gabbi >= 1.30.0 - -%description -n python-%{service}-tests -This package contains the Gnocchi test files. - -%if 0%{?with_doc} -%package doc -Summary: Documentation for %{service} - -Requires: python-%{service} = %{version}-%{release} - -Provides: openstack-%{service}-doc = %{version}-%{release} -Obsoletes: openstack-%{service}-doc < 4.1.3 - -%description doc -%{service} provides services to measure and -collect metrics from components. - -This package contains documentation files for %{service}. -%endif - - -%prep -%setup -q -n %{service}-%{upstream_version} - -# Apply patches here -%patch1 -p1 - -find . \( -name .gitignore -o -name .placeholder \) -delete -find %{service} -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + -sed -i '/setup_requires/d; /install_requires/d; /dependency_links/d' setup.py - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -rm -rf {test-,}requirements.txt tools/{pip,test}-requires - -%build -# Generate config file -PYTHONPATH=. oslo-config-generator --config-file=%{service}/%{service}-config-generator.conf --output-file=%{service}/%{service}.conf - -export PBR_VERSION=%{version} -%{__python2} setup.py build - -# Programmatically update defaults in sample config -# which is installed at /etc/gnocchi/gnocchi.conf -# TODO: Make this more robust -# Note it only edits the first occurrence, so assumes a section ordering in sample -# and also doesn't support multi-valued variables. -while read name eq value; do - test "$name" && test "$value" || continue - sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" %{service}/%{service}.conf -done < %{SOURCE1} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -mkdir -p %{buildroot}/%{_sysconfdir}/sysconfig/ -mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/ -mkdir -p %{buildroot}/%{_var}/log/%{name} -# WRS -mkdir -p %{buildroot}%{_sysconfdir}/init.d -install -p -D -m 640 %{service}/rest/wsgi.py %{buildroot}%{_datadir}/%{service}/%{service}-api.py -install -p -D -m 775 %{SOURCE13} %{buildroot}%{_sysconfdir}/init.d/gnocchi-api -install -p -D -m 775 %{SOURCE14} %{buildroot}%{_sysconfdir}/init.d/gnocchi-metricd - -install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datadir}/%{service}/%{service}-dist.conf -install -p -D -m 640 %{service}/%{service}.conf %{buildroot}%{_sysconfdir}/%{service}/%{service}.conf - -#TODO(prad): build the docs at run time, once the we get rid of postgres setup dependency - -# Configuration -cp -R %{service}/rest/policy.json %{buildroot}/%{_sysconfdir}/%{service} - -# Setup directories -install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service} -install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service}/tmp -install -d -m 755 %{buildroot}%{_localstatedir}/log/%{service} - -# Install systemd unit services -install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service -install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-metricd.service -install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/%{name}-statsd.service - -# Backward compatibility unit services -ln -sf %{_unitdir}/%{name}-api.service %{buildroot}%{_unitdir}/openstack-%{name}-api.service -ln -sf %{_unitdir}/%{name}-metricd.service %{buildroot}%{_unitdir}/openstack-%{name}-metricd.service -ln -sf %{_unitdir}/%{name}-statsd.service %{buildroot}%{_unitdir}/openstack-%{name}-statsd.service - -# Remove all of the conf files that are included in the buildroot/usr/etc dir since we installed them above -rm -f %{buildroot}/usr/etc/%{service}/* - -%pre common -getent group %{service} >/dev/null || groupadd -r %{service} -if ! getent passwd %{service} >/dev/null; then - useradd -r -g %{service} -G %{service},nobody -d %{_sharedstatedir}/%{service} -s /sbin/nologin -c "%{service} Daemons" %{service} -fi -exit 0 - -%files -n python-%{service} -%{python2_sitelib}/%{service} -%{python2_sitelib}/%{service}-*.egg-info -%exclude %{python2_sitelib}/%{service}/tests - -%files -n python-%{service}-tests -%license LICENSE -%{python2_sitelib}/%{service}/tests - -%files api -%defattr(-,root,root,-) -%{_bindir}/%{service}-api -%{_unitdir}/%{name}-api.service -%{_unitdir}/openstack-%{name}-api.service -%{_sysconfdir}/init.d/gnocchi-api - -%files common -%{_bindir}/%{service}-config-generator -%{_bindir}/%{service}-change-sack-size -%{_bindir}/%{service}-upgrade -%dir %{_sysconfdir}/%{service} -%{_datadir}/%{service}/%{service}-api.* -%attr(-, root, %{service}) %{_datadir}/%{service}/%{service}-dist.conf -%config(noreplace) %attr(-, root, %{service}) %{_sysconfdir}/%{service}/policy.json -%config(noreplace) %attr(-, root, %{service}) %{_sysconfdir}/%{service}/%{service}.conf -%dir %attr(0750, %{service}, root) %{_localstatedir}/log/%{service} - -%defattr(-, %{service}, %{service}, -) -%dir %{_sharedstatedir}/%{service} -%dir %{_sharedstatedir}/%{service}/tmp - -%files metricd -%{_bindir}/%{service}-metricd -%{_unitdir}/%{name}-metricd.service -%{_unitdir}/openstack-%{name}-metricd.service -%{_sysconfdir}/init.d/gnocchi-metricd - -%files statsd -%{_bindir}/%{service}-statsd -%{_unitdir}/%{name}-statsd.service -%{_unitdir}/openstack-%{name}-statsd.service - -%if 0%{?with_doc} -%files doc -%doc doc/source/ -%endif - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Tue Mar 27 2018 Jon Schlueter 4.2.1-1 -- Update to 4.2.1 - -* Wed Feb 21 2018 RDO 4.2.0-1 -- Update to 4.2.0 diff --git a/openstack/python-gnocchi/centos/patches/Integrate-gnocchi-storage-backend.patch b/openstack/python-gnocchi/centos/patches/Integrate-gnocchi-storage-backend.patch deleted file mode 100644 index 09b5c994..00000000 --- a/openstack/python-gnocchi/centos/patches/Integrate-gnocchi-storage-backend.patch +++ /dev/null @@ -1,47 +0,0 @@ -From f56612a5d784e8f7de384f0e9b623adf50953ee6 Mon Sep 17 00:00:00 2001 -From: Angie Wang -Date: Mon, 9 Jul 2018 10:02:07 -0400 -Subject: [PATCH] Integrate gnocchi storage backend - ---- - MANIFEST.in | 2 ++ - gnocchi/indexer/alembic/__init__.py | 0 - gnocchi/indexer/alembic/versions/__init__.py | 0 - gnocchi/rest/wsgi.py | 5 ++++- - 4 files changed, 6 insertions(+), 1 deletion(-) - create mode 100644 gnocchi/indexer/alembic/__init__.py - create mode 100644 gnocchi/indexer/alembic/versions/__init__.py - -diff --git a/MANIFEST.in b/MANIFEST.in -index 8f248e6..df1afd3 100644 ---- a/MANIFEST.in -+++ b/MANIFEST.in -@@ -1 +1,3 @@ - include etc/gnocchi/gnocchi.conf -+ -+recursive-include gnocchi *.ini *.json *.xml *.cfg *.pem README *.po *.mo *.sql -diff --git a/gnocchi/indexer/alembic/__init__.py b/gnocchi/indexer/alembic/__init__.py -new file mode 100644 -index 0000000..e69de29 -diff --git a/gnocchi/indexer/alembic/versions/__init__.py b/gnocchi/indexer/alembic/versions/__init__.py -new file mode 100644 -index 0000000..e69de29 -diff --git a/gnocchi/rest/wsgi.py b/gnocchi/rest/wsgi.py -index 0ebe753..6bccf48 100644 ---- a/gnocchi/rest/wsgi.py -+++ b/gnocchi/rest/wsgi.py -@@ -10,7 +10,10 @@ - # implied. - # See the License for the specific language governing permissions and - # limitations under the License. --"""This file is loaded by gnocchi-api when executing uwsgi""" -+"""This file is loaded by gnocchi-api when executing uwsgi/gunicorn""" - from gnocchi.cli import api - from gnocchi.rest import app -+import sys -+ -+sys.argv = sys.argv[:1] - application = app.load_app(api.prepare_service()) --- -1.8.3.1 - diff --git a/openstack/python-heat/openstack-heat/centos/build_srpm.data b/openstack/python-heat/openstack-heat/centos/build_srpm.data deleted file mode 100644 index 3185498f..00000000 --- a/openstack/python-heat/openstack-heat/centos/build_srpm.data +++ /dev/null @@ -1,7 +0,0 @@ -SRC_DIR="$CGCS_BASE/git/heat" -COPY_LIST="$FILES_BASE/*" -TAR_NAME=openstack-heat - -# SRCREV is the last upstream commit -TIS_BASE_SRCREV=be1e2e9fa5b44fb186d1705e0fefff4b8eec2233 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-heat/openstack-heat/centos/files/heat-dist.conf b/openstack/python-heat/openstack-heat/centos/files/heat-dist.conf deleted file mode 100644 index 714f7ae7..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/heat-dist.conf +++ /dev/null @@ -1,35 +0,0 @@ -[DEFAULT] -sql_connection = mysql://heat:heat@localhost/heat -db_backend = heat.db.sqlalchemy.api -log_dir = /var/log/heat -use_stderr = False - -[keystone_authtoken] -auth_host = 127.0.0.1 -auth_port = 35357 -auth_protocol = http -auth_uri = http://127.0.0.1:5000/v2.0 -signing_dir = /tmp/keystone-signing-heat - -[ssl] - -[database] - -[paste_deploy] -api_paste_config = /usr/share/heat/api-paste-dist.ini - -[rpc_notifier2] - -[ec2authtoken] - -[heat_api_cloudwatch] - -[heat_api] - -[heat_api_cfn] - -[auth_password] - -[matchmaker_ring] - -[matchmaker_redis] diff --git a/openstack/python-heat/openstack-heat/centos/files/heat-purge-deleted-active b/openstack/python-heat/openstack-heat/centos/files/heat-purge-deleted-active deleted file mode 100644 index 784d61e4..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/heat-purge-deleted-active +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run heat-manage purge_deleted on active controller only -# -HEAT_PURGE_INFO="/var/run/heat-purge.info" -HEAT_STACK_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/heat-manage --config-file=/etc/heat/heat.conf purge_deleted -g hours 1" -HEAT_EVENT_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/heat-manage --config-file=/etc/heat/heat.conf expire_events" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${HEAT_PURGE_INFO} ] - then - echo delay_count=0 > ${HEAT_PURGE_INFO} - fi - - source ${HEAT_PURGE_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - # Purge soft deleted records that are older than one hour and events based on - # max_events in config from heat database. - sh -c "exec taskset -c $idle_core ${HEAT_STACK_PURGE_CMD}" - sh -c "exec taskset -c $idle_core ${HEAT_EVENT_PURGE_CMD}" - sed -i "/delay_count/s/=.*/=0/" ${HEAT_PURGE_INFO} - exit 0 - fi - fi - - if [ "$delay_count" -lt "3" ] - then - newval=$(($delay_count+1)) - sed -i "/delay_count/s/=.*/=$newval/" ${HEAT_PURGE_INFO} - (sleep 3600; /usr/bin/heat-purge-deleted-active) & - exit 0 - fi - - fi - - # Purge soft deleted records that are older than one hour and events based on max_events - # in config from heat database. - eval ${HEAT_STACK_PURGE_CMD} - eval ${HEAT_EVENT_PURGE_CMD} - sed -i "/delay_count/s/=.*/=0/" ${HEAT_PURGE_INFO} -fi - -exit 0 diff --git a/openstack/python-heat/openstack-heat/centos/files/heat.conf.sample b/openstack/python-heat/openstack-heat/centos/files/heat.conf.sample deleted file mode 100644 index a15b7637..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/heat.conf.sample +++ /dev/null @@ -1,1375 +0,0 @@ -[DEFAULT] - -# -# From heat.api.middleware.ssl -# - -# The HTTP Header that will be used to determine which the original request -# protocol scheme was, even if it was removed by an SSL terminator proxy. -# (string value) -#secure_proxy_ssl_header = X-Forwarded-Proto - -# -# From heat.common.config -# - -# Name of the engine node. This can be an opaque identifier. It is not -# necessarily a hostname, FQDN, or IP address. (string value) -#host = gig3 - -# -# From heat.common.config -# - -# The default user for new instances. This option is deprecated and will be -# removed in the Juno release. If it's empty, Heat will use the default user -# set up with your cloud image (for OS::Nova::Server) or 'ec2-user' (for -# AWS::EC2::Instance). (string value) -#instance_user = ec2-user - -# List of directories to search for plug-ins. (list value) -#plugin_dirs = /usr/lib64/heat,/usr/lib/heat,/usr/local/lib/heat,/usr/local/lib64/heat - -# The directory to search for environment files. (string value) -#environment_dir = /etc/heat/environment.d - -# Select deferred auth method, stored password or trusts. (string value) -# Allowed values: password, trusts -#deferred_auth_method = trusts - -# Subset of trustor roles to be delegated to heat. If left unset, all roles of -# a user will be delegated to heat when creating a stack. (list value) -#trusts_delegated_roles = - -# Maximum resources allowed per top-level stack. (integer value) -#max_resources_per_stack = 1000 - -# Maximum number of stacks any one tenant may have active at one time. (integer -# value) -#max_stacks_per_tenant = 100 - -# Number of times to retry to bring a resource to a non-error state. Set to 0 -# to disable retries. (integer value) -#action_retry_limit = 5 - -# Controls how many events will be pruned whenever a stack's events exceed -# max_events_per_stack. Set this lower to keep more events at the expense of -# more frequent purges. (integer value) -#event_purge_batch_size = 10 - -# Maximum events that will be available per stack. Older events will be deleted -# when this is reached. Set to 0 for unlimited events per stack. (integer -# value) -#max_events_per_stack = 1000 - -# Timeout in seconds for stack action (ie. create or update). (integer value) -#stack_action_timeout = 3600 - -# Error wait time in seconds for stack action (ie. create or update). (integer -# value) -#error_wait_time = 240 - -# RPC timeout for the engine liveness check that is used for stack locking. -# (integer value) -#engine_life_check_timeout = 2 - -# Enable the legacy OS::Heat::CWLiteAlarm resource. (boolean value) -#enable_cloud_watch_lite = true - -# Enable the preview Stack Abandon feature. (boolean value) -#enable_stack_abandon = false - -# Enable the preview Stack Adopt feature. (boolean value) -#enable_stack_adopt = false - -# Enables engine with convergence architecture. All stacks with this option -# will be created using convergence engine . (boolean value) -#convergence_engine = false - -# Template default for how the server should receive the metadata required for -# software configuration. POLL_SERVER_CFN will allow calls to the cfn API -# action DescribeStackResource authenticated with the provided keypair -# (requires enabled heat-api-cfn). POLL_SERVER_HEAT will allow calls to the -# Heat API resource-show using the provided keystone credentials (requires -# keystone v3 API, and configured stack_user_* config options). POLL_TEMP_URL -# will create and populate a Swift TempURL with metadata for polling (requires -# object-store endpoint which supports TempURL). (string value) -# Allowed values: POLL_SERVER_CFN, POLL_SERVER_HEAT, POLL_TEMP_URL -#default_software_config_transport = POLL_SERVER_CFN - -# Template default for how the server should signal to heat with the deployment -# output values. CFN_SIGNAL will allow an HTTP POST to a CFN keypair signed URL -# (requires enabled heat-api-cfn). TEMP_URL_SIGNAL will create a Swift TempURL -# to be signaled via HTTP PUT (requires object-store endpoint which supports -# TempURL). HEAT_SIGNAL will allow calls to the Heat API resource-signal using -# the provided keystone credentials (string value) -# Allowed values: CFN_SIGNAL, TEMP_URL_SIGNAL, HEAT_SIGNAL -#default_deployment_signal_transport = CFN_SIGNAL - -# Deprecated. (string value) -#onready = - -# When this feature is enabled, scheduler hints identifying the heat stack -# context of a server resource are passed to the configured schedulers in nova, -# for server creates done using heat resource types OS::Nova::Server and -# AWS::EC2::Instance. heat_root_stack_id will be set to the id of the root -# stack of the resource, heat_stack_id will be set to the id of the resource's -# parent stack, heat_stack_name will be set to the name of the resource's -# parent stack, heat_path_in_stack will be set to a list of tuples, -# (stackresourcename, stackname) with list[0] being (None, rootstackname), and -# heat_resource_name will be set to the resource's name. (boolean value) -#stack_scheduler_hints = false - -# -# From heat.common.config -# - -# Seconds between running periodic tasks. (integer value) -#periodic_interval = 60 - -# URL of the Heat metadata server. (string value) -#heat_metadata_server_url = - -# URL of the Heat waitcondition server. (string value) -#heat_waitcondition_server_url = - -# URL of the Heat CloudWatch server. (string value) -#heat_watch_server_url = - -# Instance connection to CFN/CW API via https. (string value) -#instance_connection_is_secure = 0 - -# Instance connection to CFN/CW API validate certs if SSL is used. (string -# value) -#instance_connection_https_validate_certificates = 1 - -# Default region name used to get services endpoints. (string value) -#region_name_for_services = - -# Keystone role for heat template-defined users. (string value) -#heat_stack_user_role = heat_stack_user - -# Keystone domain ID which contains heat template-defined users. If this option -# is set, stack_user_domain_name option will be ignored. (string value) -# Deprecated group/name - [DEFAULT]/stack_user_domain -#stack_user_domain_id = - -# Keystone domain name which contains heat template-defined users. If -# `stack_user_domain_id` option is set, this option is ignored. (string value) -#stack_user_domain_name = - -# Keystone username, a user with roles sufficient to manage users and projects -# in the stack_user_domain. (string value) -#stack_domain_admin = - -# Keystone password for stack_domain_admin user. (string value) -#stack_domain_admin_password = - -# Maximum raw byte size of any template. (integer value) -#max_template_size = 524288 - -# Maximum depth allowed when using nested stacks. (integer value) -#max_nested_stack_depth = 5 - -# Number of heat-engine processes to fork and run. (integer value) -#num_engine_workers = 4 - -# -# From heat.common.crypt -# - -# Key used to encrypt authentication info in the database. Length of this key -# must be 16, 24 or 32 characters. (string value) -#auth_encryption_key = notgood but just long enough i t - -# -# From heat.common.heat_keystoneclient -# - -# Fully qualified class name to use as a keystone backend. (string value) -#keystone_backend = heat.common.heat_keystoneclient.KeystoneClientV3 - -# -# From heat.common.wsgi -# - -# Maximum raw byte size of JSON request body. Should be larger than -# max_template_size. (integer value) -#max_json_body_size = 1048576 - -# -# From heat.engine.clients -# - -# Fully qualified class name to use as a client backend. (string value) -#cloud_backend = heat.engine.clients.OpenStackClients - -# -# From heat.engine.notification -# - -# Default notification level for outgoing notifications. (string value) -#default_notification_level = INFO - -# Default publisher_id for outgoing notifications. (string value) -#default_publisher_id = - -# List of drivers to send notifications (DEPRECATED). (multi valued) -#list_notifier_drivers = - -# -# From heat.engine.resources -# - -# Custom template for the built-in loadbalancer nested stack. (string value) -#loadbalancer_template = - -# -# From heat.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , and -# :, where 0 results in listening on a random tcp port number; -# results in listening on the specified port number (and not enabling -# backdoor if that port is in use); and : results in listening on -# the smallest unused port number within the specified range of port numbers. -# The chosen port is displayed in the service's log file. (string value) -#backdoor_port = - -# -# From heat.openstack.common.policy -# - -# The JSON file that defines policies. (string value) -#policy_file = policy.json - -# Default rule. Enforced when a requested rule is not found. (string value) -#policy_default_rule = default - -# Directories where policy configuration files are stored. They can be relative -# to any directory in the search path defined by the config_dir option, or -# absolute paths. The file defined by policy_file must exist for these -# directories to be searched. (multi valued) -#policy_dirs = policy.d - -# -# From oslo.log -# - -# Print debugging output (set logging level to DEBUG instead of default WARNING -# level). (boolean value) -#debug = false - -# Print more verbose output (set logging level to INFO instead of default -# WARNING level). (boolean value) -#verbose = false - -# The name of a logging configuration file. This file is appended to any -# existing logging configuration files. For details about logging configuration -# files, see the Python logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may use any -# of the available logging.LogRecord attributes. This option is deprecated. -# Please use logging_context_format_string and logging_default_format_string -# instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s . (string -# value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, logging will -# go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. (string -# value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during I, and -# will change in J to honor RFC5424. (boolean value) -#use_syslog = false - -# (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, -# prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The -# format without the APP-NAME is deprecated in I, and will be removed in J. -# (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. (string -# value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. (string -# value) -#instance_uuid_format = "[instance: %(uuid)s] " - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker = oslo_messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port = 9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Seconds to wait before a cast expires (TTL). Only supported by impl_zmq. -# (integer value) -#rpc_cast_timeout = 30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq = 300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl = 600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size = 64 - -# Driver or drivers to handle sending notifications. (multi valued) -#notification_driver = - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics = notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full configuration. If -# not set, we fall back to the rpc_backend option and driver specific -# configuration. (string value) -#transport_url = - -# The messaging driver to use, defaults to rabbit. Other drivers include qpid -# and zmq. (string value) -#rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be overridden by an -# exchange name specified in the transport_url option. (string value) -#control_exchange = openstack - - -[auth_password] - -# -# From heat.common.config -# - -# Allow orchestration of multiple clouds. (boolean value) -#multi_cloud = false - -# Allowed keystone endpoints for auth_uri when multi_cloud is enabled. At least -# one endpoint needs to be specified. (list value) -#allowed_auth_uris = - - -[clients] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = publicURL - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = false - - -[clients_ceilometer] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_cinder] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - -# -# From heat.common.config -# - -# Allow client's debug log output. (boolean value) -#http_log_debug = false - - -[clients_glance] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_heat] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - -# -# From heat.common.config -# - -# Optional heat url in format like http://0.0.0.0:8004/v1/%(tenant_id)s. -# (string value) -#url = - - -[clients_keystone] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_neutron] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_nova] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - -# -# From heat.common.config -# - -# Allow client's debug log output. (boolean value) -#http_log_debug = false - - -[clients_sahara] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_swift] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[clients_trove] - -# -# From heat.common.config -# - -# Type of endpoint in Identity service catalog to use for communication with -# the OpenStack service. (string value) -#endpoint_type = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = - - -[database] - -# -# From oslo.db -# - -# The file name to use with SQLite. (string value) -# Deprecated group/name - [DEFAULT]/sqlite_db -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -# Deprecated group/name - [DEFAULT]/sqlite_synchronous -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. (string -# value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = - -# The SQLAlchemy connection string to use to connect to the slave database. -# (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including the -# default, overrides any server-set SQL mode. To use whatever SQL mode is set -# by the server configuration, set this to no value. Example: mysql_sql_mode= -# (string value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum number of database connection retries during startup. Set to -1 to -# specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection lost. -# (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database operation up to -# db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries of a -# database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before error is -# raised. Set to -1 to specify an infinite retry count. (integer value) -#db_max_retries = 20 - - -[ec2authtoken] - -# -# From heat.api.aws.ec2token -# - -# Authentication Endpoint URI. (string value) -#auth_uri = - -# Allow orchestration of multiple clouds. (boolean value) -#multi_cloud = false - -# Allowed keystone endpoints for auth_uri when multi_cloud is enabled. At least -# one endpoint needs to be specified. (list value) -#allowed_auth_uris = - -# Optional PEM-formatted certificate chain file. (string value) -#cert_file = - -# Optional PEM-formatted file that contains the private key. (string value) -#key_file = - -# Optional CA cert file to use in SSL connections. (string value) -#ca_file = - -# If set, then the server's certificate will not be verified. (boolean value) -#insecure = false - - -[heat_api] - -# -# From heat.common.wsgi -# - -# Address to bind the server. Useful when selecting a particular network -# interface. (string value) -# Deprecated group/name - [DEFAULT]/bind_host -#bind_host = 0.0.0.0 - -# The port on which the server will listen. (integer value) -# Deprecated group/name - [DEFAULT]/bind_port -#bind_port = 8004 - -# Number of backlog requests to configure the socket with. (integer value) -# Deprecated group/name - [DEFAULT]/backlog -#backlog = 4096 - -# Location of the SSL certificate file to use for SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/cert_file -#cert_file = - -# Location of the SSL key file to use for enabling SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/key_file -#key_file = - -# Number of workers for Heat service. (integer value) -# Deprecated group/name - [DEFAULT]/workers -#workers = 0 - -# Maximum line size of message headers to be accepted. max_header_line may need -# to be increased when using large tokens (typically those generated by the -# Keystone v3 API with big service catalogs). (integer value) -#max_header_line = 16384 - - -[heat_api_cfn] - -# -# From heat.common.wsgi -# - -# Address to bind the server. Useful when selecting a particular network -# interface. (string value) -# Deprecated group/name - [DEFAULT]/bind_host -#bind_host = 0.0.0.0 - -# The port on which the server will listen. (integer value) -# Deprecated group/name - [DEFAULT]/bind_port -#bind_port = 8000 - -# Number of backlog requests to configure the socket with. (integer value) -# Deprecated group/name - [DEFAULT]/backlog -#backlog = 4096 - -# Location of the SSL certificate file to use for SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/cert_file -#cert_file = - -# Location of the SSL key file to use for enabling SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/key_file -#key_file = - -# Number of workers for Heat service. (integer value) -# Deprecated group/name - [DEFAULT]/workers -#workers = 0 - -# Maximum line size of message headers to be accepted. max_header_line may need -# to be increased when using large tokens (typically those generated by the -# Keystone v3 API with big service catalogs). (integer value) -#max_header_line = 16384 - - -[heat_api_cloudwatch] - -# -# From heat.common.wsgi -# - -# Address to bind the server. Useful when selecting a particular network -# interface. (string value) -# Deprecated group/name - [DEFAULT]/bind_host -#bind_host = 0.0.0.0 - -# The port on which the server will listen. (integer value) -# Deprecated group/name - [DEFAULT]/bind_port -#bind_port = 8003 - -# Number of backlog requests to configure the socket with. (integer value) -# Deprecated group/name - [DEFAULT]/backlog -#backlog = 4096 - -# Location of the SSL certificate file to use for SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/cert_file -#cert_file = - -# Location of the SSL key file to use for enabling SSL mode. (string value) -# Deprecated group/name - [DEFAULT]/key_file -#key_file = - -# Number of workers for Heat service. (integer value) -# Deprecated group/name - [DEFAULT]/workers -#workers = 0 - -# Maximum line size of message headers to be accepted. max_header_line may need -# to be increased when using large tokens (typically those generated by the -# Keystone v3 API with big service catalogs.) (integer value) -#max_header_line = 16384 - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Prefix to prepend at the beginning of the path. Deprecated, use identity_uri. -# (string value) -#auth_admin_prefix = - -# Host providing the admin Identity API endpoint. Deprecated, use identity_uri. -# (string value) -#auth_host = 127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use identity_uri. -# (integer value) -#auth_port = 35357 - -# Protocol of the admin Identity API endpoint (http or https). Deprecated, use -# identity_uri. (string value) -#auth_protocol = https - -# Complete public Identity API endpoint (string value) -#auth_uri = - -# Complete admin Identity API endpoint. This should specify the unversioned -# root endpoint e.g. https://localhost:35357/ (string value) -#identity_uri = - -# API version of the admin Identity API endpoint (string value) -#auth_version = - -# Do not handle authorization requests within the middleware, but delegate the -# authorization decision to downstream WSGI components (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. (boolean -# value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with Identity -# API Server. (integer value) -#http_request_max_retries = 3 - -# This option is deprecated and may be removed in a future release. Single -# shared secret with the Keystone configuration used for bootstrapping a -# Keystone installation, or otherwise bypassing the normal authentication -# process. This option should not be used, use `admin_user` and -# `admin_password` instead. (string value) -#admin_token = - -# Keystone account username (string value) -#admin_user = - -# Keystone account password (string value) -#admin_password = - -# Keystone service account tenant name to validate user tokens (string value) -#admin_tenant_name = admin - -# Env key for the swift cache (string value) -#cache = - -# Required if Keystone server requires client certificate (string value) -#certfile = - -# Required if Keystone server requires client certificate (string value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs connections. -# Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# Directory used to cache files related to PKI tokens (string value) -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. If left -# undefined, tokens will instead be cached in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the middleware -# caches previously-seen tokens for a configurable duration (in seconds). Set -# to -1 to disable caching completely. (integer value) -#token_cache_time = 300 - -# Determines the frequency at which the list of revoked tokens is retrieved -# from the Identity service (in seconds). A high number of revocation events -# combined with a low cache duration may significantly reduce performance. -# (integer value) -#revocation_cache_time = 10 - -# (optional) if defined, indicate whether token data should be authenticated or -# authenticated and encrypted. Acceptable values are MAC or ENCRYPT. If MAC, -# token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data -# is encrypted and authenticated in the cache. If the value is not one of these -# options or empty, auth_token will raise an exception on initialization. -# (string value) -#memcache_security_strategy = - -# (optional, mandatory if memcache_security_strategy is defined) this string is -# used for key derivation. (string value) -#memcache_secret_key = - -# (optional) number of seconds memcached server is considered dead before it is -# tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (optional) max total number of open connections to every memcached server. -# (integer value) -#memcache_pool_maxsize = 10 - -# (optional) socket timeout in seconds for communicating with a memcache -# server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (optional) number of seconds a connection to memcached is held unused in the -# pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (optional) number of seconds that an operation will wait to get a memcache -# client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (optional) use the advanced (eventlet safe) memcache client pool. The -# advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (optional) indicate whether to set the X-Service-Catalog header. If False, -# middleware will not ask for service catalog on token validation and will not -# set the X-Service-Catalog header. (boolean value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: "disabled" -# to not check token binding. "permissive" (default) to validate binding -# information if the bind type is of a form known to the server and ignore it -# if not. "strict" like "permissive" but if the bind type is unknown the token -# will be rejected. "required" any form of token binding is needed to be -# allowed. Finally the name of a binding method that must be present in tokens. -# (string value) -#enforce_token_bind = permissive - -# If true, the revocation list will be checked for cached tokens. This requires -# that PKI tokens are configured on the Keystone server. (boolean value) -#check_revocations_for_cached = false - -# Hash algorithms to use for hashing PKI tokens. This may be a single algorithm -# or multiple. The algorithms are those supported by Python standard -# hashlib.new(). The hashes will be tried in the order given, so put the -# preferred one first for performance. The result of the first hash will be -# stored in the cache. This will typically be set to multiple values only while -# migrating from a less secure algorithm to a more secure one. Once all the old -# tokens are expired this option should be set to a single value for better -# performance. (list value) -#hash_algorithms = md5 - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# Host to locate redis. (string value) -#host = 127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port = 6379 - -# Password for Redis server (optional). (string value) -#password = - - -[matchmaker_ring] - -# -# From oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile = /etc/oslo/matchmaker_ring.json - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -#group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -#trace = false - -# CA certificate PEM file for verifing server certificate (string value) -# Deprecated group/name - [amqp1]/ssl_ca_file -#ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string value) -# Deprecated group/name - [amqp1]/ssl_cert_file -#ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string value) -# Deprecated group/name - [amqp1]/ssl_key_file -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -#ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -#allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -#qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -#qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -#qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -#qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -#qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -#qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -#qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -#qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -#qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -#qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally used by -# impl_qpid. Version 2 includes some backwards-incompatible changes that allow -# broker federation to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -#qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -#kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -#kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -#kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -#kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -#kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_host -#rabbit_host = localhost - -# The RabbitMQ broker port where a single node is used. (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_port -#rabbit_port = 5672 - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -#rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -#rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -#rabbit_userid = guest - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -#rabbit_password = guest - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -#rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -#rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -#rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry -# count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -#rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you -# must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -#rabbit_ha_queues = false - -# Number of seconds after which the Rabbit broker is considered down if -# heartbeat's keep-alive fails (0 disable the heartbeat). (integer value) -#heartbeat_timeout_threshold = 60 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -#fake_rabbit = false - - -[paste_deploy] - -# -# From heat.common.config -# - -# The flavor to use. (string value) -#flavor = - -# The API paste config file to use. (string value) -#api_paste_config = api-paste.ini - - -[profiler] - -# -# From heat.common.config -# - -# If False fully disable profiling feature. (boolean value) -#profiler_enabled = false - -# If False do not trace SQL requests. (boolean value) -#trace_sqlalchemy = false - - -[revision] - -# -# From heat.common.config -# - -# Heat build revision. If you would prefer to manage your build revision -# separately, you can move this section to a different file and add it as -# another config option. (string value) -#heat_revision = unknown diff --git a/openstack/python-heat/openstack-heat/centos/files/heat.logrotate b/openstack/python-heat/openstack-heat/centos/files/heat.logrotate deleted file mode 100644 index 22e6d5e7..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/heat.logrotate +++ /dev/null @@ -1,6 +0,0 @@ -/var/log/heat/*.log { - rotate 14 - size 10M - missingok - compress -} diff --git a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-all.service b/openstack/python-heat/openstack-heat/centos/files/openstack-heat-all.service deleted file mode 100644 index 2701a94c..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-all.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Combined Openstack Heat Engine/API Service -After=syslog.target network.target qpidd.service mysqld.service openstack-keystone.service tgtd.service openstack-glance-api.service openstack-glance-registry.service openstack-nova-api.service openstack-nova-objectstore.service openstack-nova.compute.service openstack-nova-network.service openstack-nova-volume.service openstack-nova-scheduler.service openstack-cinder-volume.service - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/heat-all --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cfn.service b/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cfn.service deleted file mode 100644 index 6d9f1350..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cfn.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Openstack Heat CFN-compatible API Service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/heat-api-cfn --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cloudwatch.service b/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cloudwatch.service deleted file mode 100644 index aa02172a..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api-cloudwatch.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Heat CloudWatch API Service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/heat-api-cloudwatch --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api.service b/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api.service deleted file mode 100644 index ffb26a83..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-api.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=OpenStack Heat API Service -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/heat-api --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-engine.service b/openstack/python-heat/openstack-heat/centos/files/openstack-heat-engine.service deleted file mode 100644 index 7aa96389..00000000 --- a/openstack/python-heat/openstack-heat/centos/files/openstack-heat-engine.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=Openstack Heat Engine Service -After=syslog.target network.target qpidd.service mysqld.service openstack-keystone.service tgtd.service openstack-glance-api.service openstack-glance-registry.service openstack-nova-api.service openstack-nova-objectstore.service openstack-nova.compute.service openstack-nova-network.service openstack-nova-volume.service openstack-nova-scheduler.service openstack-cinder-volume.service - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/heat-engine --config-file /usr/share/heat/heat-dist.conf --config-file /etc/heat/heat.conf - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-heat/openstack-heat/centos/openstack-heat.spec b/openstack/python-heat/openstack-heat/centos/openstack-heat.spec deleted file mode 100644 index 05619f3e..00000000 --- a/openstack/python-heat/openstack-heat/centos/openstack-heat.spec +++ /dev/null @@ -1,553 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} - -Name: openstack-heat -Summary: OpenStack Orchestration (heat) -# Liberty semver reset -# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z -Epoch: 1 -Version: 9.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -License: ASL 2.0 -URL: http://www.openstack.org -Source0: openstack-heat-%{version}.tar.gz -# - -Obsoletes: heat < 7-9 -Provides: heat - -Source2: openstack-heat-api.service -Source3: openstack-heat-api-cfn.service -Source4: openstack-heat-engine.service -Source5: openstack-heat-api-cloudwatch.service -Source6: openstack-heat-all.service - -Source20: heat-dist.conf -Source22: heat-purge-deleted-active - -BuildArch: noarch -BuildRequires: git -BuildRequires: openstack-macros -BuildRequires: python2-devel -BuildRequires: python-stevedore >= 1.20.0 -BuildRequires: python-oslo-cache -BuildRequires: python-oslo-context -BuildRequires: python-oslo-middleware -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-messaging -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-openstackdocstheme -BuildRequires: python-oslo-i18n -BuildRequires: python-oslo-db -BuildRequires: python-oslo-utils -BuildRequires: python-oslo-log -BuildRequires: python-oslo-versionedobjects -BuildRequires: python-eventlet -BuildRequires: python-kombu -BuildRequires: python-lxml -BuildRequires: python-netaddr -BuildRequires: python-migrate -BuildRequires: python-osprofiler -BuildRequires: python-six -BuildRequires: PyYAML -BuildRequires: python-sphinx -BuildRequires: m2crypto -BuildRequires: python-paramiko -BuildRequires: python-yaql -# These are required to build due to the requirements check added -BuildRequires: python-paste-deploy -BuildRequires: python-routes -BuildRequires: python-sqlalchemy -BuildRequires: python-webob -BuildRequires: python-pbr -BuildRequires: python-d2to1 -BuildRequires: python-cryptography -# These are required to build the config file -BuildRequires: python-oslo-config -BuildRequires: python-redis -BuildRequires: crudini -BuildRequires: python-crypto -BuildRequires: python-keystoneauth1 -BuildRequires: python-keystoneclient -# Required to compile translation files -BuildRequires: python-babel - -BuildRequires: systemd-units -BuildRequires: systemd-devel -BuildRequires: cgts-client -BuildRequires: python-keyring -BuildRequires: tsconfig - -%if 0%{?with_doc} -BuildRequires: python-cinderclient -BuildRequires: python-novaclient -BuildRequires: python-saharaclient -BuildRequires: python-neutronclient -BuildRequires: python-swiftclient -BuildRequires: python-heatclient -BuildRequires: python-glanceclient -BuildRequires: python-troveclient -BuildRequires: python-aodhclient -BuildRequires: python-barbicanclient -BuildRequires: python-designateclient -BuildRequires: python-magnumclient -BuildRequires: python-monascaclient -BuildRequires: python-manilaclient -BuildRequires: python-zaqarclient -BuildRequires: python-croniter -BuildRequires: python-gabbi -BuildRequires: python-testscenarios -BuildRequires: python-tempest -BuildRequires: python2-pycodestyle - -# NOTE(ykarel) zunclient are not packaged yet. -BuildRequires: python-senlinclient -#BuildRequires: python-zunclient -%endif - -Requires: %{name}-common = %{epoch}:%{version}-%{release} -Requires: %{name}-engine = %{epoch}:%{version}-%{release} -Requires: %{name}-api = %{epoch}:%{version}-%{release} -Requires: %{name}-api-cfn = %{epoch}:%{version}-%{release} -Requires: %{name}-api-cloudwatch = %{epoch}:%{version}-%{release} - -%package -n python-heat-tests -Summary: Heat tests -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires: python-mox3 -Requires: python-oslotest -Requires: python-testresources -Requires: python-oslotest -Requires: python-oslo-log -Requires: python-oslo-utils -Requires: python-heatclient -Requires: python-cinderclient -Requires: python-zaqarclient -Requires: python-keystoneclient -Requires: python-swiftclient -Requires: python-paramiko -Requires: python-kombu -Requires: python-oslo-config -Requires: python-oslo-concurrency -Requires: python-requests -Requires: python-eventlet -Requires: PyYAML -Requires: python-six -Requires: python-gabbi - -%description -n python-heat-tests -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. -This package contains the Heat test files. - -%prep -# WRS: The tarball is packaged as openstack-heat rather than heat -%setup -q -n openstack-heat-%{version} - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requires_dist config -rm -rf {test-,}requirements.txt tools/{pip,test}-requires - -# Remove tests in contrib -find contrib -name tests -type d | xargs rm -r - -%build -export PBR_VERSION=%{version} -%{__python} setup.py build - -# Generate i18n files -%{__python2} setup.py compile_catalog -d build/lib/heat/locale - -# Generate sample config and add the current directory to PYTHONPATH so -# oslo-config-generator doesn't skip heat's entry points. -PYTHONPATH=. oslo-config-generator --config-file=config-generator.conf - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python} setup.py install -O1 --skip-build --root=%{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ -sed -i -e '/^#!/,1 d' %{buildroot}/%{python_sitelib}/heat/db/sqlalchemy/migrate_repo/manage.py - -# Create fake egg-info for the tempest plugin -# TODO switch to %{service} everywhere as in openstack-example.spec -%global service heat -%py2_entrypoint %{service} %{service} - -mkdir -p %{buildroot}/%{_localstatedir}/log/heat/ -mkdir -p %{buildroot}/%{_localstatedir}/run/heat/ - -# install systemd unit files -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/openstack-heat-api.service -install -p -D -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/openstack-heat-api-cfn.service -install -p -D -m 644 %{SOURCE4} %{buildroot}%{_unitdir}/openstack-heat-engine.service -install -p -D -m 644 %{SOURCE5} %{buildroot}%{_unitdir}/openstack-heat-api-cloudwatch.service -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/openstack-heat-all.service - -mkdir -p %{buildroot}/%{_sharedstatedir}/heat/ -mkdir -p %{buildroot}/%{_sysconfdir}/heat/ - -%if 0%{?with_doc} -export PBR_VERSION=%{version} -%{__python2} setup.py build_sphinx -b html -%{__python2} setup.py build_sphinx -b man -mkdir -p %{buildroot}%{_mandir}/man1 -install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ -%endif - -rm -f %{buildroot}/%{_bindir}/heat-db-setup -rm -f %{buildroot}/%{_mandir}/man1/heat-db-setup.* -rm -rf %{buildroot}/var/lib/heat/.dummy -rm -f %{buildroot}/usr/bin/cinder-keystone-setup - -install -p -D -m 640 etc/heat/heat.conf.sample %{buildroot}/%{_sysconfdir}/heat/heat.conf -install -p -D -m 640 %{SOURCE20} %{buildroot}%{_datadir}/heat/heat-dist.conf -crudini --set %{buildroot}%{_datadir}/heat/heat-dist.conf revision heat_revision %{version} -install -p -D -m 640 etc/heat/api-paste.ini %{buildroot}/%{_datadir}/heat/api-paste-dist.ini -install -p -D -m 640 etc/heat/policy.json %{buildroot}/%{_sysconfdir}/heat - -# TODO: move this to setup.cfg -cp -vr etc/heat/templates %{buildroot}/%{_sysconfdir}/heat -cp -vr etc/heat/environment.d %{buildroot}/%{_sysconfdir}/heat - -# WRS Manually stage non-code files -install -p -D -m 640 etc/heat/api-paste.ini %{buildroot}/%{_sysconfdir}/heat/api-paste.ini -install -p -D -m 755 %{SOURCE22} %{buildroot}/%{_bindir}/heat-purge-deleted-active -chmod 750 %{buildroot}/%{_sysconfdir}/heat -install -p -D -m 644 heat/db/sqlalchemy/migrate_repo/migrate.cfg %{buildroot}%{python_sitelib}/heat/db/sqlalchemy/migrate_repo/migrate.cfg -install -p -D -m 755 heat/cloudinit/boothook.sh %{buildroot}%{python_sitelib}/heat/cloudinit/boothook.sh -install -p -D -m 644 heat/cloudinit/config %{buildroot}%{python_sitelib}/heat/cloudinit/config - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{buildroot}%{python2_sitelib}/heat/locale/*/LC_*/heat*po -rm -f %{buildroot}%{python2_sitelib}/heat/locale/*pot -mv %{buildroot}%{python2_sitelib}/heat/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang heat --all-name - -%description -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -%package common -Summary: Heat common -Group: System Environment/Base - -Requires: python-pbr -Requires: python-croniter -Requires: python-eventlet -Requires: python-stevedore >= 1.20.0 -Requires: python-lxml -Requires: python-netaddr -Requires: python-osprofiler -Requires: python-paste-deploy -Requires: python-requests -Requires: python-routes -Requires: python-sqlalchemy -Requires: python-migrate -Requires: python-webob -Requires: python-six >= 1.9.0 -Requires: PyYAML -Requires: python-paramiko -Requires: python-babel >= 2.3.4 -Requires: python-cryptography >= 1.6 -Requires: python-yaql >= 1.1.0 - -Requires: python-oslo-cache -Requires: python-oslo-concurrency -Requires: python-oslo-config -Requires: python-oslo-context -Requires: python-oslo-utils -Requires: python-oslo-db -Requires: python-oslo-i18n -Requires: python-oslo-middleware -Requires: python-oslo-messaging -Requires: python-oslo-policy -Requires: python-oslo-reports -Requires: python-oslo-serialization -Requires: python-oslo-service -Requires: python-oslo-log -Requires: python-oslo-versionedobjects - -Requires: python-cinderclient -Requires: python-glanceclient -Requires: python-heatclient -Requires: python-keystoneclient -Requires: python-keystonemiddleware -Requires: python-neutronclient -Requires: python-novaclient -#Requires: python-saharaclient -Requires: python-swiftclient -#Requires: python-troveclient - -Requires: python-debtcollector >= 1.2.0 -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-crypto >= 2.6 -#Requires: python-barbicanclient -#Requires: python-designateclient -#Requires: python-manilaclient -#Requires: python-mistralclient -Requires: python-openstackclient -Requires: python-zaqarclient -Requires: python-aodhclient -Requires: python-magnumclient -#Requires: python-senlinclient -Requires: python-openstacksdk -Requires: pytz -Requires: python-tenacity >= 3.2.1 - -Requires(pre): shadow-utils - -%description common -Components common to all OpenStack Heat services - -%files common -f heat.lang -%doc LICENSE -%{_bindir}/heat-manage -%{_bindir}/heat-keystone-setup -%{_bindir}/heat-keystone-setup-domain -%{_bindir}/heat-purge-deleted-active -%{python2_sitelib}/heat -%{python2_sitelib}/heat-%{upstream_version}-*.egg-info -%exclude %{python2_sitelib}/heat/tests -%attr(-, root, heat) %{_datadir}/heat/heat-dist.conf -%attr(-, root, heat) %{_datadir}/heat/api-paste-dist.ini -%dir %attr(0750,heat,root) %{_localstatedir}/log/heat -%dir %attr(0750,heat,root) %{_localstatedir}/run/heat -%dir %attr(0750,heat,root) %{_sharedstatedir}/heat -%dir %attr(0755,heat,root) %{_sysconfdir}/heat -%config(noreplace) %attr(-, root, heat) %{_sysconfdir}/heat/heat.conf -%config(noreplace) %attr(-, root, heat) %{_sysconfdir}/heat/api-paste.ini -%config(noreplace) %attr(-, root, heat) %{_sysconfdir}/heat/policy.json -%config(noreplace) %attr(-,root,heat) %{_sysconfdir}/heat/environment.d/* -%config(noreplace) %attr(-,root,heat) %{_sysconfdir}/heat/templates/* -%if 0%{?with_doc} -%{_mandir}/man1/heat-keystone-setup.1.gz -%{_mandir}/man1/heat-keystone-setup-domain.1.gz -%{_mandir}/man1/heat-manage.1.gz -%endif - -%files -n python-heat-tests -%license LICENSE -%{python2_sitelib}/heat/tests -%{python2_sitelib}/heat_integrationtests -%{python2_sitelib}/%{service}_tests.egg-info - -%pre common -# 187:187 for heat - rhbz#845078 -getent group heat >/dev/null || groupadd -r --gid 187 heat -getent passwd heat >/dev/null || \ -useradd --uid 187 -r -g heat -d %{_sharedstatedir}/heat -s /sbin/nologin \ --c "OpenStack Heat Daemons" heat -exit 0 - -%package engine -Summary: The Heat engine - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description engine -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -The heat-engine's main responsibility is to orchestrate the launching of -templates and provide events back to the API consumer. - -%files engine -%doc README.rst LICENSE -%if 0%{?with_doc} -%doc doc/build/html/man/heat-engine.html -%endif -%{_bindir}/heat-engine -%{_unitdir}/openstack-heat-engine.service -%if 0%{?with_doc} -%{_mandir}/man1/heat-engine.1.gz -%endif - -%post engine -%systemd_post openstack-heat-engine.service - -%preun engine -%systemd_preun openstack-heat-engine.service - -%postun engine -%systemd_postun_with_restart openstack-heat-engine.service - - -%package api -Summary: The Heat API - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description api -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -The heat-api component provides an OpenStack-native REST API that processes API -requests by sending them to the heat-engine over RPC. - -%files api -%doc README.rst LICENSE -%if 0%{?with_doc} -%doc doc/build/html/man/heat-api.html -%endif -%{_bindir}/heat-api -%{_bindir}/heat-wsgi-api -%{_unitdir}/openstack-heat-api.service -%if 0%{?with_doc} -%{_mandir}/man1/heat-api.1.gz -%endif - -%post api -%systemd_post openstack-heat-api.service - -%preun api -%systemd_preun openstack-heat-api.service - -%postun api -%systemd_postun_with_restart openstack-heat-api.service - - -%package api-cfn -Summary: Heat CloudFormation API - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description api-cfn -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -The heat-api-cfn component provides an AWS Query API that is compatible with -AWS CloudFormation and processes API requests by sending them to the -heat-engine over RPC. - -%files api-cfn -%doc README.rst LICENSE -%if 0%{?with_doc} -%doc doc/build/html/man/heat-api-cfn.html -%endif -%{_bindir}/heat-api-cfn -%{_bindir}/heat-wsgi-api-cfn -%{_unitdir}/openstack-heat-api-cfn.service -%if 0%{?with_doc} -%{_mandir}/man1/heat-api-cfn.1.gz -%endif - -%post api-cfn -%systemd_post openstack-heat-api-cloudwatch.service - -%preun api-cfn -%systemd_preun openstack-heat-api-cloudwatch.service - -%postun api-cfn -%systemd_postun_with_restart openstack-heat-api-cloudwatch.service - - -%package api-cloudwatch -Summary: Heat CloudWatch API - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description api-cloudwatch -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -AWS CloudWatch-compatible API to the Heat Engine - -%files api-cloudwatch -%doc README.rst LICENSE -%if 0%{?with_doc} -%doc doc/build/html/man/heat-api-cloudwatch.html -%endif -%{_bindir}/heat-api-cloudwatch -%{_bindir}/heat-wsgi-api-cloudwatch -%{_unitdir}/openstack-heat-api-cloudwatch.service -%if 0%{?with_doc} -%{_mandir}/man1/heat-api-cloudwatch.1.gz -%endif - -%post api-cloudwatch -%systemd_post openstack-heat-api-cfn.service - -%preun api-cloudwatch -%systemd_preun openstack-heat-api-cfn.service - -%postun api-cloudwatch -%systemd_postun_with_restart openstack-heat-api-cfn.service - - -%package monolith -Summary: The combined Heat engine/API - -Requires: %{name}-common = %{epoch}:%{version}-%{release} - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -%description monolith -Heat is a service to orchestrate composite cloud applications using a -declarative template format through an OpenStack-native REST API. - -The heat-all process bundles together any (or all) of heat-engine, heat-api, -heat-cfn-api, and heat-cloudwatch-api into a single process. This can be used -to bootstrap a minimal TripleO deployment, but is not the recommended way of -running the Heat service in general. - -%files monolith -%doc README.rst LICENSE -%{_bindir}/heat-all -%{_unitdir}/openstack-heat-all.service - -%post monolith -%systemd_post openstack-heat-all.service - -%preun monolith -%systemd_preun openstack-heat-all.service - -%postun monolith -%systemd_postun_with_restart openstack-heat-all.service - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - - -%changelog -* Wed Aug 30 2017 rdo-trunk 1:9.0.0-1 -- Update to 9.0.0 - -* Fri Aug 25 2017 rdo-trunk 1:9.0.0-0.2.0rc2 -- Update to 9.0.0.0rc2 - -* Tue Aug 22 2017 Alfredo Moralejo 1:9.0.0-0.1.0rc1 -- Update to 9.0.0.0rc1 - diff --git a/openstack/python-networking-bgpvpn/centos/build_srpm.data b/openstack/python-networking-bgpvpn/centos/build_srpm.data deleted file mode 100644 index 9f4edb31..00000000 --- a/openstack/python-networking-bgpvpn/centos/build_srpm.data +++ /dev/null @@ -1,4 +0,0 @@ -TAR_NAME=python-networking-bgpvpn -SRC_DIR="$CGCS_BASE/git/networking-bgpvpn" -TIS_BASE_SRCREV=bf87af3bab560f737bd3de273733a5702a23d939 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-networking-bgpvpn/centos/python-networking-bgpvpn.spec b/openstack/python-networking-bgpvpn/centos/python-networking-bgpvpn.spec deleted file mode 100644 index 4379cae5..00000000 --- a/openstack/python-networking-bgpvpn/centos/python-networking-bgpvpn.spec +++ /dev/null @@ -1,171 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -%global pypi_name networking-bgpvpn -%global sname networking_bgpvpn -%global service neutron - -Name: python-%{pypi_name} -Version: 7.0.0 -Release: 0%{?_tis_dist}.%{tis_patch_ver} -Summary: API and Framework to interconnect bgpvpn to neutron networks - -License: ASL 2.0 -URL: https://github.com/openstack/networking-bgpvpn -Source0: %{name}-%{version}.tar.gz - -BuildArch: noarch - -BuildRequires: python-webob -BuildRequires: python-webtest -BuildRequires: python-coverage -BuildRequires: python-hacking -BuildRequires: python-neutron-tests -BuildRequires: python-neutron -BuildRequires: python-oslo-sphinx -BuildRequires: python-oslotest -BuildRequires: python-openstackclient -BuildRequires: python-openvswitch -BuildRequires: python-pbr -BuildRequires: python-reno -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-sphinx -BuildRequires: python-subunit -BuildRequires: python-testrepository -BuildRequires: python-testresources -BuildRequires: python-testscenarios -BuildRequires: python-testtools -BuildRequires: python2-devel - -%description -BGPMPLS VPN Extension for OpenStack Networking This project provides an API and -Framework to interconnect BGP/MPLS VPNs to Openstack Neutron networks, routers -and ports.The Border Gateway Protocol and MultiProtocol Label Switching are -widely used Wide Area Networking technologies. The primary purpose of this -project is to allow attachment of Neutron networks and/or routers to carrier -provided. - -%package -n python2-%{pypi_name} -Summary: API and Framework to interconnect bgpvpn to neutron networks -%{?python_provide:%python_provide python2-%{pypi_name}} - -Requires: python-pbr >= 1.6 -Requires: python-babel >= 2.3.4 -Requires: python-neutron-lib >= 0.4.0 -Requires: python-oslo-config >= 2.3.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-db >= 2.4.1 -Requires: python-oslo-log >= 1.8.0 -Requires: python-oslo-utils >= 2.0.0 -Requires: python-setuptools - -%description -n python2-%{pypi_name} -BGPMPLS VPN Extension for OpenStack Networking This project provides an API and -Framework to interconnect BGP/MPLS VPNs to Openstack Neutron networks, routers -and ports.The Border Gateway Protocol and MultiProtocol Label Switching are -widely used Wide Area Networking technologies. The primary purpose of this -project is to allow attachment of Neutron networks and/or routers to carrier -provided. - -%package -n python-%{pypi_name}-doc -Summary: networking-bgpvpn documentation -%description -n python-%{pypi_name}-doc -Documentation for networking-bgpvpn - -%package -n python-%{pypi_name}-tests -Summary: networking-bgpvpn tests -Requires: python-%{pypi_name} = %{version}-%{release} - -%description -n python-%{pypi_name}-tests -Networking-bgpvpn set of tests - -%package -n python-%{pypi_name}-dashboard -Summary: networking-bgpvpn dashboard -Requires: python-%{pypi_name} = %{version}-%{release} - -%description -n python-%{pypi_name}-dashboard -Dashboard to be able to handle BGPVPN functionality via Horizon - -%package -n python-%{pypi_name}-heat -Summary: networking-bgpvpn heat -Requires: python-%{pypi_name} = %{version}-%{release} - -%description -n python-%{pypi_name}-heat -Networking-bgpvpn heat resources - -%prep -%autosetup -n %{name}-%{upstream_version} -S git -# Remove bundled egg-info -rm -rf %{pypi_name}.egg-info - -%build -export PBR_VERSION=%{version} -%py2_build -# generate html docs -# TODO: the doc generation is commented until python-sphinxcontrib-* packages -# are included in CBS. This needs to be fixed. -#%{__python2} setup.py build_sphinx -# remove the sphinx-build leftovers -rm -rf html/.{doctrees,buildinfo} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%py2_install -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -mkdir -p %{buildroot}%{_sysconfdir}/%{service}/policy.d -mv %{buildroot}/usr/etc/neutron/networking_bgpvpn.conf %{buildroot}%{_sysconfdir}/%{service}/ -mv %{buildroot}/usr/etc/neutron/policy.d/bgpvpn.conf %{buildroot}%{_sysconfdir}/%{service}/policy.d/ - -# Make sure neutron-server loads new configuration file -mkdir -p %{buildroot}/%{_datadir}/neutron/server -ln -s %{_sysconfdir}/%{service}/networking_bgpvpn.conf %{buildroot}%{_datadir}/%{service}/server/networking_bgpvpn.conf - - -%files -n python2-%{pypi_name} -%license LICENSE -%doc README.rst -%{python2_sitelib}/%{sname} -%{python2_sitelib}/networking_bgpvpn-*.egg-info -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/networking_bgpvpn.conf -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/policy.d/bgpvpn.conf -%{_datadir}/%{service}/server/networking_bgpvpn.conf -%exclude %{python2_sitelib}/%{sname}/tests -%exclude %{python2_sitelib}/bgpvpn_dashboard -%exclude %{python2_sitelib}/networking_bgpvpn_heat -%exclude %{python2_sitelib}/networking_bgpvpn_tempest - -%files -n python-%{pypi_name}-doc -#%doc html -%license LICENSE - -%files -n python-%{pypi_name}-tests -%license LICENSE -%doc networking_bgpvpn_tempest/README.rst -%{python2_sitelib}/networking_bgpvpn_tempest -%{python2_sitelib}/%{sname}/tests - -%files -n python-%{pypi_name}-dashboard -%license LICENSE -%{python2_sitelib}/bgpvpn_dashboard/ - -%files -n python-%{pypi_name}-heat -%license LICENSE -%{python2_sitelib}/networking_bgpvpn_heat - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Mon Mar 13 2017 Matt Peters 5.0.0-0 -- Initial Version based on CentOS distribution. diff --git a/openstack/python-networking-odl/centos/build_srpm.data b/openstack/python-networking-odl/centos/build_srpm.data deleted file mode 100644 index 9f51653e..00000000 --- a/openstack/python-networking-odl/centos/build_srpm.data +++ /dev/null @@ -1,4 +0,0 @@ -TAR_NAME=python-networking-odl -SRC_DIR="$CGCS_BASE/git/networking-odl" -TIS_BASE_SRCREV=77cbc291fb689ce01e88963ce8e34e4df3dfe2bf -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-networking-odl/centos/python-networking-odl.spec b/openstack/python-networking-odl/centos/python-networking-odl.spec deleted file mode 100644 index 3557a5f0..00000000 --- a/openstack/python-networking-odl/centos/python-networking-odl.spec +++ /dev/null @@ -1,94 +0,0 @@ -%global drv_vendor OpenDaylight -%global pkgname networking-odl -%global srcname networking_odl -%global docpath doc/build/html - -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -Name: python-%{pkgname} -Epoch: 1 -Version: 11.0.0 -Release: 0%{?_tis_dist}.%{tis_patch_ver} -Summary: %{drv_vendor} OpenStack Neutron driver - -License: ASL 2.0 -URL: https://pypi.python.org/pypi/%{pkgname} -Source0: %{name}-%{version}.tar.gz - -BuildArch: noarch - -BuildRequires: git -BuildRequires: python2-devel -BuildRequires: python-mock -#BuildRequires: python-neutron-tests -BuildRequires: python-openstackdocstheme -#BuildRequires: python-oslotest -BuildRequires: python-oslo-config -BuildRequires: python-oslo-sphinx -BuildRequires: python-pbr -BuildRequires: python-sphinx -BuildRequires: python-testrepository -BuildRequires: python-testtools -BuildRequires: python2-pip -BuildRequires: python2-wheel - -Requires: openstack-neutron-ml2 -Requires: python-babel -Requires: python-pbr -Requires: python-websocket-client -Requires: python-stevedore -Requires: python-neutron-lib -Requires: python-debtcollector - -%description -This package contains %{drv_vendor} networking driver for OpenStack Neutron. - - -%prep -%autosetup -n %{name}-%{upstream_version} -S git -# Remove gate hooks -rm -rf %{srcname}/tests/contrib - -%build -export PBR_VERSION=%{version} -rm requirements.txt test-requirements.txt -%{__python2} setup.py build -%{__python2} setup.py build_sphinx -b html -rm %{docpath}/.buildinfo - -%py2_build_wheel - -#%check -#%{__python2} setup.py testr - - -%install -export PBR_VERSION=%{version} -export SKIP_PIP_INSTALL=1 -%{__python2} setup.py install --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -%files -%license LICENSE -%doc %{docpath} -%{_bindir}/neutron-odl-ovs-hostconfig -%{python2_sitelib}/%{srcname} -%{python2_sitelib}/%{srcname}-%{version}-py%{python2_version}.egg-info - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 1:11.0.0-1 -- Update to 11.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 1:11.0.0-0.1.0rc2 -- Update to 11.0.0.0rc2 - diff --git a/openstack/python-networking-odl/python-networking-odl/LICENSE b/openstack/python-networking-odl/python-networking-odl/LICENSE deleted file mode 100644 index 68c771a0..00000000 --- a/openstack/python-networking-odl/python-networking-odl/LICENSE +++ /dev/null @@ -1,176 +0,0 @@ - - Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ - - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - diff --git a/openstack/python-networking-sfc/centos/build_srpm.data b/openstack/python-networking-sfc/centos/build_srpm.data deleted file mode 100644 index cc6c8813..00000000 --- a/openstack/python-networking-sfc/centos/build_srpm.data +++ /dev/null @@ -1,4 +0,0 @@ -TAR_NAME=python-networking-sfc -SRC_DIR="$CGCS_BASE/git/networking-sfc" -TIS_BASE_SRCREV=af2ee0cf50e2295d2b0eee48640d81fcd6c472c8 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-networking-sfc/centos/python-networking-sfc.spec b/openstack/python-networking-sfc/centos/python-networking-sfc.spec deleted file mode 100644 index f83a118c..00000000 --- a/openstack/python-networking-sfc/centos/python-networking-sfc.spec +++ /dev/null @@ -1,207 +0,0 @@ -%global pypi_name networking-sfc -%global module networking_sfc -%global with_doc 0 - -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -Name: python-%{pypi_name} -Version: 5.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: API and implementations to support Service Function Chaining in Neutron - -License: ASL 2.0 -URL: https://github.com/openstack/networking-sfc -Source0: %{name}-%{version}.tar.gz - -# - -BuildArch: noarch - -BuildRequires: openstack-macros -BuildRequires: git -BuildRequires: python2-devel -BuildRequires: python-pbr -BuildRequires: python-openstackdocstheme -BuildRequires: python-sphinx -#BuildRequires: openstack-neutron -# Test requirements -BuildRequires: python-mock -BuildRequires: python-requests-mock -BuildRequires: python-oslotest -BuildRequires: python-testrepository -BuildRequires: python-testresources -BuildRequires: python-testscenarios -BuildRequires: python-neutron-lib-tests -BuildRequires: python-neutron-tests -BuildRequires: python2-pip -BuildRequires: python2-wheel - -%description -This project provides APIs and implementations to support Service Function -Chaining in Neutron. - -Service Function Chaining is a mechanism for overriding the basic destination -based forwarding that is typical of IP networks. It is conceptually related to -Policy Based Routing in physical networks but it is typically thought of as a -Software Defined Networking technology. It is often used in conjunction with -security functions although it may be used for a broader range of features. -Fundamentally SFC is the ability to cause network packet flows to route through -a network via a path other than the one that would be chosen by routing table -lookup on the packet's destination IP address. It is most commonly used in -conjunction with Network Function Virtualization when recreating in a virtual -environment a series of network functions that would have traditionally been -implemented as a collection of physical network devices connected in series by -cables. - -%package -n python2-%{pypi_name} -Summary: API and implementations to support Service Function Chaining in Neutron -%{?python_provide:%python_provide python2-%{pypi_name}} - -#Requires: openstack-neutron-common -#Requires: openstack-neutron -Requires: python-alembic -Requires: python-eventlet -Requires: python-netaddr -Requires: python-neutron -Requires: python-neutron-lib >= 1.9.0 -Requires: python-neutronclient >= 6.3.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-six -Requires: python-sqlalchemy -Requires: python-stevedore >= 1.20.0 - -%description -n python2-%{pypi_name} -This project provides APIs and implementations to support Service Function -Chaining in Neutron. - -Service Function Chaining is a mechanism for overriding the basic destination -based forwarding that is typical of IP networks. It is conceptually related to -Policy Based Routing in physical networks but it is typically thought of as a -Software Defined Networking technology. It is often used in conjunction with -security functions although it may be used for a broader range of features. -Fundamentally SFC is the ability to cause network packet flows to route through -a network via a path other than the one that would be chosen by routing table -lookup on the packet's destination IP address. It is most commonly used in -conjunction with Network Function Virtualization when recreating in a virtual -environment a series of network functions that would have traditionally been -implemented as a collection of physical network devices connected in series by -cables. - - -%if 0%{?with_doc} -%package -n python-%{pypi_name}-doc -Summary: Documentation for networking-sfc -%description -n python-%{pypi_name}-doc -Documentation for networking-sfc -%endif - -%package -n python2-%{pypi_name}-tests -Summary: Tests for networking-sfc -Requires: python2-%{pypi_name} = %{version}-%{release} -Requires: python-mock -Requires: python-requests-mock -Requires: python-oslotest -Requires: python-testrepository -Requires: python-testresources -Requires: python-testscenarios -Requires: python-neutron-lib-tests -Requires: python-neutron-tests - -%description -n python2-%{pypi_name}-tests -Networking-sfc set of tests - -%package -n python2-%{pypi_name}-tests-tempest -Summary: Tempest plugin for %{name} - -Requires: python2-%{pypi_name} = %{version}-%{release} -Requires: python-tempest-tests - -%description -n python2-%{pypi_name}-tests-tempest -It contains the tempest plugin for %{name}. - -%prep -%autosetup -n %{name}-%{upstream_version} -# Let RPM handle the dependencies -%py_req_cleanup - -# Remove bundled egg-info -rm -rf %{pypi_name}.egg-info -# FIXME(bcafarel): require neutronclient.tests.unit (python-neutronclient-tests package was dropped) -rm -rf %{module}/tests/unit/cli - -%build -export PBR_VERSION=%{version} -%py2_build -%if 0%{?with_doc} -%{__python2} setup.py build_sphinx -b html -# remove the sphinx-build leftovers -rm -rf doc/build/html/.{doctrees,buildinfo} -%endif -# generate the configuration file -PYTHONPATH=. oslo-config-generator --config-file etc/oslo-config-generator/networking-sfc.conf - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%py2_install -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Create a fake tempest plugin entrypoint -%py2_entrypoint %{module} %{pypi_name} - -# The generated config files are not moved automatically by setup.py -mkdir -p %{buildroot}%{_sysconfdir}/neutron/conf.d/neutron-server -mv etc/networking-sfc.conf.sample %{buildroot}%{_sysconfdir}/neutron/conf.d/neutron-server/networking-sfc.conf - -#%check -#export OS_TEST_PATH='./networking_sfc/tests/functional' -#export PATH=$PATH:$RPM_BUILD_ROOT/usr/bin -#%{__python2} setup.py testr - -%files -n python2-%{pypi_name} -%license LICENSE -%doc README.rst -%{python2_sitelib}/%{module} -%{python2_sitelib}/%{module}-*.egg-info -%config(noreplace) %attr(0640, root, neutron) %{_sysconfdir}/neutron/conf.d/neutron-server/networking-sfc.conf -%exclude %{python2_sitelib}/%{module}/tests - -%if 0%{?with_doc} -%files -n python-%{pypi_name}-doc -%doc doc/build/html/* -%license LICENSE -%endif - -%files -n python2-%{pypi_name}-tests -%{python2_sitelib}/%{module}/tests -%exclude %{python2_sitelib}/%{module}/tests/contrib -%exclude %{python2_sitelib}/%{module}/tests/tempest_plugin - -%files -n python2-%{pypi_name}-tests-tempest -%{python2_sitelib}/%{module}_tests.egg-info -%{python2_sitelib}/%{module}/tests/tempest_plugin -%{python2_sitelib}/%{module}/tests/__init__.py* - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Aug 30 2017 rdo-trunk 5.0.0-1 -- Update to 5.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 5.0.0-0.1.0rc2 -- Update to 5.0.0.0rc2 - diff --git a/openstack/python-neutron-dynamic-routing/centos/build_srpm.data b/openstack/python-neutron-dynamic-routing/centos/build_srpm.data deleted file mode 100644 index ad2138c8..00000000 --- a/openstack/python-neutron-dynamic-routing/centos/build_srpm.data +++ /dev/null @@ -1,5 +0,0 @@ -TAR_NAME=python-neutron-dynamic-routing -SRC_DIR="$CGCS_BASE/git/neutron-dynamic-routing" -COPY_LIST="$FILES_BASE/*" -TIS_BASE_SRCREV=9098d4447581117e857d2f86fb4a0508b5ffbb6a -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.init b/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.init deleted file mode 100755 index cf7c9eeb..00000000 --- a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.init +++ /dev/null @@ -1,97 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: neutron-bgp-dragent -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Short-Description: neutron-bgp-dragent -# Description: Provides the Neutron bgp dynamic-routing agent -### END INIT INFO - -DESC="neutron-bgp-dragent" -DAEMON="/usr/bin/neutron-bgp-dragent" -PIDFILE="/var/run/neutron-bgp-dragent.pid" -DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/bgp_dragent.ini" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- $DAEMON_ARGS - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -reset() -{ - stop - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.pmon b/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.pmon deleted file mode 100644 index 8b956d9c..00000000 --- a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.pmon +++ /dev/null @@ -1,16 +0,0 @@ -[process] -process = neutron-bgp-dragent -pidfile = /var/run/neutron-bgp-dragent.pid -script = /etc/init.d/neutron-bgp-dragent -style = lsb ; ocf or lsb -severity = major ; minor, major, critical -restarts = 3 ; restarts before error assertion -interval = 5 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring diff --git a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.service b/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.service deleted file mode 100644 index f6602021..00000000 --- a/openstack/python-neutron-dynamic-routing/centos/files/neutron-bgp-dragent.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Neutron BGP Dynamic Routing agent -After=syslog.target neutron-server.service - -[Service] -Type=simple -ExecStart=/etc/rc.d/init.d/neutron-bgp-dragent start -ExecStop=/etc/rc.d/init.d/neutron-bgp-dragent stop -ExecReload=/etc/rc.d/init.d/neutron-bgp-dragent reload -PrivateTmp=true -PIDFile=/var/run/neutron-bgp-dragent.pid -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron-dynamic-routing/centos/python-neutron-dynamic-routing.spec b/openstack/python-neutron-dynamic-routing/centos/python-neutron-dynamic-routing.spec deleted file mode 100644 index 66dd2ebf..00000000 --- a/openstack/python-neutron-dynamic-routing/centos/python-neutron-dynamic-routing.spec +++ /dev/null @@ -1,145 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -%global pypi_name neutron-dynamic-routing -%global sname neutron_dynamic_routing -%global service neutron - -Name: python-%{pypi_name} -Version: 11.0.0 -Release: 0%{?_tis_dist}.%{tis_patch_ver} -Summary: Dynamic routing services for OpenStack Neutron. - -License: ASL 2.0 -URL: https://github.com/openstack/neutron-dynamic-routing -Source0: %{name}-%{version}.tar.gz - -# WRS -Source1: neutron-bgp-dragent.init -Source2: neutron-bgp-dragent.service -Source3: neutron-bgp-dragent.pmon - -BuildArch: noarch - -BuildRequires: python-coverage -BuildRequires: python-hacking -BuildRequires: python-oslo-config -BuildRequires: python-oslo-sphinx -BuildRequires: python-oslotest -BuildRequires: python-pbr -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-sphinx -BuildRequires: python-subunit -BuildRequires: python-testrepository -BuildRequires: python-testscenarios -BuildRequires: python-testtools -BuildRequires: python2-devel - -%description -Neutron dynamic routing enables advertisement of self-service (private) network prefixes -to physical network devices that support dynamic routing protocols such as routers, thus -removing the conventional dependency on static routes. - -%package -n python2-%{pypi_name} -Summary: Dynamic routing services for OpenStack Neutron. - -Requires: python-pbr >= 1.6 -Requires: python-eventlet >= 0.18.4 -Requires: python-httplib2 >= 0.7.5 -Requires: python-netaddr >= 0.7.18 -Requires: python-six >= 1.9.0 -Requires: python-neutron-lib >= 0.4.0 -Requires: python-oslo-config >= 3.14.0 -Requires: python-oslo-db >= 4.13.3 -Requires: python-oslo-log >= 1.14.0 -Requires: python-oslo-messaging >= 5.2.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.16.0 - -%description -n python2-%{pypi_name} -Neutron dynamic routing enables advertisement of self-service (private) network prefixes -to physical network devices that support dynamic routing protocols such as routers, thus - -%package -n python-%{pypi_name}-doc -Summary: neutron-dynamic-routing documentation -%description -n python-%{pypi_name}-doc -Documentation for neutron-dynamic-routing - -%package -n python-%{pypi_name}-tests -Summary: neutron-dynamic-routing tests -Requires: python-%{pypi_name} = %{version}-%{release} -%description -n python-%{pypi_name}-tests -neutron-dynamic-routing set of tests - -%prep -%autosetup -n %{name}-%{upstream_version} -S git -# Remove bundled egg-info -rm -rf %{pypi_name}.egg-info - -%build -export PBR_VERSION=%{version} -%py2_build -# Generate sample config and add the current directory to PYTHONPATH so -# oslo-config-generator doesn't skip entry points. -PYTHONPATH=. oslo-config-generator --config-file=./etc/oslo-config-generator/bgp_dragent.ini -# generate html docs -#%{__python2} setup.py build_sphinx -# remove the sphinx-build leftovers -rm -rf html/.{doctrees,buildinfo} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} - -install -p -D -m 644 %{SOURCE2} %{buildroot}%{_unitdir}/neutron-bgp-dragent.service -install -d %{buildroot}%{_sysconfdir}/init.d -install -m 755 %{SOURCE1} %{buildroot}%{_sysconfdir}/init.d/neutron-bgp-dragent -install -d %{buildroot}%{_sysconfdir}/%{service}/pmon -install -m 755 %{SOURCE3} %{buildroot}%{_sysconfdir}/%{service}/pmon/neutron-bgp-dragent.conf -%py2_install -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -mkdir -p %{buildroot}%{_sysconfdir}/%{service}/policy.d -mv %{buildroot}/usr/etc/%{service}/policy.d/dynamic_routing.conf %{buildroot}%{_sysconfdir}/%{service}/policy.d/ -mv etc/bgp_dragent.ini.sample %{buildroot}%{_sysconfdir}/%{service}/bgp_dragent.ini - - -%files -n python2-%{pypi_name} -%license LICENSE -%doc README.rst -%{python2_sitelib}/%{sname} -%{python2_sitelib}/%{sname}-*.egg-info -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/policy.d/dynamic_routing.conf -%{_bindir}/neutron-bgp-dragent -%exclude %{python2_sitelib}/%{sname}/tests -%{_unitdir}/neutron-bgp-dragent.service -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/pmon/neutron-bgp-dragent.conf -%{_sysconfdir}/init.d/%{service}-bgp-dragent -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/bgp_dragent.ini - - -%files -n python-%{pypi_name}-doc -#%doc html -%license LICENSE - -%files -n python-%{pypi_name}-tests -%license LICENSE -%{python2_sitelib}/%{sname}/tests - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - - -%changelog -* Mon Mar 13 2017 Matt Peters 9.2.0-0 -- Initial Version diff --git a/openstack/python-neutron-lib/centos/build_srpm.data b/openstack/python-neutron-lib/centos/build_srpm.data deleted file mode 100644 index 6214e19a..00000000 --- a/openstack/python-neutron-lib/centos/build_srpm.data +++ /dev/null @@ -1,4 +0,0 @@ -TAR_NAME=python-neutron-lib -SRC_DIR="$CGCS_BASE/git/neutron-lib" -TIS_BASE_SRCREV=f0d7e470c2ef1702b2715ceb2fd8a00fce2a23be -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-neutron-lib/centos/python-neutron-lib.spec b/openstack/python-neutron-lib/centos/python-neutron-lib.spec deleted file mode 100644 index f642d9e7..00000000 --- a/openstack/python-neutron-lib/centos/python-neutron-lib.spec +++ /dev/null @@ -1,122 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} - -%global library neutron-lib -%global module neutron_lib - -Name: python-%{library} -Version: 1.9.1 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Neutron library -License: ASL 2.0 -URL: http://launchpad.net/neutron/ - -Source0: %{name}-%{version}.tar.gz - -BuildArch: noarch - -BuildRequires: python2-devel -BuildRequires: python-pbr -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: git - -Requires: python-debtcollector >= 1.2.0 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-stevedore - -%description -OpenStack Neutron library shared by all Neutron sub-projects. - - -%package tests -Summary: OpenStack Neutron library tests -Requires: python-%{library} = %{version}-%{release} - -%description tests -OpenStack Neutron library shared by all Neutron sub-projects. - -This package contains the Neutron library test files. - - -%package doc -Summary: OpenStack Neutron library documentation - -BuildRequires: python-sphinx -BuildRequires: python-openstackdocstheme -BuildRequires: python-oslo-context -BuildRequires: python-oslo-concurrency -BuildRequires: python-oslo-db -BuildRequires: python-oslo-i18n -BuildRequires: python-oslo-log -BuildRequires: python-oslo-utils -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-service -BuildRequires: python-netaddr -BuildRequires: python-debtcollector -BuildRequires: python-fixtures - -%description doc -OpenStack Neutron library shared by all Neutron sub-projects. - -This package contains the documentation. - -%prep -%autosetup -n %{name}-%{upstream_version} -S git - -# Let's handle dependencies ourseleves -rm -f *requirements.txt - -%build -export PBR_VERSION=%{version} -%py2_build -# generate html docs -%{__python2} setup.py build_sphinx -b html -# remove the sphinx-build leftovers -rm -rf doc/build/html/.{doctrees,buildinfo} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%py2_install -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -%files -%license LICENSE -%{python2_sitelib}/%{module} -%{python2_sitelib}/%{module}-*.egg-info -%exclude %{python2_sitelib}/%{module}/tests - -%files tests -%license LICENSE -%{python2_sitelib}/%{module}/tests - -%files doc -%license LICENSE -%doc doc/build/html README.rst - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Mon Aug 21 2017 Alfredo Moralejo 1.9.1-1 -- Update to 1.9.1 - diff --git a/openstack/python-neutron/centos/build_srpm.data b/openstack/python-neutron/centos/build_srpm.data deleted file mode 100644 index a3bd51e6..00000000 --- a/openstack/python-neutron/centos/build_srpm.data +++ /dev/null @@ -1,5 +0,0 @@ -TAR_NAME="neutron" -SRC_DIR="$CGCS_BASE/git/neutron" -COPY_LIST="$FILES_BASE/*" -TIS_BASE_SRCREV=eb2be51d847f8e8b79488b0c956d0d2aa6122ea7 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-neutron/centos/files/NetnsCleanup.ocf_ra b/openstack/python-neutron/centos/files/NetnsCleanup.ocf_ra deleted file mode 100644 index 747f9312..00000000 --- a/openstack/python-neutron/centos/files/NetnsCleanup.ocf_ra +++ /dev/null @@ -1,154 +0,0 @@ -#!/bin/sh -# -# Neutron Netns Cleanup OCF RA. -# Handles the netns cleanup at start / stop of the agent service -# group -# -# Copyright (c) 2014 Red Hat -# -# This is a one-shot OCF resource agent with the next properties: -# -# * It wraps the init.d script to make an OCF-RA -# * It maps the start, stop, monitor to start, stop , status, and provides -# the specific OCF ones. -# * It cleans unused resources during start (system or agents startup) -# * It cleans everything on stop (agents migration to other hosts) -# * Once started, it will respond with status = OK -# * Once stopped, it will respond with status = DEAD -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of version 2 of the GNU General Public License as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it would be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Further, this software is distributed without any warranty that it is -# free of the rightful claim of any third person regarding infringement -# or the like. Any license provided herein, whether implied or -# otherwise, applies only to this software file. Patent licenses, if -# any, provided herein do not apply to combinations of this program with -# other software, or any other product whatsoever. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write the Free Software Foundation, -# Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. -# - -####################################################################### -# Initialization: - - -: ${OCF_FUNCTIONS_DIR=${OCF_ROOT}/lib/heartbeat} -: ${OCF_NEUTRON_DIR=${OCF_ROOT}/lib/neutron} -. ${OCF_FUNCTIONS_DIR}/ocf-shellfuncs - - -WRAPPED_INITD_SCRIPT=${OCF_NEUTRON_DIR}/neutron-netns-cleanup - -####################################################################### - -meta_data() { - cat < - - -1.0 - - -This resource agent does nothing during execution, only executes -a cleanup during start, and a force cleanup during stop of -the netns resources generated by neutron agents. - - -neutron netns cleanup resource agent - - - - - - - - - - - - - - - -END -} - -####################################################################### - - -netns_cleanup_usage() { - cat < - - -1.0 - - -This resource agent sets host parameter in neutron config files to allow -neutron agents to scale - - -neutron host base name resource agent - - - - - neutron host base name - - neutron host base name - - - - - - - - - - - - - - - -END -} - -####################################################################### - -neutronconfigfiles_to_clean="dhcp_agent.ini fwaas_driver.ini lbaas_agent.ini l3_agent.ini metadata_agent.ini plugins/openvswitch/ovs_neutron_plugin.ini" -neutronconfigfile="neutron.conf" - -neutron_scale_usage() { - cat < - - -1.0 - - -This resource agent does nothing during execution, only executes -a cleanup during start, and a force cleanup during stop of -the openvswitch resources generated by neutron agents. - - -neutron OVS cleanup resource agent - - - - - - - - - - - - - - - -END -} - -####################################################################### - - -ovs_cleanup_usage() { - cat </dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload|reset) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/centos/files/neutron-dhcp-agent.pmon b/openstack/python-neutron/centos/files/neutron-dhcp-agent.pmon deleted file mode 100644 index d00fa518..00000000 --- a/openstack/python-neutron/centos/files/neutron-dhcp-agent.pmon +++ /dev/null @@ -1,24 +0,0 @@ -[process] -process = neutron-dhcp-agent -pidfile = /var/run/neutron-dhcp-agent.pid -script = /etc/init.d/neutron-dhcp-agent -style = lsb ; ocf or lsb -severity = major ; minor, major, critical -restarts = 3 ; restarts before error assertion -interval = 5 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring -subfunction = worker ; Optional label. - ; Manage this process in the context of a combo host subfunction - ; Choices: worker or storage. - ; when specified pmond will wait for - ; /var/run/.worker_config_complete or - ; /var/run/.storage_config_complete - ; ... before managing this process with the specified subfunction - ; Excluding this label will cause this process to be managed by default on startup diff --git a/openstack/python-neutron/centos/files/neutron-dhcp-agent.service b/openstack/python-neutron/centos/files/neutron-dhcp-agent.service deleted file mode 100644 index f4ce9051..00000000 --- a/openstack/python-neutron/centos/files/neutron-dhcp-agent.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=Neutron networking agent -After=network.target syslog.target openvswitch.service -Before=pmon.service - -[Service] -Type=forking -RemainAfterExit=yes -ExecStart=/etc/rc.d/init.d/neutron-dhcp-agent start -ExecStop=/etc/rc.d/init.d/neutron-dhcp-agent stop -ExecReload=/etc/rc.d/init.d/neutron-dhcp-agent reload -PIDFile=/var/run/neutron-dhcp-agent.pid -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-dist.conf b/openstack/python-neutron/centos/files/neutron-dist.conf deleted file mode 100644 index 69f03cf4..00000000 --- a/openstack/python-neutron/centos/files/neutron-dist.conf +++ /dev/null @@ -1,11 +0,0 @@ -[DEFAULT] -verbose = True -lock_path = $state_path/lock -notification_driver = neutron.openstack.common.notifier.rpc_notifier -allow_overlapping_ips = True -use_stderr = False -api_paste_config = /usr/share/neutron/api-paste.ini - -[agent] -root_helper = sudo neutron-rootwrap /etc/neutron/rootwrap.conf -root_helper_daemon = sudo neutron-rootwrap-daemon /etc/neutron/rootwrap.conf diff --git a/openstack/python-neutron/centos/files/neutron-l3-agent.service b/openstack/python-neutron/centos/files/neutron-l3-agent.service deleted file mode 100644 index 73a4ada2..00000000 --- a/openstack/python-neutron/centos/files/neutron-l3-agent.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Neutron Layer 3 Agent -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/neutron-l3-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/l3_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-l3-agent -PrivateTmp=false -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-linuxbridge-agent.service b/openstack/python-neutron/centos/files/neutron-linuxbridge-agent.service deleted file mode 100644 index e647962b..00000000 --- a/openstack/python-neutron/centos/files/neutron-linuxbridge-agent.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Neutron Linux Bridge Agent -After=syslog.target network.target - -[Service] -Type=simple -User=neutron -ExecStart=/usr/bin/neutron-linuxbridge-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/linuxbridge_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-linuxbridge-agent --log-file /var/log/neutron/linuxbridge-agent.log -PrivateTmp=true -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-linuxbridge-cleanup.service b/openstack/python-neutron/centos/files/neutron-linuxbridge-cleanup.service deleted file mode 100644 index 579d901e..00000000 --- a/openstack/python-neutron/centos/files/neutron-linuxbridge-cleanup.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Neutron Linux Bridge Cleanup Utility -After=syslog.target network.target -Before=neutron-linuxbridge-agent.service neutron-dhcp-agent.service neutron-l3-agent.service openstack-nova-compute.service - -[Service] -Type=oneshot -User=neutron -ExecStart=/usr/bin/neutron-linuxbridge-cleanup --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/linuxbridge_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-linuxbridge-cleanup --log-file /var/log/neutron/linuxbridge-cleanup.log -ExecStop=/usr/bin/neutron-linuxbridge-cleanup --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/linuxbridge_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-linuxbridge-cleanup --log-file /var/log/neutron/linuxbridge-cleanup.log -PrivateTmp=true -RemainAfterExit=yes - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-macvtap-agent.service b/openstack/python-neutron/centos/files/neutron-macvtap-agent.service deleted file mode 100644 index c62f1d65..00000000 --- a/openstack/python-neutron/centos/files/neutron-macvtap-agent.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Neutron macvtap L2 agent -After=syslog.target - -[Service] -Type=simple -User=neutron -ExecStart=/usr/bin/neutron-macvtap-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-macvtap-agent --log-file /var/log/neutron/macvtap-agent.log -PrivateTmp=true -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-metadata-agent.init b/openstack/python-neutron/centos/files/neutron-metadata-agent.init deleted file mode 100755 index 5d615012..00000000 --- a/openstack/python-neutron/centos/files/neutron-metadata-agent.init +++ /dev/null @@ -1,87 +0,0 @@ -#! /bin/sh - -### BEGIN INIT INFO -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Description: Neutron networking agent -### END INIT INFO - -SUFFIX=metadata -DESC="neutron-$SUFFIX-agent" -DAEMON="/usr/bin/neutron-$SUFFIX-agent" -PIDFILE="/var/run/neutron-$SUFFIX-agent.pid" -DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/metadata_agent.ini" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- ${DAEMON_ARGS} - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload|reset) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/centos/files/neutron-metadata-agent.pmon b/openstack/python-neutron/centos/files/neutron-metadata-agent.pmon deleted file mode 100644 index 64e43c45..00000000 --- a/openstack/python-neutron/centos/files/neutron-metadata-agent.pmon +++ /dev/null @@ -1,24 +0,0 @@ -[process] -process = neutron-metadata-agent -pidfile = /var/run/neutron-metadata-agent.pid -script = /etc/init.d/neutron-metadata-agent -style = lsb ; ocf or lsb -severity = major ; minor, major, critical -restarts = 3 ; restarts before error assertion -interval = 5 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring -subfunction = worker ; Optional label. - ; Manage this process in the context of a combo host subfunction - ; Choices: worker or storage. - ; when specified pmond will wait for - ; /var/run/.worker_config_complete or - ; /var/run/.storage_config_complete - ; ... before managing this process with the specified subfunction - ; Excluding this label will cause this process to be managed by default on startup diff --git a/openstack/python-neutron/centos/files/neutron-metadata-agent.service b/openstack/python-neutron/centos/files/neutron-metadata-agent.service deleted file mode 100644 index b7061be7..00000000 --- a/openstack/python-neutron/centos/files/neutron-metadata-agent.service +++ /dev/null @@ -1,17 +0,0 @@ -[Unit] -Description=Neutron networking agent -After=syslog.target network.target openvswitch.service -Before=pmon.service - -[Service] -Type=forking -RemainAfterExit=yes -ExecStart=/etc/rc.d/init.d/neutron-metadata-agent start -ExecStop=/etc/rc.d/init.d/neutron-metadata-agent stop -ExecReload=/etc/rc.d/init.d/neutron-metadata-agent reload -PIDFile=/var/run/neutron-metadata-agent.pid -KillMode=process - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-neutron/centos/files/neutron-metering-agent.service b/openstack/python-neutron/centos/files/neutron-metering-agent.service deleted file mode 100644 index 703864e4..00000000 --- a/openstack/python-neutron/centos/files/neutron-metering-agent.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Neutron Metering Agent -After=syslog.target network.target - -[Service] -Type=simple -User=neutron -ExecStart=/usr/bin/neutron-metering-agent --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/metering_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-metering-agent --log-file /var/log/neutron/metering-agent.log -PrivateTmp=false -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-netns-cleanup.init b/openstack/python-neutron/centos/files/neutron-netns-cleanup.init deleted file mode 100644 index aef6a070..00000000 --- a/openstack/python-neutron/centos/files/neutron-netns-cleanup.init +++ /dev/null @@ -1,74 +0,0 @@ -#!/bin/bash -# -# neutron-netns-cleanup OpenStack Neutron netns cleanup utility -# -# chkconfig: - 97 02 -# description: OpenStack Neutron netns cleanup utility -# -# This is a one-shot init.d script with the next properties: -# -# * It accepts 3 verbs: start, stop, status -# * It cleans unused resources during start (system or agents startup) -# * It cleans everything on stop (agents migration to other hosts) -# * Once started, it will respond with status = OK -# * Once stopped, it will respond with status = DEAD -# -### END INIT INFO - -. /etc/rc.d/init.d/functions - -proj=neutron -prog=$proj-netns-cleanup -exec="/usr/bin/$prog" -configs=( - "/usr/share/$proj/$proj-dist.conf" \ - "/etc/$proj/$proj.conf" \ - "/etc/$proj/dhcp_agent.ini" -) -configs_str=${configs[@]/#/--config-file } - -[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog - -lockfile=/var/lock/subsys/$prog - -clean() { - cleanopts="$@" - [ -x $exec ] || exit 5 - for config in ${configs[@]}; do - [ -f $config ] || exit 6 - done - runuser -s /bin/bash neutron -c "$exec $cleanopts --log-file /var/log/$proj/netns-cleanup.log $configs_str &>/dev/null" - if [ "x$1" == "x--force" ]; then - killall neutron-ns-metadata-proxy 2>/dev/null || : - killall neutron-keepalived-state-change 2>/dev/null || : - kill $(ps ax | grep -e "keepalived.*\.pid-vrrp" | awk '{print $1}') 2>/dev/null || : - kill $(ps ax | grep -e "radvd.*\.pid\.radvd" | awk '{print $1}') 2>/dev/null || : - kill $(ps ax | grep -e "haproxy .*/conf .*/pid" | awk '{print $1}') 2>/dev/null || : - fi - return $? -} - -retval=0 - -case "$1" in - start) - clean - retval=$? - [ $retval -eq 0 ] && touch $lockfile - ;; - stop) - clean --force - retval=$? - [ $retval -eq 0 ] && rm -f $lockfile - ;; - status) - [ ! -f $lockfile ] && retval=3 - ;; - restart|reload|force-reload|status|condrestart|try-restart) - # Do nothing - ;; - *) - echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" - exit 2 -esac -exit $retval diff --git a/openstack/python-neutron/centos/files/neutron-netns-cleanup.service b/openstack/python-neutron/centos/files/neutron-netns-cleanup.service deleted file mode 100644 index 7a730e4b..00000000 --- a/openstack/python-neutron/centos/files/neutron-netns-cleanup.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Neutron Netns Cleanup Utility -After=syslog.target network.target openvswitch.service -Before=neutron-openvswitch-agent.service neutron-dhcp-agent.service neutron-l3-agent.service openstack-nova-compute.service - -[Service] -Type=oneshot -User=neutron -ExecStart=/usr/bin/neutron-netns-cleanup --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/dhcp_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-netns-cleanup --log-file /var/log/neutron/netns-cleanup.log -ExecStop=/usr/bin/neutron-netns-cleanup --config-file /usr/share/neutron/neutron-dist.conf --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/dhcp_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-netns-cleanup --log-file /var/log/neutron/netns-cleanup.log --force -PrivateTmp=false -RemainAfterExit=yes - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-openvswitch-agent.service b/openstack/python-neutron/centos/files/neutron-openvswitch-agent.service deleted file mode 100644 index bec4178b..00000000 --- a/openstack/python-neutron/centos/files/neutron-openvswitch-agent.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=OpenStack Neutron Open vSwitch Agent -After=syslog.target network.target network.service -PartOf=network.service - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/neutron-openvswitch-agent --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-openvswitch-agent -PrivateTmp=true -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-ovs-cleanup.init b/openstack/python-neutron/centos/files/neutron-ovs-cleanup.init deleted file mode 100644 index 271ab22c..00000000 --- a/openstack/python-neutron/centos/files/neutron-ovs-cleanup.init +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash -# -# neutron-ovs-cleanup OpenStack Open vSwitch cleanup utility -# -# chkconfig: - 97 02 -# description: Purge Open vSwitch of the Neutron devices -# -# This is a one-shot init.d script with the next properties: -# -# * It accepts 3 verbs: start, stop, status -# * It cleans unused resources during start (system or agents startup) -# * It cleans everything on stop (agents migration to other hosts) -# * Once started, it will respond with status = OK -# * Once stopped, it will respond with status = DEAD -# -### END INIT INFO - -. /etc/rc.d/init.d/functions - -proj=neutron -prog=$proj-ovs-cleanup -exec="/usr/bin/$prog" -pidfile="/var/run/$proj/$prog.pid" -configs=( - "/usr/share/$proj/$proj-dist.conf" \ - "/etc/$proj/$proj.conf" \ - "/etc/$proj/plugins/ml2/openvswitch_agent.ini" \ -) -configs_str=${configs[@]/#/--config-file } - -[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog - -lockfile=/var/lock/subsys/$prog - -clean() { - [ -x $exec ] || exit 5 - for config in ${configs[@]}; do - [ -f $config ] || exit 6 - done - runuser -s /bin/bash neutron -c "$exec --log-file /var/log/$proj/ovs-cleanup.log $configs_str &>/dev/null" - return $? -} - -retval=0 - -case "$1" in - start) - clean - retval=$? - [ $retval -eq 0 ] && touch $lockfile - ;; - stop) - clean - retval=$? - [ $retval -eq 0 ] && rm -f $lockfile - ;; - status) - [ ! -f $lockfile ] && retval=3 - ;; - restart|reload|force-reload|condrestart|try-restart) - # Do nothing - ;; - *) - echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}" - exit 2 -esac -exit $retval diff --git a/openstack/python-neutron/centos/files/neutron-ovs-cleanup.service b/openstack/python-neutron/centos/files/neutron-ovs-cleanup.service deleted file mode 100644 index 1d030cf9..00000000 --- a/openstack/python-neutron/centos/files/neutron-ovs-cleanup.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Neutron Open vSwitch Cleanup Utility -After=syslog.target network.target openvswitch.service -Before=neutron-openvswitch-agent.service neutron-dhcp-agent.service neutron-l3-agent.service openstack-nova-compute.service - -[Service] -Type=oneshot -User=root -ExecStart=/usr/bin/neutron-ovs-cleanup --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-ovs-cleanup -ExecStop=/usr/bin/neutron-ovs-cleanup --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugins/ml2/openvswitch_agent.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-ovs-cleanup -PrivateTmp=true -RemainAfterExit=yes - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-rpc-server.service b/openstack/python-neutron/centos/files/neutron-rpc-server.service deleted file mode 100644 index b3f4d181..00000000 --- a/openstack/python-neutron/centos/files/neutron-rpc-server.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=OpenStack Neutron (RPC only) Server -After=syslog.target network.target - -[Service] -Type=notify -User=neutron -ExecStart=/usr/bin/neutron-rpc-server --config-file /usr/share/neutron/neutron-dist.conf --config-dir /usr/share/neutron/server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini --config-dir /etc/neutron/conf.d/common --config-dir /etc/neutron/conf.d/neutron-rpc-server --log-file /var/log/neutron/rpc-server.log -PrivateTmp=true -NotifyAccess=all -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-server.init b/openstack/python-neutron/centos/files/neutron-server.init deleted file mode 100755 index 5f5c0e55..00000000 --- a/openstack/python-neutron/centos/files/neutron-server.init +++ /dev/null @@ -1,137 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: neutron-server -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Short-Description: neutron-server -# Description: Provides the Neutron networking service -### END INIT INFO - -DESC="neutron-server" -DAEMON="/usr/bin/neutron-server" -PIDFILE="/var/run/neutron-server.pid" -DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf \ - --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- $DAEMON_ARGS - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -reset() -{ - . /etc/nova/openrc - - # Cleanup all neutron floating ip - simple_delete "neutron floatingip-list --all-tenant" "neutron floatingip-delete" 1 "neutron floatingip" - - # Cleanup all neutron router - neutron router-list | while read line; do - router_id=`echo $line | get_field 1` - neutron router-port-list $router_id | while read line_port; do - port_id=`echo $line_port | get_field 1` - subnet_id=`echo $line_port | get_field 4 | cut -d ' ' -f 2 | cut -d '"' -f 2` - if [ ! -z "$router_id" ] && [ ! -z "$subnet_id" ] ; then - echo ">>> Delete router-port: router_id=$router_id, port_id=$port_id, subnet_id=$subnet_id" - neutron router-interface-delete $router_id $subnet_id > /dev/null 2>&1 - fi - done - if [ ! -z "$router_id" ] ; then - echo ">>> Delete router: router_id=$router_id" - neutron router-delete $router_id > /dev/null 2>&1 - fi - done - - # Cleanup all neutron ports - simple_delete "neutron port-list --all-tenant" "neutron port-delete" 1 "neutron port" - - # Cleanup all neutron net - simple_delete "neutron net-list --all-tenant" "neutron net-delete" 1 "neutron net" - - stop - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 2 - fi - - sudo -u postgres dropdb ovs_neutron - sudo -u postgres createdb ovs_neutron - - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/centos/files/neutron-server.service b/openstack/python-neutron/centos/files/neutron-server.service deleted file mode 100644 index f1afd6d1..00000000 --- a/openstack/python-neutron/centos/files/neutron-server.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Neutron Server -After=syslog.target network.target - -[Service] -Type=forking -RemainAfterExit=yes -ExecStart=/etc/rc.d/init.d/neutron-server start -ExecStop=/etc/rc.d/init.d/neutron-server stop -ExecReload=/etc/rc.d/init.d/neutron-server reload - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.init b/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.init deleted file mode 100755 index 926fbb17..00000000 --- a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.init +++ /dev/null @@ -1,87 +0,0 @@ -#! /bin/sh - -### BEGIN INIT INFO -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Description: Neutron networking agent -### END INIT INFO - -SUFFIX=sriov-nic -DESC="neutron-$SUFFIX-agent" -DAEMON="/usr/bin/neutron-$SUFFIX-agent" -PIDFILE="/var/run/neutron-$SUFFIX-agent.pid" -DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf --config-file=/etc/neutron/plugins/ml2/sriov_agent.ini" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- ${DAEMON_ARGS} - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload|reset) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.pmon b/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.pmon deleted file mode 100644 index fedd8ab1..00000000 --- a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.pmon +++ /dev/null @@ -1,24 +0,0 @@ -[process] -process = neutron-sriov-nic-agent -pidfile = /var/run/neutron-sriov-nic-agent.pid -script = /etc/init.d/neutron-sriov-nic-agent -style = lsb ; ocf or lsb -severity = major ; minor, major, critical -restarts = 3 ; restarts before error assertion -interval = 5 ; number of seconds to wait between restarts -debounce = 20 ; number of seconds that a process needs to remain - ; running before degrade is removed and retry count - ; is cleared. -startuptime = 5 ; Seconds to wait after process start before starting the debounce monitor -mode = passive ; Monitoring mode: passive (default) or active - ; passive: process death monitoring (default: always) - ; active : heartbeat monitoring, i.e. request / response messaging - ; ignore : do not monitor or stop monitoring -subfunction = worker ; Optional label. - ; Manage this process in the context of a combo host subfunction - ; Choices: worker or storage. - ; when specified pmond will wait for - ; /var/run/.worker_config_complete or - ; /var/run/.storage_config_complete - ; ... before managing this process with the specified subfunction - ; Excluding this label will cause this process to be managed by default on startup diff --git a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.service b/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.service deleted file mode 100644 index 73b2d7fa..00000000 --- a/openstack/python-neutron/centos/files/neutron-sriov-nic-agent.service +++ /dev/null @@ -1,16 +0,0 @@ -[Unit] -Description=OpenStack Neutron SR-IOV NIC Agent -After=syslog.target network.target openvswitch.service -Before=pmon.service - -[Service] -Type=forking -RemainAfterExit=yes -ExecStart=/etc/rc.d/init.d/neutron-sriov-nic-agent start -ExecStop=/etc/rc.d/init.d/neutron-sriov-nic-agent stop -ExecReload=/etc/rc.d/init.d/neutron-sriov-nic-agent reload -PIDFile=/var/run/neutron-sriov-nic-agent.pid -KillMode=process - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-neutron/centos/files/neutron-sudoers b/openstack/python-neutron/centos/files/neutron-sudoers deleted file mode 100644 index 9273f587..00000000 --- a/openstack/python-neutron/centos/files/neutron-sudoers +++ /dev/null @@ -1,4 +0,0 @@ -Defaults:neutron !requiretty - -neutron ALL = (root) NOPASSWD: /usr/bin/neutron-rootwrap /etc/neutron/rootwrap.conf * -neutron ALL = (root) NOPASSWD: /usr/bin/neutron-rootwrap-daemon /etc/neutron/rootwrap.conf diff --git a/openstack/python-neutron/centos/openstack-neutron.spec b/openstack/python-neutron/centos/openstack-neutron.spec deleted file mode 100644 index 4beff65e..00000000 --- a/openstack/python-neutron/centos/openstack-neutron.spec +++ /dev/null @@ -1,827 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global service neutron - -%define cleanup_orphan_rootwrap_daemons() \ -for pid in $(ps -f --ppid 1 | awk '/.*neutron-rootwrap-daemon/ { print $2 }'); do \ - kill $(ps --ppid $pid -o pid=) \ -done \ -%nil - -%global common_desc \ -Neutron is a virtual network service for Openstack. Just like \ -OpenStack Nova provides an API to dynamically request and configure \ -virtual servers, Neutron provides an API to dynamically request and \ -configure virtual networks. These networks connect "interfaces" from \ -other OpenStack services (e.g., virtual NICs from Nova VMs). The \ -Neutron API supports extensions to provide advanced network \ -capabilities (e.g., QoS, ACLs, network monitoring, etc.) - -Name: openstack-%{service} -Version: 11.0.0 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Epoch: 1 -Summary: OpenStack Networking Service - -License: ASL 2.0 -URL: http://launchpad.net/%{service}/ - -Source0: %{service}-%{version}.tar.gz -#Source1: %{service}.logrotate -Source2: %{service}-sudoers -Source10: neutron-server.service -Source11: neutron-linuxbridge-agent.service -Source12: neutron-openvswitch-agent.service -Source15: neutron-dhcp-agent.service -Source16: neutron-l3-agent.service -Source17: neutron-metadata-agent.service -Source18: neutron-ovs-cleanup.service -Source19: neutron-macvtap-agent.service -Source20: neutron-metering-agent.service -Source21: neutron-sriov-nic-agent.service -Source22: neutron-netns-cleanup.service -Source29: neutron-rpc-server.service - -Source30: %{service}-dist.conf -Source31: conf.README -Source32: neutron-linuxbridge-cleanup.service -#Source33: neutron-enable-bridge-firewall.sh -#Source34: neutron-l2-agent-sysctl.conf -# We use the legacy service to load modules because it allows to gracefully -# ignore a missing kernel module (f.e. br_netfilter on earlier kernels). It's -# essentially because .modules files are shell scripts. -#Source35: neutron-l2-agent.modules - -# WRS -Source44: neutron-dhcp-agent.pmon -Source45: neutron-metadata-agent.pmon -Source46: neutron-sriov-nic-agent.pmon -Source49: neutron-dhcp-agent.init -Source50: neutron-metadata-agent.init -Source51: neutron-sriov-nic-agent.init -Source52: neutron-server.init - -BuildArch: noarch - -BuildRequires: git -BuildRequires: openstack-macros -BuildRequires: python2-devel -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-babel -BuildRequires: python-d2to1 -BuildRequires: python-keystoneauth1 >= 3.1.0 -BuildRequires: python-keystonemiddleware -BuildRequires: python-neutron-lib >= 1.9.0 -BuildRequires: python-novaclient -BuildRequires: python-os-xenapi -BuildRequires: python-oslo-cache -BuildRequires: python-oslo-concurrency -BuildRequires: python-oslo-config -BuildRequires: python-oslo-db -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-policy -BuildRequires: python-oslo-privsep -BuildRequires: python-oslo-rootwrap -BuildRequires: python-oslo-service -BuildRequires: python-oslo-versionedobjects -BuildRequires: python-osprofiler >= 1.3.0 -BuildRequires: python-ovsdbapp -BuildRequires: python-pbr >= 2.0.0 -BuildRequires: python-psutil >= 3.2.2 -BuildRequires: python-pyroute2 >= 0.4.19 -BuildRequires: python-pecan -BuildRequires: python-tenacity >= 3.2.1 -BuildRequires: python-weakrefmethod >= 1.0.2 -BuildRequires: systemd-units -# WRS -BuildRequires: systemd -BuildRequires: tsconfig -BuildRequires: systemd-devel -BuildRequires: python-retrying -BuildRequires: python-networking-sfc - -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - -# dnsmasq is not a hard requirement, but is currently the only option -# when neutron-dhcp-agent is deployed. -Requires: dnsmasq -Requires: dnsmasq-utils - -# radvd is not a hard requirement, but is currently the only option -# for IPv6 deployments. -Requires: radvd - -# dibbler is not a hard requirement, but is currently the default option -# for IPv6 prefix delegation. -Requires: dibbler-client - -# conntrack is not a hard requirement, but is currently used by L3 agent -# to immediately drop connections after a floating IP is disassociated -Requires: conntrack-tools - -# keepalived is not a hard requirement, but is currently used by DVR L3 -# agent -Requires: keepalived - -# haproxy implements metadata proxy process -Requires: haproxy >= 1.5.0 - -# Those are not hard requirements, ipset is used by ipset-cleanup in the subpackage, -# and iptables is used by the l3-agent which currently is not in a separate package. -Requires: ipset -Requires: iptables - -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd - -Obsoletes: openstack-%{service}-dev-server - -%description -%{common_desc} - - -%package -n python-%{service} -Summary: Neutron Python libraries -Requires: python-alembic >= 0.8.7 -Requires: python-debtcollector >= 1.2.0 -Requires: python-designateclient >= 1.5.0 -Requires: python-eventlet >= 0.18.2 -Requires: python-greenlet >= 0.3.2 -Requires: python-httplib2 >= 0.7.5 -# Upstream jinja2 set to 2.8 due to Python 3 support. -# CentOS repos currently don't have the packege rebased to 2.8. -Requires: python-jinja2 >= 2.7 -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-netaddr >= 0.7.13 -Requires: python-netifaces >= 0.10.4 -Requires: python-neutronclient >= 6.3.0 -Requires: python-neutron-lib >= 1.9.0 -Requires: python-novaclient >= 9.0.0 -Requires: python-os-xenapi >= 0.2.0 -Requires: python-oslo-cache >= 1.5.0 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-privsep >= 1.9.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-oslo-rootwrap >= 5.0.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-versionedobjects >= 1.17.0 -Requires: python-osprofiler >= 1.4.0 -Requires: python-ovsdbapp -Requires: python-paste -Requires: python-paste-deploy >= 1.5.0 -Requires: python-pecan >= 1.0.0 -Requires: python-pbr >= 2.0.0 -Requires: python-psutil >= 3.2.2 -Requires: python-pyroute2 >= 0.4.19 -Requires: python-requests >= 2.10.0 -Requires: python-tenacity >= 3.2.1 -Requires: python-routes >= 2.3.1 -Requires: python-ryu >= 4.14 -Requires: python-six >= 1.9.0 -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-stevedore >= 1.20.0 -Requires: python-weakrefmethod >= 1.0.2 -Requires: python-webob >= 1.7.1 - - - -%description -n python-%{service} -%{common_desc} - -This package contains the Neutron Python library. - - -%package -n python-%{service}-tests -Summary: Neutron tests -Requires: python-%{service} = %{epoch}:%{version}-%{release} -Requires: python-ddt >= 1.0.1 -Requires: python-fixtures >= 3.0.0 -Requires: python-mock >= 2.0 -Requires: python-subunit >= 0.0.18 -Requires: python-testrepository >= 0.0.18 -Requires: python-testtools >= 1.4.0 -Requires: python-testresources >= 0.2.4 -Requires: python-testscenarios >= 0.4 -Requires: python-oslotest >= 1.10.0 -Requires: python-oslo-db-tests >= 4.10.0 -Requires: python-os-testr >= 0.7.0 -Requires: python-PyMySQL >= 0.6.2 -Requires: python-tempest >= 12.1.0 -Requires: python-webtest >= 2.0 - -# pstree is used during functional testing to ensure our internal -# libraries managing processes work correctly. -Requires: psmisc -# nfs-utils is needed because it creates user with uid 65534 which -# is required by neutron functional tests. -Requires: nfs-utils - - -%description -n python-%{service}-tests -%{common_desc} - -This package contains Neutron test files. - - -%package common -Summary: Neutron common files -Requires(pre): shadow-utils -Requires: python-%{service} = %{epoch}:%{version}-%{release} -Requires: sudo - - -%description common -%{common_desc} - -This package contains Neutron common files. - - -%package linuxbridge -Summary: Neutron Linuxbridge agent -Requires: bridge-utils -Requires: ebtables -Requires: ipset -Requires: iptables -# kmod is needed to get access to /usr/sbin/modprobe needed by -# neutron-enable-bridge-firewall.sh triggered by the service unit file -Requires: kmod -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - - -%description linuxbridge -%{common_desc} - -This package contains the Neutron agent that implements virtual -networks using VLAN or VXLAN using Linuxbridge technology. - - -%package macvtap-agent -Summary: Neutron macvtap agent -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - - -%description macvtap-agent -%{common_desc} - -This package contains the Neutron agent that implements -macvtap attachments for libvirt qemu/kvm instances. - - -%package ml2 -Summary: Neutron ML2 plugin -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} -# needed for brocade and cisco drivers -Requires: python-ncclient - - -%description ml2 -%{common_desc} - -This package contains a Neutron plugin that allows the use of drivers -to support separately extensible sets of network types and the mechanisms -for accessing those types. - - -%package openvswitch -Summary: Neutron openvswitch plugin -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} -# We require openvswitch when using vsctl to access ovsdb; -# but if we use native access, then we just need python bindings. -# since we don't know what users actually use, we depend on both. -Requires: ipset -Requires: iptables -Requires: openvswitch -Requires: python-openvswitch >= 2.6.1 -# kmod is needed to get access to /usr/sbin/modprobe needed by -# neutron-enable-bridge-firewall.sh triggered by the service unit file -Requires: kmod - - -%description openvswitch -%{common_desc} - -This package contains the Neutron plugin that implements virtual -networks using Open vSwitch. - - -%package metering-agent -Summary: Neutron bandwidth metering agent -Requires: iptables -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - - -%description metering-agent -%{common_desc} - -This package contains the Neutron agent responsible for generating bandwidth -utilization notifications. - - -%package rpc-server -Summary: Neutron (RPC only) Server -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - - -%description rpc-server -%{common_desc} - -This package contains an alternative Neutron server that handles AMQP RPC -workload only. - - -%package sriov-nic-agent -Summary: Neutron SR-IOV NIC agent -Requires: openstack-%{service}-common = %{epoch}:%{version}-%{release} - - -%description sriov-nic-agent -%{common_desc} - -This package contains the Neutron agent to support advanced features of -SR-IOV network cards. - - -%prep -%autosetup -n %{service}-%{upstream_version} -S git - -find %{service} -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + - -# Let's handle dependencies ourseleves -%py_req_cleanup - -# Kill egg-info in order to generate new SOURCES.txt -rm -rf neutron.egg-info - - -%build -export PBR_VERSION=%{version} -export SKIP_PIP_INSTALL=1 -%{__python2} setup.py build -# Generate i18n files -# (amoralej) we can remove '-D neutron' once https://review.openstack.org/#/c/485070/ is merged -#%{__python2} setup.py compile_catalog -pwd -%{__python2} setup.py compile_catalog -d %{service}/locale -D neutron - -# Generate configuration files -PYTHONPATH=. tools/generate_config_file_samples.sh -find etc -name *.sample | while read filename -do - filedir=$(dirname $filename) - file=$(basename $filename .sample) - mv ${filename} ${filedir}/${file} -done - -# Loop through values in neutron-dist.conf and make sure that the values -# are substituted into the neutron.conf as comments. Some of these values -# will have been uncommented as a way of upstream setting defaults outside -# of the code. For notification_driver, there are commented examples -# above uncommented settings, so this specifically skips those comments -# and instead comments out the actual settings and substitutes the -# correct default values. -while read name eq value; do - test "$name" && test "$value" || continue - if [ "$name" = "notification_driver" ]; then - sed -ri "0,/^$name *=/{s!^$name *=.*!# $name = $value!}" etc/%{service}.conf - else - sed -ri "0,/^(#)? *$name *=/{s!^(#)? *$name *=.*!# $name = $value!}" etc/%{service}.conf - fi -done < %{SOURCE30} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# Remove unused files -rm -rf %{buildroot}%{python2_sitelib}/bin -rm -rf %{buildroot}%{python2_sitelib}/doc -rm -rf %{buildroot}%{python2_sitelib}/tools - -# Move rootwrap files to proper location -install -d -m 755 %{buildroot}%{_datarootdir}/%{service}/rootwrap -mv %{buildroot}/usr/etc/%{service}/rootwrap.d/*.filters %{buildroot}%{_datarootdir}/%{service}/rootwrap - -# Move config files to proper location -install -d -m 755 %{buildroot}%{_sysconfdir}/%{service} -mv %{buildroot}/usr/etc/%{service}/* %{buildroot}%{_sysconfdir}/%{service} -# WRS: to do: revisit service files to handle /usr/share rather than /etc/neutron for api-paste.ini -#mv %{buildroot}%{_sysconfdir}/%{service}/api-paste.ini %{buildroot}%{_datadir}/%{service}/api-paste.ini - -# The generated config files are not moved automatically by setup.py -install -d -m 755 %{buildroot}%{_sysconfdir}/%{service}/plugins/ml2 - -mv etc/%{service}.conf %{buildroot}%{_sysconfdir}/%{service}/%{service}.conf -for agent in dhcp l3 metadata metering -do - mv etc/${agent}_agent.ini %{buildroot}%{_sysconfdir}/%{service}/${agent}_agent.ini -done -for file in linuxbridge_agent ml2_conf openvswitch_agent sriov_agent -do - mv etc/%{service}/plugins/ml2/${file}.ini %{buildroot}%{_sysconfdir}/%{service}/plugins/ml2/${file}.ini -done - -# Install logrotate -#install -p -D -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-%{service} - -# Install sudoers -install -p -D -m 440 %{SOURCE2} %{buildroot}%{_sysconfdir}/sudoers.d/%{service} - -# Install systemd units -install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/neutron-server.service -install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/neutron-linuxbridge-agent.service -install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/neutron-openvswitch-agent.service -install -p -D -m 644 %{SOURCE15} %{buildroot}%{_unitdir}/neutron-dhcp-agent.service -install -p -D -m 644 %{SOURCE16} %{buildroot}%{_unitdir}/neutron-l3-agent.service -install -p -D -m 644 %{SOURCE17} %{buildroot}%{_unitdir}/neutron-metadata-agent.service -install -p -D -m 644 %{SOURCE18} %{buildroot}%{_unitdir}/neutron-ovs-cleanup.service -install -p -D -m 644 %{SOURCE19} %{buildroot}%{_unitdir}/neutron-macvtap-agent.service -install -p -D -m 644 %{SOURCE20} %{buildroot}%{_unitdir}/neutron-metering-agent.service -install -p -D -m 644 %{SOURCE21} %{buildroot}%{_unitdir}/neutron-sriov-nic-agent.service -install -p -D -m 644 %{SOURCE22} %{buildroot}%{_unitdir}/neutron-netns-cleanup.service -install -p -D -m 644 %{SOURCE29} %{buildroot}%{_unitdir}/neutron-rpc-server.service -install -p -D -m 644 %{SOURCE32} %{buildroot}%{_unitdir}/neutron-linuxbridge-cleanup.service - -# Install helper scripts -#install -p -D -m 755 %{SOURCE33} %{buildroot}%{_bindir}/neutron-enable-bridge-firewall.sh - -# Install sysctl and modprobe config files to enable bridge firewalling -# NOTE(ihrachys) we effectively duplicate same settings for each affected l2 -# agent. This can be revisited later. -#install -p -D -m 644 %{SOURCE34} %{buildroot}%{_sysctldir}/99-neutron-openvswitch-agent.conf -#install -p -D -m 644 %{SOURCE34} %{buildroot}%{_sysctldir}/99-neutron-linuxbridge-agent.conf -#install -p -D -m 755 %{SOURCE35} %{buildroot}%{_sysconfdir}/sysconfig/modules/neutron-openvswitch-agent.modules -#install -p -D -m 755 %{SOURCE35} %{buildroot}%{_sysconfdir}/sysconfig/modules/neutron-linuxbridge-agent.modules - -# Install README file that describes how to configure services with custom configuration files -install -p -D -m 755 %{SOURCE31} %{buildroot}%{_sysconfdir}/%{service}/conf.d/README - -# Setup directories -install -d -m 755 %{buildroot}%{_datadir}/%{service} -install -d -m 755 %{buildroot}%{_sharedstatedir}/%{service} -install -d -m 755 %{buildroot}%{_localstatedir}/log/%{service} -install -d -m 755 %{buildroot}%{_localstatedir}/run/%{service} - -# Install dist conf -install -p -D -m 640 %{SOURCE30} %{buildroot}%{_datadir}/%{service}/%{service}-dist.conf - -# Create and populate configuration directory for L3 agent that is not accessible for user modification -mkdir -p %{buildroot}%{_datadir}/%{service}/l3_agent -ln -s %{_sysconfdir}/%{service}/l3_agent.ini %{buildroot}%{_datadir}/%{service}/l3_agent/l3_agent.conf - -# Create dist configuration directory for neutron-server (may be filled by advanced services) -mkdir -p %{buildroot}%{_datadir}/%{service}/server - -# Create configuration directories for all services that can be populated by users with custom *.conf files -mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/common -for service in server rpc-server ovs-cleanup netns-cleanup linuxbridge-cleanup macvtap-agent; do - mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/%{service}-$service -done -for service in linuxbridge openvswitch dhcp l3 metadata metering sriov-nic; do - mkdir -p %{buildroot}/%{_sysconfdir}/%{service}/conf.d/%{service}-$service-agent -done - - -# WRS process init scripts -install -d %{buildroot}%{_sysconfdir}/init.d -install -m 755 %{SOURCE49} %{buildroot}%{_sysconfdir}/init.d/neutron-dhcp-agent -install -m 755 %{SOURCE50} %{buildroot}%{_sysconfdir}/init.d/neutron-metadata-agent -install -m 755 %{SOURCE51} %{buildroot}%{_sysconfdir}/init.d/neutron-sriov-nic-agent -install -m 755 %{SOURCE52} %{buildroot}%{_sysconfdir}/init.d/neutron-server - -# WRS process monitor configuration files -install -d %{buildroot}%{_sysconfdir}/%{service}/pmon -install -m 755 %{SOURCE44} %{buildroot}%{_sysconfdir}/%{service}/pmon/neutron-dhcp-agent.conf -install -m 755 %{SOURCE45} %{buildroot}%{_sysconfdir}/%{service}/pmon/neutron-metadata-agent.conf -install -m 755 %{SOURCE46} %{buildroot}%{_sysconfdir}/%{service}/pmon/neutron-sriov-nic-agent.conf - -# Install i18n .mo files (.po and .pot are not required) -install -d -m 755 %{buildroot}%{_datadir} -rm -f %{service}/locale/*/LC_*/%{service}*po -rm -f %{service}/locale/*pot -mv %{service}/locale %{buildroot}%{_datadir}/locale - -# Find language files -%find_lang %{service} --all-name - -# Create fake tempest entrypoint -%py2_entrypoint %{service} %{service} - -%pre common -getent group %{service} >/dev/null || groupadd -r %{service} -getent passwd %{service} >/dev/null || \ - useradd -r -g %{service} -d %{_sharedstatedir}/%{service} -s /sbin/nologin \ - -c "OpenStack Neutron Daemons" %{service} -exit 0 - - -%post -%systemd_post neutron-dhcp-agent.service -%systemd_post neutron-l3-agent.service -%systemd_post neutron-metadata-agent.service -%systemd_post neutron-server.service -%systemd_post neutron-netns-cleanup.service -%systemd_post neutron-ovs-cleanup.service -%systemd_post neutron-linuxbridge-cleanup.service - - -%preun -%systemd_preun neutron-dhcp-agent.service -%systemd_preun neutron-l3-agent.service -%systemd_preun neutron-metadata-agent.service -%systemd_preun neutron-server.service -%systemd_preun neutron-netns-cleanup.service -%systemd_preun neutron-ovs-cleanup.service -%systemd_preun neutron-linuxbridge-cleanup.service - - -%postun -%systemd_postun_with_restart neutron-dhcp-agent.service -%systemd_postun_with_restart neutron-l3-agent.service -%systemd_postun_with_restart neutron-metadata-agent.service -%systemd_postun_with_restart neutron-server.service -%cleanup_orphan_rootwrap_daemons - - -%post macvtap-agent -%systemd_post neutron-macvtap-agent.service - - -%preun macvtap-agent -%systemd_preun neutron-macvtap-agent.service - - -%postun macvtap-agent -%systemd_postun_with_restart neutron-macvtap-agent.service -%cleanup_orphan_rootwrap_daemons - - -%post linuxbridge -%systemd_post neutron-linuxbridge-agent.service - - -%preun linuxbridge -%systemd_preun neutron-linuxbridge-agent.service - - -%postun linuxbridge -%systemd_postun_with_restart neutron-linuxbridge-agent.service -%cleanup_orphan_rootwrap_daemons - -%post openvswitch -%systemd_post neutron-openvswitch-agent.service - -if [ $1 -ge 2 ]; then - # We're upgrading - - # Detect if the neutron-openvswitch-agent is running - ovs_agent_running=0 - systemctl status neutron-openvswitch-agent > /dev/null 2>&1 && ovs_agent_running=1 || : - - # If agent is running, stop it - [ $ovs_agent_running -eq 1 ] && systemctl stop neutron-openvswitch-agent > /dev/null 2>&1 || : - - # Search all orphaned neutron-rootwrap-daemon processes and since all are triggered by sudo, - # get the actual rootwrap-daemon process. - %cleanup_orphan_rootwrap_daemons - - # If agent was running, start it back with new code - [ $ovs_agent_running -eq 1 ] && systemctl start neutron-openvswitch-agent > /dev/null 2>&1 || : -fi - - -%preun openvswitch -%systemd_preun neutron-openvswitch-agent.service - - -%post metering-agent -%systemd_post neutron-metering-agent.service - - -%preun metering-agent -%systemd_preun neutron-metering-agent.service - - -%postun metering-agent -%systemd_postun_with_restart neutron-metering-agent.service -%cleanup_orphan_rootwrap_daemons - - -%post sriov-nic-agent -%systemd_post neutron-sriov-nic-agent.service - - -%preun sriov-nic-agent -%systemd_preun neutron-sriov-nic-agent.service - - -%postun sriov-nic-agent -%systemd_postun_with_restart neutron-sriov-nic-agent.service -%cleanup_orphan_rootwrap_daemons - - -%files -%license LICENSE -%{_bindir}/neutron-api -%{_bindir}/neutron-db-manage -%{_bindir}/neutron-debug -%{_bindir}/neutron-dhcp-agent -%{_bindir}/neutron-ipset-cleanup -%{_bindir}/neutron-keepalived-state-change -%{_bindir}/neutron-l3-agent -%{_bindir}/neutron-linuxbridge-cleanup -%{_bindir}/neutron-metadata-agent -%{_bindir}/neutron-netns-cleanup -%{_bindir}/neutron-ovs-cleanup -%{_bindir}/neutron-pd-notify -%{_bindir}/neutron-sanity-check -%{_bindir}/neutron-server -%{_bindir}/neutron-usage-audit -%{_unitdir}/neutron-dhcp-agent.service -%{_unitdir}/neutron-l3-agent.service -%{_unitdir}/neutron-metadata-agent.service -%{_unitdir}/neutron-server.service -%{_unitdir}/neutron-netns-cleanup.service -%{_unitdir}/neutron-ovs-cleanup.service -%{_unitdir}/neutron-linuxbridge-cleanup.service -%attr(-, root, %{service}) %{_sysconfdir}/%{service}/api-paste.ini -%dir %{_datadir}/%{service}/l3_agent -%dir %{_datadir}/%{service}/server -%{_datadir}/%{service}/l3_agent/*.conf -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/dhcp_agent.ini -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/l3_agent.ini -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/metadata_agent.ini -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/policy.json -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/pmon/neutron-dhcp-agent.conf -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/pmon/neutron-metadata-agent.conf -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-dhcp-agent -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-l3-agent -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-metadata-agent -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-server -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-netns-cleanup -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-ovs-cleanup -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-linuxbridge-cleanup -%{_sysconfdir}/init.d/%{service}-server -%{_sysconfdir}/init.d/%{service}-dhcp-agent -%{_sysconfdir}/init.d/%{service}-metadata-agent - - -%files -n python-%{service}-tests -%license LICENSE -%{python2_sitelib}/%{service}/tests -%{python2_sitelib}/%{service}_tests.egg-info - -%files -n python-%{service} -%license LICENSE -%{python2_sitelib}/%{service} -%{python2_sitelib}/%{service}-*.egg-info -%exclude %{python2_sitelib}/%{service}/tests - - -%files common -f %{service}.lang -%license LICENSE -%doc README.rst -# though this script is not exactly needed on all nodes but for ovs and -# linuxbridge agents only, it's probably good enough to put it here -#%{_bindir}/neutron-enable-bridge-firewall.sh -%{_bindir}/neutron-restart -%{_bindir}/neutron-rootwrap -%{_bindir}/neutron-rootwrap-daemon -%{_bindir}/neutron-rootwrap-xen-dom0 -%dir %{_sysconfdir}/%{service} -%{_sysconfdir}/%{service}/conf.d/README -%dir %{_sysconfdir}/%{service}/conf.d -%dir %{_sysconfdir}/%{service}/conf.d/common -%dir %{_sysconfdir}/%{service}/plugins -%attr(-, root, %{service}) %{_datadir}/%{service}/%{service}-dist.conf -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/%{service}.conf -%config(noreplace) %{_sysconfdir}/%{service}/rootwrap.conf -#%config(noreplace) %{_sysconfdir}/logrotate.d/* -%{_sysconfdir}/sudoers.d/%{service} -%dir %attr(0755, %{service}, %{service}) %{_sharedstatedir}/%{service} -%dir %attr(0750, %{service}, %{service}) %{_localstatedir}/log/%{service} -%dir %{_datarootdir}/%{service} -%dir %{_datarootdir}/%{service}/rootwrap -%{_datarootdir}/%{service}/rootwrap/debug.filters -%{_datarootdir}/%{service}/rootwrap/dhcp.filters -%{_datarootdir}/%{service}/rootwrap/dibbler.filters -%{_datarootdir}/%{service}/rootwrap/ebtables.filters -%{_datarootdir}/%{service}/rootwrap/ipset-firewall.filters -%{_datarootdir}/%{service}/rootwrap/iptables-firewall.filters -%{_datarootdir}/%{service}/rootwrap/l3.filters -%{_datarootdir}/%{service}/rootwrap/netns-cleanup.filters - - -#%files linuxbridge -#%license LICENSE -%{_bindir}/neutron-linuxbridge-agent -%{_unitdir}/neutron-linuxbridge-agent.service -%{_datarootdir}/%{service}/rootwrap/linuxbridge-plugin.filters -#%dir %{_sysconfdir}/%{service}/plugins/ml2 -#%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/linuxbridge_agent.ini -#%dir %{_sysconfdir}/%{service}/conf.d/%{service}-linuxbridge-agent -#%{_sysctldir}/99-neutron-linuxbridge-agent.conf -#%{_sysconfdir}/sysconfig/modules/neutron-linuxbridge-agent.modules - - -%files macvtap-agent -%license LICENSE -%{_bindir}/neutron-macvtap-agent -%{_unitdir}/neutron-macvtap-agent.service -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-macvtap-agent - - -%files ml2 -%license LICENSE -%doc %{service}/plugins/ml2/README -%dir %{_sysconfdir}/%{service}/plugins/ml2 -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/*.ini -%exclude %{_sysconfdir}/%{service}/plugins/ml2/linuxbridge_agent.ini -%exclude %{_sysconfdir}/%{service}/plugins/ml2/openvswitch_agent.ini -%exclude %{_sysconfdir}/%{service}/plugins/ml2/sriov_agent.ini - - -%files openvswitch -%license LICENSE -%{_bindir}/neutron-openvswitch-agent -%{_unitdir}/neutron-openvswitch-agent.service -%{_datarootdir}/%{service}/rootwrap/openvswitch-plugin.filters -%dir %{_sysconfdir}/%{service}/plugins/ml2 -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/openvswitch_agent.ini -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-openvswitch-agent -#%{_sysctldir}/99-neutron-openvswitch-agent.conf -#%{_sysconfdir}/sysconfig/modules/neutron-openvswitch-agent.modules - - -%files metering-agent -%license LICENSE -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/metering_agent.ini -%{_unitdir}/neutron-metering-agent.service -%{_bindir}/neutron-metering-agent -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-metering-agent - - -%files rpc-server -%license LICENSE -%{_bindir}/neutron-rpc-server -%{_unitdir}/neutron-rpc-server.service -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-rpc-server - - -%files sriov-nic-agent -%license LICENSE -%{_unitdir}/neutron-sriov-nic-agent.service -%{_bindir}/neutron-sriov-nic-agent -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/plugins/ml2/sriov_agent.ini -%config(noreplace) %attr(0640, root, %{service}) %{_sysconfdir}/%{service}/pmon/neutron-sriov-nic-agent.conf -%dir %{_sysconfdir}/%{service}/conf.d/%{service}-sriov-nic-agent -%{_sysconfdir}/init.d/%{service}-sriov-nic-agent - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - - -%changelog -* Mon Sep 25 2017 rdo-trunk 1:11.0.1-1 -- Update to 11.0.1 - -* Mon Sep 4 2017 Haïkel Guémar - 1:11.0.0-3 -- Bump python-pyroute2 (rhbz#1487766) - -* Sat Sep 2 2017 Assaf Muller 1:11.0.0-2 -- Bump python-pyroute2, rhbz 1487766 - -* Wed Aug 30 2017 rdo-trunk 1:11.0.0-1 -- Update to 11.0.0 - -* Fri Aug 25 2017 rdo-trunk 1:11.0.0-0.3.0rc3 -- Update to 11.0.0.0rc3 - -* Fri Aug 25 2017 Alfredo Moralejo 1:11.0.0-0.2.0rc2 -- Update to 11.0.0.0rc2 - -* Tue Aug 22 2017 Alfredo Moralejo 1:11.0.0-0.1.0rc1 -- Update to 11.0.0.0rc1 - diff --git a/openstack/python-neutron/python-neutron/neutron-agent.init b/openstack/python-neutron/python-neutron/neutron-agent.init deleted file mode 100644 index 2e8cfa2c..00000000 --- a/openstack/python-neutron/python-neutron/neutron-agent.init +++ /dev/null @@ -1,87 +0,0 @@ -#! /bin/sh - -### BEGIN INIT INFO -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Description: Neutron networking agent -### END INIT INFO - -SUFFIX=@suffix@ -DESC="neutron-$SUFFIX-agent" -DAEMON="/usr/bin/neutron-$SUFFIX-agent" -PIDFILE="/var/run/neutron-$SUFFIX-agent.pid" -DAEMON_ARGS="@args@" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- ${DAEMON_ARGS} - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload|reset) - stop - start - ;; - status) - status - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/python-neutron/neutron-server.init b/openstack/python-neutron/python-neutron/neutron-server.init deleted file mode 100644 index dd9631a0..00000000 --- a/openstack/python-neutron/python-neutron/neutron-server.init +++ /dev/null @@ -1,137 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: neutron-server -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 2 3 5 -# Default-Stop: 0 1 6 -# Short-Description: neutron-server -# Description: Provides the Neutron networking service -### END INIT INFO - -DESC="neutron-server" -DAEMON="/usr/bin/neutron-server" -PIDFILE="/var/run/neutron-server.pid" -DAEMON_ARGS="--config-file=/etc/neutron/neutron.conf \ - --config-file=@plugin@ --config-file=@sriovplugin@" - -start() -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} \ - -- $DAEMON_ARGS - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop() -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - return - fi - fi - echo "$DESC is not running" -} - -reset() -{ - . /etc/nova/openrc - - # Cleanup all neutron floating ip - simple_delete "neutron floatingip-list --all-tenant" "neutron floatingip-delete" 1 "neutron floatingip" - - # Cleanup all neutron router - neutron router-list | while read line; do - router_id=`echo $line | get_field 1` - neutron router-port-list $router_id | while read line_port; do - port_id=`echo $line_port | get_field 1` - subnet_id=`echo $line_port | get_field 4 | cut -d ' ' -f 2 | cut -d '"' -f 2` - if [ ! -z "$router_id" ] && [ ! -z "$subnet_id" ] ; then - echo ">>> Delete router-port: router_id=$router_id, port_id=$port_id, subnet_id=$subnet_id" - neutron router-interface-delete $router_id $subnet_id > /dev/null 2>&1 - fi - done - if [ ! -z "$router_id" ] ; then - echo ">>> Delete router: router_id=$router_id" - neutron router-delete $router_id > /dev/null 2>&1 - fi - done - - # Cleanup all neutron ports - simple_delete "neutron port-list --all-tenant" "neutron port-delete" 1 "neutron port" - - # Cleanup all neutron net - simple_delete "neutron net-list --all-tenant" "neutron net-delete" 1 "neutron net" - - stop - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 2 - fi - - sudo -u postgres dropdb ovs_neutron - sudo -u postgres createdb ovs_neutron - - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 diff --git a/openstack/python-neutron/python-neutron/neutron-src-dist-files.exclude b/openstack/python-neutron/python-neutron/neutron-src-dist-files.exclude deleted file mode 100644 index c98406e9..00000000 --- a/openstack/python-neutron/python-neutron/neutron-src-dist-files.exclude +++ /dev/null @@ -1,5 +0,0 @@ -*.pyc -neutron/plugins/wrs/drivers/qos.py -neutron/plugins/wrs/drivers/type_managed_flat.py -neutron/plugins/wrs/drivers/type_managed_vlan.py -neutron/plugins/wrs/drivers/type_managed_vxlan.py diff --git a/openstack/python-neutron/python-neutron_meta-cloud-services/neutron-dhcp-agent-netns-cleanup.cron b/openstack/python-neutron/python-neutron_meta-cloud-services/neutron-dhcp-agent-netns-cleanup.cron deleted file mode 100644 index 0ebd6c52..00000000 --- a/openstack/python-neutron/python-neutron_meta-cloud-services/neutron-dhcp-agent-netns-cleanup.cron +++ /dev/null @@ -1,2 +0,0 @@ -# Periodically cleans Neutron's network namespaces on behalf of the Neutron DHCP agent. -30 * * * * neutron if [ -x @bindir@/neutron-netns-cleanup ] ; then @bindir@/neutron-netns-cleanup --config-file=@confdir@/neutron/neutron.conf --config-file=@confdir@/neutron/dhcp_agent.ini >/dev/null 2>&1; fi diff --git a/openstack/python-nova/centos/build_srpm.data b/openstack/python-nova/centos/build_srpm.data deleted file mode 100644 index c143dc82..00000000 --- a/openstack/python-nova/centos/build_srpm.data +++ /dev/null @@ -1,6 +0,0 @@ -TAR_NAME="nova" -SRC_DIR="$CGCS_BASE/git/nova" -COPY_LIST="$FILES_BASE/* python-nova/*" - -TIS_BASE_SRCREV=b535f0808526c8eba37f15e83cede536e4e06029 -TIS_PATCH_VER=GITREVCOUNT diff --git a/openstack/python-nova/centos/files/kvm_timer_advance_setup.service b/openstack/python-nova/centos/files/kvm_timer_advance_setup.service deleted file mode 100644 index 74589119..00000000 --- a/openstack/python-nova/centos/files/kvm_timer_advance_setup.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=KVM Timer Advance Setup -After=openstack-nova-compute-setup.service -Before=nova-compute.service goenabled-worker.service - -[Service] -Type=simple -RemainAfterExit=yes -User=root -ExecStart=/usr/bin/nova_setup_timer_advance - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/nova-compute.init b/openstack/python-nova/centos/files/nova-compute.init deleted file mode 100644 index 7d434b75..00000000 --- a/openstack/python-nova/centos/files/nova-compute.init +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/sh - -# This is a backwards compatibility hack to allow an /etc/init.d/nova-compute -# script that will still start up nova-compute but also allow the "service" -# mechanism to properly track the run state of the service. - -. /etc/init.d/task_affinity_functions.sh - -function log () -{ - logger -p local1.info -t nova-compute $@ - echo nova-compute: "$@" -} - -# WRS: nova-compute may be started only by nova-cleanup or nova-startup. -# Initial start via runlevel nova-init -> /etc/init.d/nova-cleanup -> /etc/init.d/nova-compute -# Restart via pmond monitor -> /etc/init.d/nova-startup -> /etc/init.d/nova-compute -function check_caller () -{ - caller=$(pstree -s -p $$) - if echo "${caller}" | grep -q -v -e "nova-cleanup" -e "nova-startup"; then - log "Call $0 ignored, expecting caller: nova-cleanup or nova-startup. Caller=${caller}" - exit 0 - fi -} - -start () -{ - if [ ! -d /var/log/nova ]; then - mkdir /var/log/nova - fi - - log "Reaffining tasks back to platform cores..." - affine_tasks_to_platform_cores - [[ $? -eq 0 ]] && log "Tasks re-affining done." || log "Tasks re-affining failed." - - echo -n "Starting nova-compute..." - systemctl start nova-compute.service - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop () -{ - echo -n "Stopping nova-compute..." - systemctl stop nova-compute.service - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - systemctl status nova-compute.service -} - -reset() -{ - : -} - -case "$1" in - start) - check_caller - start - ;; - stop) - check_caller - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 - diff --git a/openstack/python-nova/centos/files/nova-dist.conf b/openstack/python-nova/centos/files/nova-dist.conf deleted file mode 100644 index 8ada131b..00000000 --- a/openstack/python-nova/centos/files/nova-dist.conf +++ /dev/null @@ -1,25 +0,0 @@ -[DEFAULT] -#log_dir = /var/log/nova -state_path = /var/lib/nova -lock_path = /var/lib/nova/tmp -dhcpbridge = /usr/bin/nova-dhcpbridge -dhcpbridge_flagfile = /usr/share/nova/nova-dist.conf -dhcpbridge_flagfile = /etc/nova/nova.conf -force_dhcp_release = True -injected_network_template = /usr/share/nova/interfaces.template -libvirt_nonblocking = True -libvirt_inject_partition = -1 -network_manager = nova.network.manager.FlatDHCPManager -compute_driver = libvirt.LibvirtDriver -firewall_driver = nova.virt.libvirt.firewall.IptablesFirewallDriver -rootwrap_config = /etc/nova/rootwrap.conf -use_stderr = False - -[database] -connection = mysql://nova:nova@localhost/nova -max_retries = -1 - -[keystone_authtoken] -auth_host = 127.0.0.1 -auth_port = 35357 -auth_protocol = http diff --git a/openstack/python-nova/centos/files/nova-ifc-template b/openstack/python-nova/centos/files/nova-ifc-template deleted file mode 100644 index 7d1d28b1..00000000 --- a/openstack/python-nova/centos/files/nova-ifc-template +++ /dev/null @@ -1,15 +0,0 @@ -DEVICE="{{ name }}" -NM_CONTROLLED="no" -ONBOOT=yes -TYPE=Ethernet -BOOTPROTO=static -IPADDR={{ address }} -NETMASK={{ netmask }} -BROADCAST={{ broadcast }} -GATEWAY={{ gateway }} -DNS1={{ dns }} - -#if $use_ipv6 -IPV6INIT=yes -IPV6ADDR={{ address_v6 }} -#end if diff --git a/openstack/python-nova/centos/files/nova-migration-wrapper b/openstack/python-nova/centos/files/nova-migration-wrapper deleted file mode 100644 index b61e4a52..00000000 --- a/openstack/python-nova/centos/files/nova-migration-wrapper +++ /dev/null @@ -1,70 +0,0 @@ -#!/usr/bin/python2 -import os -import sys -import syslog - -command = os.environ.get('SSH_ORIGINAL_COMMAND') -ssh_connection = os.environ.get('SSH_CONNECTION') -if command is None: - sys.stderr.write('This command must be run via SSH ForceCommand (see man 5 sshd_config).\n') - sys.exit(1) - -syslog.openlog('nova_migration_wrapper') - - -def allow_command(user, args): - syslog.syslog(syslog.LOG_INFO, "Allowing connection='{}' command={} ".format( - ssh_connection, - repr(args) - )) - os.execlp('sudo', 'sudo', '-u', user, *args) - - -def deny_command(args): - syslog.syslog(syslog.LOG_ERR, "Denying connection='{}' command={}".format( - ssh_connection, - repr(args) - )) - sys.stderr.write('Forbidden\n') - sys.exit(1) - - -# Handle libvirt ssh tunnel script snippet -# https://github.com/libvirt/libvirt/blob/f0803dae93d62a4b8a2f67f4873c290a76d978b3/src/rpc/virnetsocket.c#L890 -libvirt_sock = '/var/run/libvirt/libvirt-sock' -live_migration_tunnel_cmd = "sh -c 'if 'nc' -q 2>&1 | grep \"requires an argument\" >/dev/null 2>&1; then " \ - " ARG=-q0;" \ - "else " \ - " ARG=;" \ - "fi;" \ - "'nc' $ARG -U {}'".format(libvirt_sock) - -cold_migration_root = '/var/lib/nova/instances/' -cold_migration_cmds = [ - ['mkdir', '-p'], - ['rm', '-rf'], - ['touch'], - ['rm'], - ['scp', '-r', '-t'], - ['scp', '-r', '-f'], - ['scp', '-t'], - ['scp', '-f'], -] -rootwrap_args = ['/usr/bin/nova-rootwrap', '/etc/nova/migration/rootwrap.conf'] - - -def validate_cold_migration_cmd(args): - target_path = os.path.normpath(args[-1]) - cmd = args[:-1] - return cmd in cold_migration_cmds and target_path.startswith(cold_migration_root) - - -# Rules -args = command.split(' ') -if command == live_migration_tunnel_cmd: - args = ['nc', '-U', libvirt_sock] - allow_command('nova', args) -if validate_cold_migration_cmd(args): - args = rootwrap_args + args - allow_command('root', args) -deny_command(args) diff --git a/openstack/python-nova/centos/files/nova-pci-interrupts b/openstack/python-nova/centos/files/nova-pci-interrupts deleted file mode 100644 index 9fd90840..00000000 --- a/openstack/python-nova/centos/files/nova-pci-interrupts +++ /dev/null @@ -1,108 +0,0 @@ -#!/bin/bash -################################################################################ -# Copyright (c) 2016 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# -################################################################################ -# -# Purpose: -# Query nova configured PCI devices and display related IRQ cpulist info. -# -# Usage: -# /usr/bin/nova-pci-interrupts.sh -# -# Define minimal path -PATH=/bin:/usr/bin:/usr/local/bin:/usr/sbin - -# logger setup -WHOAMI=`basename $0` - -function LOG () -{ - local tstamp_H=$( date +"%Y-%0m-%0e %H:%M:%S.%N" ) - echo -e "${tstamp_H} ${HOSTNAME} $0($$): $@"; -} - -function INFO() -{ - MSG="INFO" - LOG "${MSG} $@" -} -function ERROR() -{ - MSG="ERROR" - LOG "${MSG} $@" -} - - -# Require root to access all /proc and /sys details (e.g., smp_affinity_cpulist, etc) -if [ $UID -ne 0 ]; then - ERROR "require root or sudo" - exit 1 -fi - -# Define array of PCI addresses to display IRQ information -declare -a ADDRS -if [ "$#" -eq 0 ]; then - INFO "No PCI addrs specified. usage: $0 ...\n(querying nova configured pci devices on ${HOSTNAME})" - - source /etc/nova/openrc - TMPNAME=$(printf "/tmp/%s-tmp.%d" $(basename $0) $$) - CMD="nova list --all --host ${HOSTNAME} --fields=wrs-res:topology,wrs-res:pci_devices" - - INFO "nova configured PCI devices and associated IRQ cpulists:" - echo ${CMD} - ${CMD} 2>/dev/null > ${TMPNAME} - cat ${TMPNAME} - - # extract pci_addrs from field 'wrs-res:pci_devices' - ADDRS+=( $(cat ${TMPNAME} | awk '/addr:/ {match($0, "addr:([^,]*),", a); print a[1]}') ) - rm -f ${TMPNAME} - - INFO "Found: pci_addrs:" ${ADDRS[@]} -else - ADDRS+=( $@ ) -fi - -for pci_addr in ${ADDRS[@]}; do - # Find PCI device matching address, keep last matching device name - dev=$(find /sys/devices -name "${pci_addr}" | \ - perl -ne 'print $1 if /\/sys\/devices\/pci.*([[:xdigit:]]{4}:[[:xdigit:]]{2}:[[:xdigit:]]{2}\.[[:xdigit:]])$/;') - - if [ -z "${dev}" ] ; then - ERROR "cannot find pci_addr: ${pci_addr}" - continue - fi - - # Obtain all IRQs for this device - irq=$(cat /sys/bus/pci/devices/${dev}/irq 2>/dev/null) - if [ "${irq}" -eq 0 ]; then - irq="" - fi - msi_irqs=$(ls /sys/bus/pci/devices/${dev}/msi_irqs 2>/dev/null | xargs) - numa_node=$(cat /sys/bus/pci/devices/${dev}/numa_node 2>/dev/null | xargs) - uevent=$(cat /sys/bus/pci/devices/${dev}/uevent 2>/dev/null | xargs) - if [[ ${uevent} =~ PCI_ID=([^[:space:]]+):([^[:space:]]+) ]]; then - vendor_id=${BASH_REMATCH[1]} - product_id=${BASH_REMATCH[2],,} - else - vendor_id="" - product_id="" - fi - pci_info=$(lspci -s ${dev} 2>/dev/null) - INFO "addr:${dev} vendor:${vendor_id} product:${product_id} numa_node:${numa_node} irq:${irq} msi_irqs:${msi_irqs} ; ${pci_info}" - - # flatten list of irqs, removing duplicates - declare -a irqs=( $(echo "${irq} ${msi_irqs}" | xargs | tr ' ' '\n' | sort -nu) ) - for i in ${irqs[@]} - do - if [[ -e /proc/irq/${i} ]]; then - cpulist=$(cat /proc/irq/${i}/smp_affinity_list 2>/dev/null) - LOG "irq:${i} cpulist:${cpulist}" - fi - done -done - -exit 0 - diff --git a/openstack/python-nova/centos/files/nova-placement-api b/openstack/python-nova/centos/files/nova-placement-api deleted file mode 100755 index 33c241ad..00000000 --- a/openstack/python-nova/centos/files/nova-placement-api +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/python2 -# PBR Generated from u'wsgi_scripts' - -import threading - -from nova.api.openstack.placement.wsgi import init_application - -if __name__ == "__main__": - import argparse - import netaddr - import socket - import sys - import wsgiref.simple_server as wss - - parser = argparse.ArgumentParser( - description=init_application.__doc__, - formatter_class=argparse.ArgumentDefaultsHelpFormatter, - usage='%(prog)s [-h] [--port PORT] [--host IP] -- [passed options]') - parser.add_argument('--port', '-p', type=int, default=8000, - help='TCP port to listen on') - parser.add_argument('--host', '-b', default='', - help='IP to bind the server to') - parser.add_argument('args', - nargs=argparse.REMAINDER, - metavar='-- [passed options]', - help="'--' is the separator of the arguments used " - "to start the WSGI server and the arguments passed " - "to the WSGI application.") - args = parser.parse_args() - if args.args: - if args.args[0] == '--': - args.args.pop(0) - else: - parser.error("unrecognized arguments: %s" % ' '.join(args.args)) - sys.argv[1:] = args.args - - # WRS: In order to support IPv6, server_class.address_family must be set - # to the correct address family. Determine this from specified address. - class server_class(wss.WSGIServer): - pass - if netaddr.valid_ipv4(args.host): - server_class.address_family = socket.AF_INET - else: - server_class.address_family = socket.AF_INET6 - - server = wss.make_server(args.host, args.port, init_application(), - server_class=server_class) - - print("*" * 80) - print("STARTING test server nova.api.openstack.placement.wsgi.init_application") - url = "http://%s:%d/" % (server.server_name, server.server_port) - print("Available at %s" % url) - print("*" * 80) - sys.stdout.flush() - - server.serve_forever() -else: - application = None - app_lock = threading.Lock() - - with app_lock: - if application is None: - application = init_application() diff --git a/openstack/python-nova/centos/files/nova-placement-api.conf b/openstack/python-nova/centos/files/nova-placement-api.conf deleted file mode 100644 index fe8c3ad2..00000000 --- a/openstack/python-nova/centos/files/nova-placement-api.conf +++ /dev/null @@ -1,25 +0,0 @@ -Listen 8778 - - - WSGIProcessGroup nova-placement-api - WSGIApplicationGroup %{GLOBAL} - WSGIPassAuthorization On - WSGIDaemonProcess nova-placement-api processes=3 threads=1 user=nova group=nova - WSGIScriptAlias / /usr/bin/nova-placement-api - = 2.4> - ErrorLogFormat "%M" - - ErrorLog /var/log/nova/nova-placement-api.log - #SSLEngine On - #SSLCertificateFile ... - #SSLCertificateKeyFile ... - - -Alias /nova-placement-api /usr/bin/nova-placement-api - - SetHandler wsgi-script - Options +ExecCGI - WSGIProcessGroup nova-placement-api - WSGIApplicationGroup %{GLOBAL} - WSGIPassAuthorization On - \ No newline at end of file diff --git a/openstack/python-nova/centos/files/nova-polkit.pkla b/openstack/python-nova/centos/files/nova-polkit.pkla deleted file mode 100644 index ae1467d6..00000000 --- a/openstack/python-nova/centos/files/nova-polkit.pkla +++ /dev/null @@ -1,6 +0,0 @@ -[Allow nova libvirt management permissions] -Identity=unix-user:nova -Action=org.libvirt.unix.manage -ResultAny=yes -ResultInactive=yes -ResultActive=yes diff --git a/openstack/python-nova/centos/files/nova-polkit.rules b/openstack/python-nova/centos/files/nova-polkit.rules deleted file mode 100644 index 0146b81a..00000000 --- a/openstack/python-nova/centos/files/nova-polkit.rules +++ /dev/null @@ -1,8 +0,0 @@ -// openstack-nova libvirt management permissions - -polkit.addRule(function(action, subject) { - if (action.id == "org.libvirt.unix.manage" && - subject.user == "nova") { - return polkit.Result.YES; - } -}); diff --git a/openstack/python-nova/centos/files/nova-purge-deleted-active b/openstack/python-nova/centos/files/nova-purge-deleted-active deleted file mode 100644 index 15898a82..00000000 --- a/openstack/python-nova/centos/files/nova-purge-deleted-active +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/bash - -# -# Wrapper script to run nova-manage db purge_deleted_instances on active controller only -# also purges nova action events -# -NOVA_PURGE_INFO="/var/run/nova-purge.info" -NOVA_INSTANCE_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/nova-manage db purge_deleted_instances --older-than 1 >> /var/log/nova/nova-rowspurge.log 2>&1" -NOVA_EVENT_PURGE_CMD="/usr/bin/nice -n 2 /usr/bin/nova-manage db action_events_purge --keep-time-range 5 --max-events 1000 >> /var/log/nova/nova-rowspurge.log 2>&1" - -function is_active_pgserver() -{ - # Determine whether we're running on the same controller as the service. - local service=postgres - local enabledactive=$(/usr/bin/sm-query service $service| grep enabled-active) - if [ "x$enabledactive" == "x" ] - then - # enabled-active not found for that service on this controller - return 1 - else - # enabled-active found for that resource - return 0 - fi -} - -if is_active_pgserver -then - if [ ! -f ${NOVA_PURGE_INFO} ] - then - echo delay_count=0 > ${NOVA_PURGE_INFO} - fi - - source ${NOVA_PURGE_INFO} - sudo -u postgres psql -d sysinv -c "SELECT alarm_id, entity_instance_id from i_alarm;" | grep -P "^(?=.*100.101)(?=.*${HOSTNAME})" &>/dev/null - if [ $? -eq 0 ] - then - source /etc/platform/platform.conf - if [ "${system_type}" = "All-in-one" ] - then - source /etc/init.d/task_affinity_functions.sh - idle_core=$(get_most_idle_core) - if [ "$idle_core" -ne "0" ] - then - # Purge soft deleted records that are older than 1 day and excess action events from nova database. - sh -c "exec taskset -c $idle_core ${NOVA_INSTANCE_PURGE_CMD}" - sh -c "exec taskset -c $idle_core ${NOVA_EVENT_PURGE_CMD}" - sed -i "/delay_count/s/=.*/=0/" ${NOVA_PURGE_INFO} - exit 0 - fi - fi - - if [ "$delay_count" -lt "3" ] - then - newval=$(($delay_count+1)) - sed -i "/delay_count/s/=.*/=$newval/" ${NOVA_PURGE_INFO} - (sleep 3600; /usr/bin/nova-purge-deleted-active) & - exit 0 - fi - fi - - # Purge soft deleted records that are older than 1 day and excess action events from nova database. - eval ${NOVA_INSTANCE_PURGE_CMD} - eval ${NOVA_EVENT_PURGE_CMD} - sed -i "/delay_count/s/=.*/=0/" ${NOVA_PURGE_INFO} -fi - -exit 0 - diff --git a/openstack/python-nova/centos/files/nova-restart b/openstack/python-nova/centos/files/nova-restart deleted file mode 100644 index 426fead7..00000000 --- a/openstack/python-nova/centos/files/nova-restart +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2016 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# - -# -# This script provides an example in-service patching restart, -# triggering a restart of the patching daemons themselves -# - -# -# The patching subsystem provides a patch-functions bash source file -# with useful function and variable definitions. -# -. /etc/patching/patch-functions - -# -# We can now check to see what type of node we're on, if it's locked, etc, -# and act accordingly -# - -# -# Declare an overall script return code -# -declare -i GLOBAL_RC=$PATCH_STATUS_OK - -# -# Processes that run with compute subfunction -# -if is_worker || is_cpe -then - processes_to_restart="nova-compute" - /usr/local/sbin/patch-restart-processes nova-compute - if [ $? != 0 ] ; then - loginfo "patching restart failed" - loginfo "... process-restart ${processes_to_restart}" - exit ${PATCH_STATUS_FAILED} - fi -fi - -# -# Processes that run on controller -# -if is_controller -then - processes_to_restart="nova-conductor nova-api nova-scheduler nova-console-auth nova-novnc nova-placement-api nova-compute nova-serialproxy" - /usr/local/sbin/patch-restart-processes --parallel ${processes_to_restart} - if [ $? != 0 ] ; then - loginfo "patching restart failed" - loginfo "... process-restart ${processes_to_restart}" - exit ${PATCH_STATUS_FAILED} - fi -fi - -# -# Exit the script with the overall return code -# -exit $GLOBAL_RC diff --git a/openstack/python-nova/centos/files/nova-ssh-config b/openstack/python-nova/centos/files/nova-ssh-config deleted file mode 100644 index a5618f71..00000000 --- a/openstack/python-nova/centos/files/nova-ssh-config +++ /dev/null @@ -1,4 +0,0 @@ -Host * - User nova_migration - UserKnownHostsFile /dev/null - IdentityFile /etc/nova/migration/identity \ No newline at end of file diff --git a/openstack/python-nova/centos/files/nova-sudoers b/openstack/python-nova/centos/files/nova-sudoers deleted file mode 100644 index db618036..00000000 --- a/openstack/python-nova/centos/files/nova-sudoers +++ /dev/null @@ -1,4 +0,0 @@ -Defaults:nova !requiretty - -nova ALL = (root) NOPASSWD: /usr/bin/nova-rootwrap /etc/nova/rootwrap.conf * -nova ALL = (root) NOPASSWD: /usr/bin/privsep-helper * diff --git a/openstack/python-nova/centos/files/nova.conf.sample b/openstack/python-nova/centos/files/nova.conf.sample deleted file mode 100644 index 84847b3f..00000000 --- a/openstack/python-nova/centos/files/nova.conf.sample +++ /dev/null @@ -1,4007 +0,0 @@ -[DEFAULT] - -# -# From oslo.messaging -# - -# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP. -# The "host" option should point or resolve to this address. (string value) -#rpc_zmq_bind_address = * - -# MatchMaker driver. (string value) -#rpc_zmq_matchmaker = oslo_messaging._drivers.matchmaker.MatchMakerLocalhost - -# ZeroMQ receiver listening port. (integer value) -#rpc_zmq_port = 9501 - -# Number of ZeroMQ contexts, defaults to 1. (integer value) -#rpc_zmq_contexts = 1 - -# Maximum number of ingress messages to locally buffer per topic. Default is -# unlimited. (integer value) -#rpc_zmq_topic_backlog = - -# Directory for holding IPC sockets. (string value) -#rpc_zmq_ipc_dir = /var/run/openstack - -# Name of this node. Must be a valid hostname, FQDN, or IP address. Must match -# "host" option, if running Nova. (string value) -#rpc_zmq_host = localhost - -# Seconds to wait before a cast expires (TTL). Only supported by impl_zmq. -# (integer value) -#rpc_cast_timeout = 30 - -# Heartbeat frequency. (integer value) -#matchmaker_heartbeat_freq = 300 - -# Heartbeat time-to-live. (integer value) -#matchmaker_heartbeat_ttl = 600 - -# Size of RPC thread pool. (integer value) -#rpc_thread_pool_size = 64 - -# Driver or drivers to handle sending notifications. (multi valued) -#notification_driver = - -# AMQP topic used for OpenStack notifications. (list value) -# Deprecated group/name - [rpc_notifier2]/topics -#notification_topics = notifications - -# Seconds to wait for a response from a call. (integer value) -#rpc_response_timeout = 60 - -# A URL representing the messaging driver to use and its full configuration. If -# not set, we fall back to the rpc_backend option and driver specific -# configuration. (string value) -#transport_url = - -# The messaging driver to use, defaults to rabbit. Other drivers include qpid -# and zmq. (string value) -#rpc_backend = rabbit - -# The default exchange under which topics are scoped. May be overridden by an -# exchange name specified in the transport_url option. (string value) -#control_exchange = openstack - - -# -# Options defined in nova.availability_zones -# - -# The availability_zone to show internal services under -# (string value) -#internal_service_availability_zone=internal - -# Default compute node availability_zone (string value) -#default_availability_zone=nova - - -# -# Options defined in nova.crypto -# - -# Filename of root CA (string value) -#ca_file=cacert.pem - -# Filename of private key (string value) -#key_file=private/cakey.pem - -# Filename of root Certificate Revocation List (string value) -#crl_file=crl.pem - -# Where we keep our keys (string value) -#keys_path=$state_path/keys - -# Where we keep our root CA (string value) -#ca_path=$state_path/CA - -# Should we use a CA for each project? (boolean value) -#use_project_ca=false - -# Subject for certificate for users, %s for project, user, -# timestamp (string value) -#user_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=%.16s-%.16s-%s - -# Subject for certificate for projects, %s for project, -# timestamp (string value) -#project_cert_subject=/C=US/ST=California/O=OpenStack/OU=NovaDev/CN=project-ca-%.16s-%s - - -# -# Options defined in nova.exception -# - -# Make exception message format errors fatal (boolean value) -#fatal_exception_format_errors=false - - -# -# Options defined in nova.netconf -# - -# IP address of this host (string value) -#my_ip=10.0.0.1 - -# Block storage IP address of this host (string value) -#my_block_storage_ip=$my_ip - -# Name of this node. This can be an opaque identifier. It is -# not necessarily a hostname, FQDN, or IP address. However, -# the node name must be valid within an AMQP key, and if using -# ZeroMQ, a valid hostname, FQDN, or IP address (string value) -#host=nova - -# Use IPv6 (boolean value) -#use_ipv6=false - - -# -# Options defined in nova.notifications -# - -# If set, send compute.instance.update notifications on -# instance state changes. Valid values are None for no -# notifications, "vm_state" for notifications on VM state -# changes, or "vm_and_task_state" for notifications on VM and -# task state changes. (string value) -#notify_on_state_change= - -# If set, send api.fault notifications on caught exceptions in -# the API service. (boolean value) -#notify_api_faults=false - -# Default notification level for outgoing notifications -# (string value) -#default_notification_level=INFO - -# Default publisher_id for outgoing notifications (string -# value) -#default_publisher_id= - - -# -# Options defined in nova.paths -# - -# Directory where the nova python module is installed (string -# value) -#pybasedir=/usr/lib/python/site-packages - -# Directory where nova binaries are installed (string value) -#bindir=/usr/local/bin - -# Top-level directory for maintaining nova's state (string -# value) -#state_path=$pybasedir - - -# -# Options defined in nova.quota -# - -# Number of instances allowed per project (integer value) -#quota_instances=10 - -# Number of instance cores allowed per project (integer value) -#quota_cores=20 - -# Megabytes of instance RAM allowed per project (integer -# value) -#quota_ram=51200 - -# Number of floating IPs allowed per project (integer value) -#quota_floating_ips=10 - -# Number of fixed IPs allowed per project (this should be at -# least the number of instances allowed) (integer value) -#quota_fixed_ips=-1 - -# Number of metadata items allowed per instance (integer -# value) -#quota_metadata_items=128 - -# Number of injected files allowed (integer value) -#quota_injected_files=5 - -# Number of bytes allowed per injected file (integer value) -#quota_injected_file_content_bytes=10240 - -# Length of injected file path (integer value) -#quota_injected_file_path_length=255 - -# Number of security groups per project (integer value) -#quota_security_groups=10 - -# Number of security rules per security group (integer value) -#quota_security_group_rules=20 - -# Number of key pairs per user (integer value) -#quota_key_pairs=100 - -# Number of server groups per project (integer value) -#quota_server_groups=10 - -# Number of servers per server group (integer value) -#quota_server_group_members=10 - -# Number of seconds until a reservation expires (integer -# value) -#reservation_expire=86400 - -# Count of reservations until usage is refreshed. This -# defaults to 0(off) to avoid additional load but it is useful -# to turn on to help keep quota usage up to date and reduce -# the impact of out of sync usage issues. (integer value) -#until_refresh=0 - -# Number of seconds between subsequent usage refreshes. This -# defaults to 0(off) to avoid additional load but it is useful -# to turn on to help keep quota usage up to date and reduce -# the impact of out of sync usage issues. Note that quotas are -# not updated on a periodic task, they will update on a new -# reservation if max_age has passed since the last reservation -# (integer value) -#max_age=0 - -# Default driver to use for quota checks (string value) -#quota_driver=nova.quota.DbQuotaDriver - - -# -# Options defined in nova.service -# - -# Seconds between nodes reporting state to datastore (integer -# value) -#report_interval=10 - -# Enable periodic tasks (boolean value) -#periodic_enable=true - -# Range of seconds to randomly delay when starting the -# periodic task scheduler to reduce stampeding. (Disable by -# setting to 0) (integer value) -#periodic_fuzzy_delay=60 - -# A list of APIs to enable by default (list value) -#enabled_apis=ec2,osapi_compute,metadata - -# A list of APIs with enabled SSL (list value) -#enabled_ssl_apis= - -# The IP address on which the EC2 API will listen. (string -# value) -#ec2_listen=0.0.0.0 - -# The port on which the EC2 API will listen. (integer value) -#ec2_listen_port=8773 - -# Number of workers for EC2 API service. The default will be -# equal to the number of CPUs available. (integer value) -#ec2_workers= - -# The IP address on which the OpenStack API will listen. -# (string value) -#osapi_compute_listen=0.0.0.0 - -# The port on which the OpenStack API will listen. (integer -# value) -#osapi_compute_listen_port=8774 - -# Number of workers for OpenStack API service. The default -# will be the number of CPUs available. (integer value) -#osapi_compute_workers= - -# OpenStack metadata service manager (string value) -#metadata_manager=nova.api.manager.MetadataManager - -# The IP address on which the metadata API will listen. -# (string value) -#metadata_listen=0.0.0.0 - -# The port on which the metadata API will listen. (integer -# value) -#metadata_listen_port=8775 - -# Number of workers for metadata service. The default will be -# the number of CPUs available. (integer value) -#metadata_workers= - -# Full class name for the Manager for compute (string value) -#compute_manager=nova.compute.manager.ComputeManager - -# Full class name for the Manager for console proxy (string -# value) -#console_manager=nova.console.manager.ConsoleProxyManager - -# Manager for console auth (string value) -#consoleauth_manager=nova.consoleauth.manager.ConsoleAuthManager - -# Full class name for the Manager for cert (string value) -#cert_manager=nova.cert.manager.CertManager - -# Full class name for the Manager for network (string value) -#network_manager=nova.network.manager.VlanManager - -# Full class name for the Manager for scheduler (string value) -#scheduler_manager=nova.scheduler.manager.SchedulerManager - -# Maximum time since last check-in for up service (integer -# value) -#service_down_time=60 - - -# -# Options defined in nova.utils -# - -# Whether to log monkey patching (boolean value) -#monkey_patch=false - -# List of modules/decorators to monkey patch (list value) -#monkey_patch_modules=nova.api.ec2.cloud:nova.notifications.notify_decorator,nova.compute.api:nova.notifications.notify_decorator - -# Length of generated instance admin passwords (integer value) -#password_length=12 - -# Time period to generate instance usages for. Time period -# must be hour, day, month or year (string value) -#instance_usage_audit_period=month - -# Path to the rootwrap configuration file to use for running -# commands as root (string value) -#rootwrap_config=/etc/nova/rootwrap.conf - -# Explicitly specify the temporary working directory (string -# value) -#tempdir= - - -# -# Options defined in nova.wsgi -# - -# File name for the paste.deploy config for nova-api (string -# value) -#api_paste_config=api-paste.ini - -# A python format string that is used as the template to -# generate log lines. The following values can be formatted -# into it: client_ip, date_time, request_line, status_code, -# body_length, wall_seconds. (string value) -#wsgi_log_format=%(client_ip)s "%(request_line)s" status: %(status_code)s len: %(body_length)s time: %(wall_seconds).7f - -# CA certificate file to use to verify connecting clients -# (string value) -#ssl_ca_file= - -# SSL certificate of API server (string value) -#ssl_cert_file= - -# SSL private key of API server (string value) -#ssl_key_file= - -# Sets the value of TCP_KEEPIDLE in seconds for each server -# socket. Not supported on OS X. (integer value) -#tcp_keepidle=600 - -# Size of the pool of greenthreads used by wsgi (integer -# value) -#wsgi_default_pool_size=1000 - -# Maximum line size of message headers to be accepted. -# max_header_line may need to be increased when using large -# tokens (typically those generated by the Keystone v3 API -# with big service catalogs). (integer value) -#max_header_line=16384 - -# If False, closes the client socket connection explicitly. -# (boolean value) -#wsgi_keep_alive=true - -# Timeout for client connections' socket operations. If an -# incoming connection is idle for this number of seconds it -# will be closed. A value of '0' means wait forever. (integer -# value) -#client_socket_timeout=900 - - -# -# Options defined in nova.api.auth -# - -# Whether to use per-user rate limiting for the api. This -# option is only used by v2 api. Rate limiting is removed from -# v3 api. (boolean value) -#api_rate_limit=false - -# The strategy to use for auth: keystone, noauth -# (deprecated), or noauth2. Both noauth and noauth2 are -# designed for testing only, as they do no actual credential -# checking. noauth provides administrative credentials -# regardless of the passed in user, noauth2 only does if -# 'admin' is specified as the username. (string value) -#auth_strategy=keystone - -# Treat X-Forwarded-For as the canonical remote address. Only -# enable this if you have a sanitizing proxy. (boolean value) -#use_forwarded_for=false - - -# -# Options defined in nova.api.ec2 -# - -# Number of failed auths before lockout. (integer value) -#lockout_attempts=5 - -# Number of minutes to lockout if triggered. (integer value) -#lockout_minutes=15 - -# Number of minutes for lockout window. (integer value) -#lockout_window=15 - -# URL to get token from ec2 request. (string value) -#keystone_ec2_url=http://localhost:5000/v2.0/ec2tokens - -# Return the IP address as private dns hostname in describe -# instances (boolean value) -#ec2_private_dns_show_ip=false - -# Validate security group names according to EC2 specification -# (boolean value) -#ec2_strict_validation=true - -# Time in seconds before ec2 timestamp expires (integer value) -#ec2_timestamp_expiry=300 - -# Disable SSL certificate verification. (boolean value) -#keystone_ec2_insecure=false - - -# -# Options defined in nova.api.ec2.cloud -# - -# The IP address of the EC2 API server (string value) -#ec2_host=$my_ip - -# The internal IP address of the EC2 API server (string value) -#ec2_dmz_host=$my_ip - -# The port of the EC2 API server (integer value) -#ec2_port=8773 - -# The protocol to use when connecting to the EC2 API server -# (http, https) (string value) -#ec2_scheme=http - -# The path prefix used to call the ec2 API server (string -# value) -#ec2_path=/ - -# List of region=fqdn pairs separated by commas (list value) -#region_list= - - -# -# Options defined in nova.api.metadata.base -# - -# List of metadata versions to skip placing into the config -# drive (string value) -#config_drive_skip_versions=1.0 2007-01-19 2007-03-01 2007-08-29 2007-10-10 2007-12-15 2008-02-01 2008-09-01 - -# Driver to use for vendor data (string value) -#vendordata_driver=nova.api.metadata.vendordata_json.JsonFileVendorData - - -# -# Options defined in nova.api.metadata.handler -# - -# Time in seconds to cache metadata; 0 to disable metadata -# caching entirely (not recommended). Increasingthis should -# improve response times of the metadata API when under heavy -# load. Higher values may increase memoryusage and result in -# longer times for host metadata changes to take effect. -# (integer value) -#metadata_cache_expiration=15 - - -# -# Options defined in nova.api.metadata.vendordata_json -# - -# File to load JSON formatted vendor data from (string value) -#vendordata_jsonfile_path= - - -# -# Options defined in nova.api.openstack.common -# - -# The maximum number of items returned in a single response -# from a collection resource (integer value) -#osapi_max_limit=1000 - -# Base URL that will be presented to users in links to the -# OpenStack Compute API (string value) -#osapi_compute_link_prefix= - -# Base URL that will be presented to users in links to glance -# resources (string value) -#osapi_glance_link_prefix= - - -# -# Options defined in nova.api.openstack.compute -# - -# Permit instance snapshot operations. (boolean value) -#allow_instance_snapshots=true - - -# -# Options defined in nova.api.openstack.compute.contrib -# - -# Specify list of extensions to load when using -# osapi_compute_extension option with -# nova.api.openstack.compute.contrib.select_extensions (list -# value) -#osapi_compute_ext_list= - - -# -# Options defined in nova.api.openstack.compute.contrib.fping -# - -# Full path to fping. (string value) -#fping_path=/usr/sbin/fping - - -# -# Options defined in nova.api.openstack.compute.contrib.os_tenant_networks -# - -# Enables or disables quota checking for tenant networks -# (boolean value) -#enable_network_quota=false - -# Control for checking for default networks (string value) -#use_neutron_default_nets=False - -# Default tenant id when creating neutron networks (string -# value) -#neutron_default_tenant_id=default - -# Number of private networks allowed per project (integer -# value) -#quota_networks=3 - - -# -# Options defined in nova.api.openstack.compute.extensions -# - -# osapi compute extension to load (multi valued) -#osapi_compute_extension=nova.api.openstack.compute.contrib.standard_extensions - - -# -# Options defined in nova.api.openstack.compute.plugins.v3.hide_server_addresses -# - -# List of instance states that should hide network info (list -# value) -#osapi_hide_server_address_states=building - - -# -# Options defined in nova.api.openstack.compute.servers -# - -# Enables returning of the instance password by the relevant -# server API calls such as create, rebuild or rescue, If the -# hypervisor does not support password injection then the -# password returned will not be correct (boolean value) -#enable_instance_password=true - - -# -# Options defined in nova.cert.rpcapi -# - -# The topic cert nodes listen on (string value) -#cert_topic=cert - - -# -# Options defined in nova.cloudpipe.pipelib -# - -# Image ID used when starting up a cloudpipe vpn server -# (string value) -#vpn_image_id=0 - -# Flavor for vpn instances (string value) -#vpn_flavor=m1.tiny - -# Template for cloudpipe instance boot script (string value) -#boot_script_template=$pybasedir/nova/cloudpipe/bootscript.template - -# Network to push into openvpn config (string value) -#dmz_net=10.0.0.0 - -# Netmask to push into openvpn config (string value) -#dmz_mask=255.255.255.0 - -# Suffix to add to project name for vpn key and secgroups -# (string value) -#vpn_key_suffix=-vpn - - -# -# Options defined in nova.cmd.novnc -# - -# Record sessions to FILE.[session_number] (boolean value) -#record=false - -# Become a daemon (background process) (boolean value) -#daemon=false - -# Disallow non-encrypted connections (boolean value) -#ssl_only=false - -# Source is ipv6 (boolean value) -#source_is_ipv6=false - -# SSL certificate file (string value) -#cert=self.pem - -# SSL key file (if separate from cert) (string value) -#key= - -# Run webserver on same port. Serve files from DIR. (string -# value) -#web=/usr/share/spice-html5 - - -# -# Options defined in nova.cmd.novncproxy -# - -# Host on which to listen for incoming requests (string value) -#novncproxy_host=0.0.0.0 - -# Port on which to listen for incoming requests (integer -# value) -#novncproxy_port=6080 - - -# -# Options defined in nova.compute.api -# - -# Allow destination machine to match source for resize. Useful -# when testing in single-host environments. (boolean value) -#allow_resize_to_same_host=false - -# Allow migrate machine to the same host. Useful when testing -# in single-host environments. (boolean value) -#allow_migrate_to_same_host=false - -# Availability zone to use when user doesn't specify one -# (string value) -#default_schedule_zone= - -# These are image properties which a snapshot should not -# inherit from an instance (list value) -#non_inheritable_image_properties=cache_in_nova,bittorrent - -# Kernel image that indicates not to use a kernel, but to use -# a raw disk image instead (string value) -#null_kernel=nokernel - -# When creating multiple instances with a single request using -# the os-multiple-create API extension, this template will be -# used to build the display name for each instance. The -# benefit is that the instances end up with different -# hostnames. To restore legacy behavior of every instance -# having the same name, set this option to "%(name)s". Valid -# keys for the template are: name, uuid, count. (string value) -#multi_instance_display_name_template=%(name)s-%(count)d - -# Maximum number of devices that will result in a local image -# being created on the hypervisor node. Setting this to 0 -# means nova will allow only boot from volume. A negative -# number means unlimited. (integer value) -#max_local_block_devices=3 - - -# -# Options defined in nova.compute.flavors -# - -# Default flavor to use for the EC2 API only. The Nova API -# does not support a default flavor. (string value) -#default_flavor=m1.small - - -# -# Options defined in nova.compute.manager -# - -# Console proxy host to use to connect to instances on this -# host. (string value) -#console_host=nova - -# Name of network to use to set access IPs for instances -# (string value) -#default_access_ip_network_name= - -# Whether to batch up the application of IPTables rules during -# a host restart and apply all at the end of the init phase -# (boolean value) -#defer_iptables_apply=false - -# Where instances are stored on disk (string value) -#instances_path=$state_path/instances - -# Generate periodic compute.instance.exists notifications -# (boolean value) -#instance_usage_audit=false - -# Number of 1 second retries needed in live_migration (integer -# value) -#live_migration_retry_count=30 - -# Whether to start guests that were running before the host -# rebooted (boolean value) -#resume_guests_state_on_host_boot=false - -# Number of times to retry network allocation on failures -# (integer value) -#network_allocate_retries=0 - -# Maximum number of instance builds to run concurrently -# (integer value) -#max_concurrent_builds=10 - -# Number of times to retry block device allocation on failures -# (integer value) -#block_device_allocate_retries=60 - -# The number of times to attempt to reap an instance's files. -# (integer value) -#maximum_instance_delete_attempts=5 - -# Interval to pull network bandwidth usage info. Not supported -# on all hypervisors. Set to -1 to disable. Setting this to 0 -# will run at the default rate. (integer value) -#bandwidth_poll_interval=600 - -# Interval to sync power states between the database and the -# hypervisor. Set to -1 to disable. Setting this to 0 will run -# at the default rate. (integer value) -#sync_power_state_interval=600 - -# Number of seconds between instance network information cache -# updates (integer value) -#heal_instance_info_cache_interval=60 - -# Interval in seconds for reclaiming deleted instances -# (integer value) -#reclaim_instance_interval=0 - -# Interval in seconds for gathering volume usages (integer -# value) -#volume_usage_poll_interval=0 - -# Interval in seconds for polling shelved instances to -# offload. Set to -1 to disable.Setting this to 0 will run at -# the default rate. (integer value) -#shelved_poll_interval=3600 - -# Time in seconds before a shelved instance is eligible for -# removing from a host. -1 never offload, 0 offload when -# shelved (integer value) -#shelved_offload_time=0 - -# Interval in seconds for retrying failed instance file -# deletes. Set to -1 to disable. Setting this to 0 will run at -# the default rate. (integer value) -#instance_delete_interval=300 - -# Waiting time interval (seconds) between block device -# allocation retries on failures (integer value) -#block_device_allocate_retries_interval=3 - -# Waiting time interval (seconds) between sending the -# scheduler a list of current instance UUIDs to verify that -# its view of instances is in sync with nova. If the CONF -# option `scheduler_tracks_instance_changes` is False, -# changing this option will have no effect. (integer value) -#scheduler_instance_sync_interval=120 - -# Action to take if a running deleted instance is detected. -# Valid options are 'noop', 'log', 'shutdown', or 'reap'. Set -# to 'noop' to take no action. (string value) -#running_deleted_instance_action=reap - -# Number of seconds to wait between runs of the cleanup task. -# (integer value) -#running_deleted_instance_poll_interval=1800 - -# Number of seconds after being deleted when a running -# instance should be considered eligible for cleanup. (integer -# value) -#running_deleted_instance_timeout=0 - -# Automatically hard reboot an instance if it has been stuck -# in a rebooting state longer than N seconds. Set to 0 to -# disable. (integer value) -#reboot_timeout=0 - -# Amount of time in seconds an instance can be in BUILD before -# going into ERROR status. Set to 0 to disable. (integer -# value) -#instance_build_timeout=0 - -# Automatically unrescue an instance after N seconds. Set to 0 -# to disable. (integer value) -#rescue_timeout=0 - -# Automatically confirm resizes after N seconds. Set to 0 to -# disable. (integer value) -#resize_confirm_window=0 - -# Total amount of time to wait in seconds for an instance to -# perform a clean shutdown. (integer value) -#shutdown_timeout=60 - - -# -# Options defined in nova.compute.monitors -# - -# Monitor classes available to the compute which may be -# specified more than once. (multi valued) -#compute_available_monitors=nova.compute.monitors.all_monitors - -# A list of monitors that can be used for getting compute -# metrics. (list value) -#compute_monitors= - - -# -# Options defined in nova.compute.resource_tracker -# - -# Amount of disk in MB to reserve for the host (integer value) -#reserved_host_disk_mb=0 - -# Amount of memory in MB to reserve for the host (integer -# value) -#reserved_host_memory_mb=512 - -# Class that will manage stats for the local compute host -# (string value) -#compute_stats_class=nova.compute.stats.Stats - -# The names of the extra resources to track. (list value) -#compute_resources=vcpu - - -# -# Options defined in nova.compute.rpcapi -# - -# The topic compute nodes listen on (string value) -#compute_topic=compute - - -# -# Options defined in nova.conductor.tasks.live_migrate -# - -# Number of times to retry live-migration before failing. If -# == -1, try until out of hosts. If == 0, only try once, no -# retries. (integer value) -#migrate_max_retries=-1 - - -# -# Options defined in nova.console.manager -# - -# Driver to use for the console proxy (string value) -#console_driver=nova.console.xvp.XVPConsoleProxy - -# Stub calls to compute worker for tests (boolean value) -#stub_compute=false - -# Publicly visible name for this console host (string value) -#console_public_hostname=nova - - -# -# Options defined in nova.console.rpcapi -# - -# The topic console proxy nodes listen on (string value) -#console_topic=console - - -# -# Options defined in nova.console.xvp -# - -# XVP conf template (string value) -#console_xvp_conf_template=$pybasedir/nova/console/xvp.conf.template - -# Generated XVP conf file (string value) -#console_xvp_conf=/etc/xvp.conf - -# XVP master process pid file (string value) -#console_xvp_pid=/var/run/xvp.pid - -# XVP log file (string value) -#console_xvp_log=/var/log/xvp.log - -# Port for XVP to multiplex VNC connections on (integer value) -#console_xvp_multiplex_port=5900 - - -# -# Options defined in nova.consoleauth -# - -# The topic console auth proxy nodes listen on (string value) -#consoleauth_topic=consoleauth - - -# -# Options defined in nova.consoleauth.manager -# - -# How many seconds before deleting tokens (integer value) -#console_token_ttl=600 - - -# -# Options defined in nova.db.api -# - -# Services to be added to the available pool on create -# (boolean value) -#enable_new_services=true - -# Template string to be used to generate instance names -# (string value) -#instance_name_template=instance-%08x - -# Template string to be used to generate snapshot names -# (string value) -#snapshot_name_template=snapshot-%s - - -# -# Options defined in nova.db.base -# - -# The driver to use for database access (string value) -#db_driver=nova.db - - -# -# Options defined in nova.db.sqlalchemy.api -# - -# When set, compute API will consider duplicate hostnames -# invalid within the specified scope, regardless of case. -# Should be empty, "project" or "global". (string value) -#osapi_compute_unique_server_name_scope= - - -# -# Options defined in nova.image.s3 -# - -# Parent directory for tempdir used for image decryption -# (string value) -#image_decryption_dir=/tmp - -# Hostname or IP for OpenStack to use when accessing the S3 -# api (string value) -#s3_host=$my_ip - -# Port used when accessing the S3 api (integer value) -#s3_port=3333 - -# Access key to use for S3 server for images (string value) -#s3_access_key=notchecked - -# Secret key to use for S3 server for images (string value) -#s3_secret_key=notchecked - -# Whether to use SSL when talking to S3 (boolean value) -#s3_use_ssl=false - -# Whether to affix the tenant id to the access key when -# downloading from S3 (boolean value) -#s3_affix_tenant=false - - -# -# Options defined in nova.ipv6.api -# - -# Backend to use for IPv6 generation (string value) -#ipv6_backend=rfc2462 - - -# -# Options defined in nova.network -# - -# The full class name of the network API class to use (string -# value) -#network_api_class=nova.network.api.API - - -# -# Options defined in nova.network.driver -# - -# Driver to use for network creation (string value) -#network_driver=nova.network.linux_net - - -# -# Options defined in nova.network.floating_ips -# - -# Default pool for floating IPs (string value) -#default_floating_pool=nova - -# Autoassigning floating IP to VM (boolean value) -#auto_assign_floating_ip=false - -# Full class name for the DNS Manager for floating IPs (string -# value) -#floating_ip_dns_manager=nova.network.noop_dns_driver.NoopDNSDriver - -# Full class name for the DNS Manager for instance IPs (string -# value) -#instance_dns_manager=nova.network.noop_dns_driver.NoopDNSDriver - -# Full class name for the DNS Zone for instance IPs (string -# value) -#instance_dns_domain= - - -# -# Options defined in nova.network.ldapdns -# - -# URL for LDAP server which will store DNS entries (string -# value) -#ldap_dns_url=ldap://ldap.example.com:389 - -# User for LDAP DNS (string value) -#ldap_dns_user=uid=admin,ou=people,dc=example,dc=org - -# Password for LDAP DNS (string value) -#ldap_dns_password=password - -# Hostmaster for LDAP DNS driver Statement of Authority -# (string value) -#ldap_dns_soa_hostmaster=hostmaster@example.org - -# DNS Servers for LDAP DNS driver (multi valued) -#ldap_dns_servers=dns.example.org - -# Base DN for DNS entries in LDAP (string value) -#ldap_dns_base_dn=ou=hosts,dc=example,dc=org - -# Refresh interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_refresh=1800 - -# Retry interval (in seconds) for LDAP DNS driver Statement of -# Authority (string value) -#ldap_dns_soa_retry=3600 - -# Expiry interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_expiry=86400 - -# Minimum interval (in seconds) for LDAP DNS driver Statement -# of Authority (string value) -#ldap_dns_soa_minimum=7200 - - -# -# Options defined in nova.network.linux_net -# - -# Location of flagfiles for dhcpbridge (multi valued) -#dhcpbridge_flagfile=/etc/nova/nova-dhcpbridge.conf - -# Location to keep network config files (string value) -#networks_path=$state_path/networks - -# Interface for public IP addresses (string value) -#public_interface=eth0 - -# Location of nova-dhcpbridge (string value) -#dhcpbridge=$bindir/nova-dhcpbridge - -# Public IP of network host (string value) -#routing_source_ip=$my_ip - -# Lifetime of a DHCP lease in seconds (integer value) -#dhcp_lease_time=86400 - -# If set, uses specific DNS server for dnsmasq. Can be -# specified multiple times. (multi valued) -#dns_server= - -# If set, uses the dns1 and dns2 from the network ref. as dns -# servers. (boolean value) -#use_network_dns_servers=false - -# A list of dmz ranges that should be accepted (list value) -#dmz_cidr= - -# Traffic to this range will always be snatted to the fallback -# ip, even if it would normally be bridged out of the node. -# Can be specified multiple times. (multi valued) -#force_snat_range= - -# Override the default dnsmasq settings with this file (string -# value) -#dnsmasq_config_file= - -# Driver used to create ethernet devices. (string value) -#linuxnet_interface_driver=nova.network.linux_net.LinuxBridgeInterfaceDriver - -# Name of Open vSwitch bridge used with linuxnet (string -# value) -#linuxnet_ovs_integration_bridge=br-int - -# Send gratuitous ARPs for HA setup (boolean value) -#send_arp_for_ha=false - -# Send this many gratuitous ARPs for HA setup (integer value) -#send_arp_for_ha_count=3 - -# Use single default gateway. Only first nic of vm will get -# default gateway from dhcp server (boolean value) -#use_single_default_gateway=false - -# An interface that bridges can forward to. If this is set to -# all then all traffic will be forwarded. Can be specified -# multiple times. (multi valued) -#forward_bridge_interface=all - -# The IP address for the metadata API server (string value) -#metadata_host=$my_ip - -# The port for the metadata API port (integer value) -#metadata_port=8775 - -# Regular expression to match the iptables rule that should -# always be on the top. (string value) -#iptables_top_regex= - -# Regular expression to match the iptables rule that should -# always be on the bottom. (string value) -#iptables_bottom_regex= - -# The table that iptables to jump to when a packet is to be -# dropped. (string value) -#iptables_drop_action=DROP - -# Amount of time, in seconds, that ovs_vsctl should wait for a -# response from the database. 0 is to wait forever. (integer -# value) -#ovs_vsctl_timeout=120 - -# If passed, use fake network devices and addresses (boolean -# value) -#fake_network=false - -# Number of times to retry ebtables commands on failure. -# (integer value) -#ebtables_exec_attempts=3 - -# Number of seconds to wait between ebtables retries. -# (floating point value) -#ebtables_retry_interval=1.0 - - -# -# Options defined in nova.network.manager -# - -# Bridge for simple network instances (string value) -#flat_network_bridge= - -# DNS server for simple network (string value) -#flat_network_dns=8.8.4.4 - -# Whether to attempt to inject network setup into guest -# (boolean value) -#flat_injected=false - -# FlatDhcp will bridge into this interface if set (string -# value) -#flat_interface= - -# First VLAN for private networks (integer value) -#vlan_start=100 - -# VLANs will bridge into this interface if set (string value) -#vlan_interface= - -# Number of networks to support (integer value) -#num_networks=1 - -# Public IP for the cloudpipe VPN servers (string value) -#vpn_ip=$my_ip - -# First Vpn port for private networks (integer value) -#vpn_start=1000 - -# Number of addresses in each private subnet (integer value) -#network_size=256 - -# Fixed IPv6 address block (string value) -#fixed_range_v6=fd00::/48 - -# Default IPv4 gateway (string value) -#gateway= - -# Default IPv6 gateway (string value) -#gateway_v6= - -# Number of addresses reserved for vpn clients (integer value) -#cnt_vpn_clients=0 - -# Seconds after which a deallocated IP is disassociated -# (integer value) -#fixed_ip_disassociate_timeout=600 - -# Number of attempts to create unique mac address (integer -# value) -#create_unique_mac_address_attempts=5 - -# If True, skip using the queue and make local calls (boolean -# value) -#fake_call=false - -# If True, unused gateway devices (VLAN and bridge) are -# deleted in VLAN network mode with multi hosted networks -# (boolean value) -#teardown_unused_network_gateway=false - -# If True, send a dhcp release on instance termination -# (boolean value) -#force_dhcp_release=true - -# If True, when a DNS entry must be updated, it sends a fanout -# cast to all network hosts to update their DNS entries in -# multi host mode (boolean value) -#update_dns_entries=false - -# Number of seconds to wait between runs of updates to DNS -# entries. (integer value) -#dns_update_periodic_interval=-1 - -# Domain to use for building the hostnames (string value) -#dhcp_domain=novalocal - -# Indicates underlying L3 management library (string value) -#l3_lib=nova.network.l3.LinuxNetL3 - - -# -# Options defined in nova.network.rpcapi -# - -# The topic network nodes listen on (string value) -#network_topic=network - -# Default value for multi_host in networks. Also, if set, some -# rpc network calls will be sent directly to host. (boolean -# value) -#multi_host=false - - -# -# Options defined in nova.network.security_group.openstack_driver -# - -# The full class name of the security API class (string value) -#security_group_api=nova - - -# -# Options defined in nova.objects.network -# - -# DEPRECATED: THIS VALUE SHOULD BE SET WHEN CREATING THE -# NETWORK. If True in multi_host mode, all compute hosts share -# the same dhcp address. The same IP address used for DHCP -# will be added on each nova-network node which is only -# visible to the vms on the same host. (boolean value) -#share_dhcp_address=false - -# DEPRECATED: THIS VALUE SHOULD BE SET WHEN CREATING THE -# NETWORK. MTU setting for network interface. (integer value) -#network_device_mtu= - - -# -# Options defined in nova.objectstore.s3server -# - -# Path to S3 buckets (string value) -#buckets_path=$state_path/buckets - -# IP address for S3 API to listen (string value) -#s3_listen=0.0.0.0 - -# Port for S3 API to listen (integer value) -#s3_listen_port=3333 - - -# -# From oslo.log -# - -# Print debugging output (set logging level to DEBUG instead of default WARNING -# level). (boolean value) -#debug = false - -# Print more verbose output (set logging level to INFO instead of default -# WARNING level). (boolean value) -#verbose = false - -# The name of a logging configuration file. This file is appended to any -# existing logging configuration files. For details about logging configuration -# files, see the Python logging module documentation. (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may use any -# of the available logging.LogRecord attributes. This option is deprecated. -# Please use logging_context_format_string and logging_default_format_string -# instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s . (string -# value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, logging will -# go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. (string -# value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED during I, and -# will change in J to honor RFC5424. (boolean value) -#use_syslog = false - -# (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, -# prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The -# format without the APP-NAME is deprecated in I, and will be removed in J. -# (boolean value) -#use_syslog_rfc_format = false - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN - -# Enables or disables publication of error events. (boolean value) -#publish_errors = false - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# The format for an instance that is passed with the log message. (string -# value) -#instance_format = "[instance: %(uuid)s] " - -# The format for an instance UUID that is passed with the log message. (string -# value) -#instance_uuid_format = "[instance: %(uuid)s] " - - -# -# Options defined in nova.pci.request -# - -# An alias for a PCI passthrough device requirement. This -# allows users to specify the alias in the extra_spec for a -# flavor, without needing to repeat all the PCI property -# requirements. For example: pci_alias = { "name": -# "QuicAssist", "product_id": "0443", "vendor_id": "8086", -# "device_type": "ACCEL" } defines an alias for the Intel -# QuickAssist card. (multi valued) (multi valued) -#pci_alias= - - -# -# Options defined in nova.pci.whitelist -# - -# White list of PCI devices available to VMs. For example: -# pci_passthrough_whitelist = [{"vendor_id": "8086", -# "product_id": "0443"}] (multi valued) -#pci_passthrough_whitelist= - - -# -# Options defined in nova.scheduler.driver -# - -# The scheduler host manager class to use (string value) -#scheduler_host_manager=nova.scheduler.host_manager.HostManager - - -# -# Options defined in nova.scheduler.filter_scheduler -# - -# New instances will be scheduled on a host chosen randomly -# from a subset of the N best hosts. This property defines the -# subset size that a host is chosen from. A value of 1 chooses -# the first host returned by the weighing functions. This -# value must be at least 1. Any value less than 1 will be -# ignored, and 1 will be used instead (integer value) -#scheduler_host_subset_size=1 - - -# -# Options defined in nova.scheduler.filters.aggregate_image_properties_isolation -# - -# Force the filter to consider only keys matching the given -# namespace. (string value) -#aggregate_image_properties_isolation_namespace= - -# The separator used between the namespace and keys (string -# value) -#aggregate_image_properties_isolation_separator=. - - -# -# Options defined in nova.scheduler.filters.core_filter -# - -# Virtual CPU to physical CPU allocation ratio which affects -# all CPU filters. This configuration specifies a global ratio -# for CoreFilter. For AggregateCoreFilter, it will fall back -# to this configuration value if no per-aggregate setting -# found. (floating point value) -#cpu_allocation_ratio=16.0 - - -# -# Options defined in nova.scheduler.filters.disk_filter -# - -# Virtual disk to physical disk allocation ratio (floating -# point value) -#disk_allocation_ratio=1.0 - - -# -# Options defined in nova.scheduler.filters.io_ops_filter -# - -# Tells filters to ignore hosts that have this many or more -# instances currently in build, resize, snapshot, migrate, -# rescue or unshelve task states (integer value) -#max_io_ops_per_host=8 - - -# -# Options defined in nova.scheduler.filters.isolated_hosts_filter -# - -# Images to run on isolated host (list value) -#isolated_images= - -# Host reserved for specific images (list value) -#isolated_hosts= - -# Whether to force isolated hosts to run only isolated images -# (boolean value) -#restrict_isolated_hosts_to_isolated_images=true - - -# -# Options defined in nova.scheduler.filters.num_instances_filter -# - -# Ignore hosts that have too many instances (integer value) -#max_instances_per_host=50 - - -# -# Options defined in nova.scheduler.filters.ram_filter -# - -# Virtual ram to physical ram allocation ratio which affects -# all ram filters. This configuration specifies a global ratio -# for RamFilter. For AggregateRamFilter, it will fall back to -# this configuration value if no per-aggregate setting found. -# (floating point value) -#ram_allocation_ratio=1.5 - - -# -# Options defined in nova.scheduler.host_manager -# - -# Filter classes available to the scheduler which may be -# specified more than once. An entry of -# "nova.scheduler.filters.all_filters" maps to all filters -# included with nova. (multi valued) -#scheduler_available_filters=nova.scheduler.filters.all_filters - -# Which filter class names to use for filtering hosts when not -# specified in the request. (list value) -#scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter - -# Which weight class names to use for weighing hosts (list -# value) -#scheduler_weight_classes=nova.scheduler.weights.all_weighers - -# Determines if the Scheduler tracks changes to instances to -# help with its filtering decisions. (boolean value) -#scheduler_tracks_instance_changes=true - - -# -# Options defined in nova.scheduler.ironic_host_manager -# - -# Which filter class names to use for filtering baremetal -# hosts when not specified in the request. (list value) -#baremetal_scheduler_default_filters=RetryFilter,AvailabilityZoneFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ExactRamFilter,ExactDiskFilter,ExactCoreFilter - -# Flag to decide whether to use -# baremetal_scheduler_default_filters or not. (boolean value) -#scheduler_use_baremetal_filters=false - - -# -# Options defined in nova.scheduler.manager -# - -# Default driver to use for the scheduler (string value) -#scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler - -# How often (in seconds) to run periodic tasks in the -# scheduler driver of your choice. Please note this is likely -# to interact with the value of service_down_time, but exactly -# how they interact will depend on your choice of scheduler -# driver. (integer value) -#scheduler_driver_task_period=60 - - -# -# Options defined in nova.scheduler.rpcapi -# - -# The topic scheduler nodes listen on (string value) -#scheduler_topic=scheduler - - -# -# Options defined in nova.scheduler.scheduler_options -# - -# Absolute path to scheduler configuration JSON file. (string -# value) -#scheduler_json_config_location= - - -# -# Options defined in nova.scheduler.utils -# - -# Maximum number of attempts to schedule an instance (integer -# value) -#scheduler_max_attempts=3 - - -# -# Options defined in nova.scheduler.weights.io_ops -# - -# Multiplier used for weighing host io ops. Negative numbers -# mean a preference to choose light workload compute hosts. -# (floating point value) -#io_ops_weight_multiplier=-1.0 - - -# -# Options defined in nova.scheduler.weights.ram -# - -# Multiplier used for weighing ram. Negative numbers mean to -# stack vs spread. (floating point value) -#ram_weight_multiplier=1.0 - - -# -# Options defined in nova.servicegroup.api -# - -# The driver for servicegroup service (valid options are: db, -# zk, mc) (string value) -#servicegroup_driver=db - - -# -# Options defined in nova.virt.configdrive -# - -# Config drive format. One of iso9660 (default) or vfat -# (string value) -#config_drive_format=iso9660 - -# Set to "always" to force injection to take place on a config -# drive. NOTE: The "always" will be deprecated in the Liberty -# release cycle. (string value) -#force_config_drive= - -# Name and optionally path of the tool used for ISO image -# creation (string value) -#mkisofs_cmd=genisoimage - - -# -# Options defined in nova.virt.disk.api -# - -# Name of the mkfs commands for ephemeral device. The format -# is = (multi valued) -#virt_mkfs= - -# Attempt to resize the filesystem by accessing the image over -# a block device. This is done by the host and may not be -# necessary if the image contains a recent version of cloud- -# init. Possible mechanisms require the nbd driver (for qcow -# and raw), or loop (for raw). (boolean value) -#resize_fs_using_block_device=false - - -# -# Options defined in nova.virt.disk.mount.nbd -# - -# Amount of time, in seconds, to wait for NBD device start up. -# (integer value) -#timeout_nbd=10 - - -# -# Options defined in nova.virt.driver -# - -# Driver to use for controlling virtualization. Options -# include: libvirt.LibvirtDriver, xenapi.XenAPIDriver, -# fake.FakeDriver, baremetal.BareMetalDriver, -# vmwareapi.VMwareVCDriver, hyperv.HyperVDriver (string value) -#compute_driver= - -# The default format an ephemeral_volume will be formatted -# with on creation. (string value) -#default_ephemeral_format= - -# VM image preallocation mode: "none" => no storage -# provisioning is done up front, "space" => storage is fully -# allocated at instance start (string value) -#preallocate_images=none - -# Whether to use cow images (boolean value) -#use_cow_images=true - -# Fail instance boot if vif plugging fails (boolean value) -#vif_plugging_is_fatal=true - -# Number of seconds to wait for neutron vif plugging events to -# arrive before continuing or failing (see -# vif_plugging_is_fatal). If this is set to zero and -# vif_plugging_is_fatal is False, events should not be -# expected to arrive at all. (integer value) -#vif_plugging_timeout=300 - - -# -# Options defined in nova.virt.firewall -# - -# Firewall driver (defaults to hypervisor specific iptables -# driver) (string value) -#firewall_driver= - -# Whether to allow network traffic from same network (boolean -# value) -#allow_same_net_traffic=true - - -# -# Options defined in nova.virt.hardware -# - -# Defines which pcpus that instance vcpus can use. For -# example, "4-12,^8,15" (string value) -#vcpu_pin_set= - - -# -# Options defined in nova.virt.imagecache -# - -# Number of seconds to wait between runs of the image cache -# manager. Set to -1 to disable. Setting this to 0 will run at -# the default rate. (integer value) -#image_cache_manager_interval=2400 - -# Where cached images are stored under $instances_path. This -# is NOT the full path - just a folder name. For per-compute- -# host cached images, set to _base_$my_ip (string value) -#image_cache_subdirectory_name=_base - -# Should unused base images be removed? (boolean value) -#remove_unused_base_images=true - -# Unused unresized base images younger than this will not be -# removed (integer value) -#remove_unused_original_minimum_age_seconds=86400 - - -# -# Options defined in nova.virt.images -# - -# Force backing images to raw format (boolean value) -#force_raw_images=true - - -# -# Options defined in nova.virt.netutils -# - -# Template file for injected network (string value) -#injected_network_template=$pybasedir/nova/virt/interfaces.template - - -# -# Options defined in nova.vnc -# - -# Location of VNC console proxy, in the form -# "http://127.0.0.1:6080/vnc_auto.html" (string value) -#novncproxy_base_url=http://127.0.0.1:6080/vnc_auto.html - -# Location of nova xvp VNC console proxy, in the form -# "http://127.0.0.1:6081/console" (string value) -#xvpvncproxy_base_url=http://127.0.0.1:6081/console - -# IP address on which instance vncservers should listen -# (string value) -#vncserver_listen=127.0.0.1 - -# The address to which proxy clients (like nova-xvpvncproxy) -# should connect (string value) -#vncserver_proxyclient_address=127.0.0.1 - -# Enable VNC related features (boolean value) -#vnc_enabled=true - -# Keymap for VNC (string value) -#vnc_keymap=en-us - - -# -# Options defined in nova.vnc.xvp_proxy -# - -# Port that the XCP VNC proxy should bind to (integer value) -#xvpvncproxy_port=6081 - -# Address that the XCP VNC proxy should bind to (string value) -#xvpvncproxy_host=0.0.0.0 - - -# -# Options defined in nova.volume -# - -# The full class name of the volume API class to use (string -# value) -#volume_api_class=nova.volume.cinder.API - - -# -# Options defined in nova.openstack.common.eventlet_backdoor -# - -# Enable eventlet backdoor. Acceptable values are 0, , -# and :, where 0 results in listening on a random -# tcp port number; results in listening on the -# specified port number (and not enabling backdoor if that -# port is in use); and : results in listening on -# the smallest unused port number within the specified range -# of port numbers. The chosen port is displayed in the -# service's log file. (string value) -#backdoor_port= - - -# -# Options defined in nova.openstack.common.memorycache -# - -# Memcached servers or None for in process cache. (list value) -#memcached_servers= - - -# -# Options defined in nova.openstack.common.periodic_task -# - -# Some periodic tasks can be run in a separate process. Should -# we run them here? (boolean value) -#run_external_periodic_tasks=true - - -# -# Options defined in nova.openstack.common.policy -# - -# The JSON file that defines policies. (string value) -#policy_file=policy.json - -# Default rule. Enforced when a requested rule is not found. -# (string value) -#policy_default_rule=default - -# Directories where policy configuration files are stored. -# They can be relative to any directory in the search path -# defined by the config_dir option, or absolute paths. The -# file defined by policy_file must exist for these directories -# to be searched. Missing or empty directories are ignored. -# (multi valued) -#policy_dirs=policy.d - - -# -# Options defined in nova.openstack.common.versionutils -# - -# Enables or disables fatal status of deprecations. (boolean -# value) -#fatal_deprecations=false - - -[api_database] - -# -# Options defined in nova.db.sqlalchemy.api -# - -# The SQLAlchemy connection string to use to connect to the -# Nova API database. (string value) -#connection= - -# If True, SQLite uses synchronous mode. (boolean value) -#sqlite_synchronous=true - -# Timeout before idle SQL connections are reaped. (integer -# value) -#idle_timeout=3600 - -# Maximum number of SQL connections to keep open in a pool. -# (integer value) -#max_pool_size= - -# Maximum number of database connection retries during -# startup. Set to -1 to specify an infinite retry count. -# (integer value) -#max_retries=10 - -# Interval between retries of opening a SQL connection. -# (integer value) -#retry_interval=10 - -# If set, use this value for max_overflow with SQLAlchemy. -# (integer value) -#max_overflow= - -# Verbosity of SQL debugging information: 0=None, -# 100=Everything. (integer value) -#connection_debug=0 - -# Add Python stack traces to SQL as comment strings. (boolean -# value) -#connection_trace=false - -# If set, use this value for pool_timeout with SQLAlchemy. -# (integer value) -#pool_timeout= - - -[barbican] - -# -# Options defined in nova.keymgr.barbican -# - -# Info to match when looking for barbican in the service -# catalog. Format is: separated values of the form: -# :: (string value) -#catalog_info=key-manager:barbican:public - -# Override service catalog lookup with template for barbican -# endpoint e.g. http://localhost:9311/v1/%(project_id)s -# (string value) -#endpoint_template= - -# Region name of this node (string value) -#os_region_name= - - -# -# Options defined in nova.volume.cinder -# - -# Region name of this node (string value) -#os_region_name= - - -[cells] - -# -# Options defined in nova.cells.manager -# - -# Cells communication driver to use (string value) -#driver=nova.cells.rpc_driver.CellsRPCDriver - -# Number of seconds after an instance was updated or deleted -# to continue to update cells (integer value) -#instance_updated_at_threshold=3600 - -# Number of instances to update per periodic task run (integer -# value) -#instance_update_num_instances=1 - - -# -# Options defined in nova.cells.messaging -# - -# Maximum number of hops for cells routing. (integer value) -#max_hop_count=10 - -# Cells scheduler to use (string value) -#scheduler=nova.cells.scheduler.CellsScheduler - - -# -# Options defined in nova.cells.opts -# - -# Enable cell functionality (boolean value) -#enable=false - -# The topic cells nodes listen on (string value) -#topic=cells - -# Manager for cells (string value) -#manager=nova.cells.manager.CellsManager - -# Name of this cell (string value) -#name=nova - -# Key/Multi-value list with the capabilities of the cell (list -# value) -#capabilities=hypervisor=xenserver;kvm,os=linux;windows - -# Seconds to wait for response from a call to a cell. (integer -# value) -#call_timeout=60 - -# Percentage of cell capacity to hold in reserve. Affects both -# memory and disk utilization (floating point value) -#reserve_percent=10.0 - -# Type of cell: api or compute (string value) -#cell_type=compute - -# Number of seconds after which a lack of capability and -# capacity updates signals the child cell is to be treated as -# a mute. (integer value) -#mute_child_interval=300 - -# Seconds between bandwidth updates for cells. (integer value) -#bandwidth_update_interval=600 - - -# -# Options defined in nova.cells.rpc_driver -# - -# Base queue name to use when communicating between cells. -# Various topics by message type will be appended to this. -# (string value) -#rpc_driver_queue_base=cells.intercell - - -# -# Options defined in nova.cells.scheduler -# - -# Filter classes the cells scheduler should use. An entry of -# "nova.cells.filters.all_filters" maps to all cells filters -# included with nova. (list value) -#scheduler_filter_classes=nova.cells.filters.all_filters - -# Weigher classes the cells scheduler should use. An entry of -# "nova.cells.weights.all_weighers" maps to all cell weighers -# included with nova. (list value) -#scheduler_weight_classes=nova.cells.weights.all_weighers - -# How many retries when no cells are available. (integer -# value) -#scheduler_retries=10 - -# How often to retry in seconds when no cells are available. -# (integer value) -#scheduler_retry_delay=2 - - -# -# Options defined in nova.cells.state -# - -# Interval, in seconds, for getting fresh cell information -# from the database. (integer value) -#db_check_interval=60 - -# Configuration file from which to read cells configuration. -# If given, overrides reading cells from the database. (string -# value) -#cells_config= - - -# -# Options defined in nova.cells.weights.mute_child -# - -# Multiplier used to weigh mute children. (The value should be -# negative.) (floating point value) -#mute_weight_multiplier=-10.0 - -# Weight value assigned to mute children. (The value should be -# positive.) (floating point value) -#mute_weight_value=1000.0 - - -# -# Options defined in nova.cells.weights.ram_by_instance_type -# - -# Multiplier used for weighing ram. Negative numbers mean to -# stack vs spread. (floating point value) -#ram_weight_multiplier=10.0 - - -# -# Options defined in nova.cells.weights.weight_offset -# - -# Multiplier used to weigh offset weigher. (floating point -# value) -#offset_weight_multiplier=1.0 - - -[cinder] - -# -# Options defined in nova.volume.cinder -# - -# Info to match when looking for cinder in the service -# catalog. Format is: separated values of the form: -# :: (string value) -#catalog_info=volumev2:cinderv2:publicURL - -# Override service catalog lookup with template for cinder -# endpoint e.g. http://localhost:8776/v1/%(project_id)s -# (string value) -#endpoint_template= - -# Number of cinderclient retries on failed http calls (integer -# value) -#http_retries=3 - -# Allow attach between instance and volume in different -# availability zones. (boolean value) -#cross_az_attach=true - - -[conductor] - -# -# Options defined in nova.conductor.api -# - -# Perform nova-conductor operations locally (boolean value) -#use_local=false - -# The topic on which conductor nodes listen (string value) -#topic=conductor - -# Full class name for the Manager for conductor (string value) -#manager=nova.conductor.manager.ConductorManager - -# Number of workers for OpenStack Conductor service. The -# default will be the number of CPUs available. (integer -# value) -#workers= - - -[database] - -# -# From oslo.db -# - -# The file name to use with SQLite. (string value) -# Deprecated group/name - [DEFAULT]/sqlite_db -#sqlite_db = oslo.sqlite - -# If True, SQLite uses synchronous mode. (boolean value) -# Deprecated group/name - [DEFAULT]/sqlite_synchronous -#sqlite_synchronous = true - -# The back end to use for the database. (string value) -# Deprecated group/name - [DEFAULT]/db_backend -#backend = sqlalchemy - -# The SQLAlchemy connection string to use to connect to the database. (string -# value) -# Deprecated group/name - [DEFAULT]/sql_connection -# Deprecated group/name - [DATABASE]/sql_connection -# Deprecated group/name - [sql]/connection -#connection = - -# The SQLAlchemy connection string to use to connect to the slave database. -# (string value) -#slave_connection = - -# The SQL mode to be used for MySQL sessions. This option, including the -# default, overrides any server-set SQL mode. To use whatever SQL mode is set -# by the server configuration, set this to no value. Example: mysql_sql_mode= -# (string value) -#mysql_sql_mode = TRADITIONAL - -# Timeout before idle SQL connections are reaped. (integer value) -# Deprecated group/name - [DEFAULT]/sql_idle_timeout -# Deprecated group/name - [DATABASE]/sql_idle_timeout -# Deprecated group/name - [sql]/idle_timeout -#idle_timeout = 3600 - -# Minimum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_min_pool_size -# Deprecated group/name - [DATABASE]/sql_min_pool_size -#min_pool_size = 1 - -# Maximum number of SQL connections to keep open in a pool. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_pool_size -# Deprecated group/name - [DATABASE]/sql_max_pool_size -#max_pool_size = - -# Maximum number of database connection retries during startup. Set to -1 to -# specify an infinite retry count. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_retries -# Deprecated group/name - [DATABASE]/sql_max_retries -#max_retries = 10 - -# Interval between retries of opening a SQL connection. (integer value) -# Deprecated group/name - [DEFAULT]/sql_retry_interval -# Deprecated group/name - [DATABASE]/reconnect_interval -#retry_interval = 10 - -# If set, use this value for max_overflow with SQLAlchemy. (integer value) -# Deprecated group/name - [DEFAULT]/sql_max_overflow -# Deprecated group/name - [DATABASE]/sqlalchemy_max_overflow -#max_overflow = - -# Verbosity of SQL debugging information: 0=None, 100=Everything. (integer -# value) -# Deprecated group/name - [DEFAULT]/sql_connection_debug -#connection_debug = 0 - -# Add Python stack traces to SQL as comment strings. (boolean value) -# Deprecated group/name - [DEFAULT]/sql_connection_trace -#connection_trace = false - -# If set, use this value for pool_timeout with SQLAlchemy. (integer value) -# Deprecated group/name - [DATABASE]/sqlalchemy_pool_timeout -#pool_timeout = - -# Enable the experimental use of database reconnect on connection lost. -# (boolean value) -#use_db_reconnect = false - -# Seconds between retries of a database transaction. (integer value) -#db_retry_interval = 1 - -# If True, increases the interval between retries of a database operation up to -# db_max_retry_interval. (boolean value) -#db_inc_retry_interval = true - -# If db_inc_retry_interval is set, the maximum seconds between retries of a -# database operation. (integer value) -#db_max_retry_interval = 10 - -# Maximum retries in case of connection error or deadlock error before error is -# raised. Set to -1 to specify an infinite retry count. (integer value) -#db_max_retries = 20 - - -# -# Options defined in nova.db.sqlalchemy.api -# - -# The SQLAlchemy connection string to use to connect to the -# slave database. (string value) -#slave_connection= - -# The SQL mode to be used for MySQL sessions. This option, -# including the default, overrides any server-set SQL mode. To -# use whatever SQL mode is set by the server configuration, -# set this to no value. Example: mysql_sql_mode= (string -# value) -#mysql_sql_mode=TRADITIONAL - - -[ephemeral_storage_encryption] - -# -# Options defined in nova.compute.api -# - -# Whether to encrypt ephemeral storage (boolean value) -#enabled=false - -# The cipher and mode to be used to encrypt ephemeral storage. -# Which ciphers are available ciphers depends on kernel -# support. See /proc/crypto for the list of available options. -# (string value) -#cipher=aes-xts-plain64 - -# The bit length of the encryption key to be used to encrypt -# ephemeral storage (in XTS mode only half of the bits are -# used for encryption key) (integer value) -#key_size=512 - - -[glance] - -# -# Options defined in nova.image.glance -# - -# Default glance hostname or IP address (string value) -#host=$my_ip - -# Default glance port (integer value) -#port=9292 - -# Default protocol to use when connecting to glance. Set to -# https for SSL. (string value) -#protocol=http - -# A list of the glance api servers available to nova. Prefix -# with https:// for ssl-based glance api servers. -# ([hostname|ip]:port) (list value) -#api_servers= - -# Allow to perform insecure SSL (https) requests to glance -# (boolean value) -#api_insecure=false - -# Number of retries when uploading / downloading an image to / -# from glance. (integer value) -#num_retries=0 - -# A list of url scheme that can be downloaded directly via the -# direct_url. Currently supported schemes: [file]. (list -# value) -#allowed_direct_url_schemes= - - -[guestfs] - -# -# Options defined in nova.virt.disk.vfs.guestfs -# - -# Enable guestfs debug (boolean value) -#debug=false - - -[hyperv] - -# -# Options defined in nova.virt.hyperv.pathutils -# - -# The name of a Windows share name mapped to the -# "instances_path" dir and used by the resize feature to copy -# files to the target host. If left blank, an administrative -# share will be used, looking for the same "instances_path" -# used locally (string value) -#instances_path_share= - - -# -# Options defined in nova.virt.hyperv.utilsfactory -# - -# Force V1 WMI utility classes (boolean value) -#force_hyperv_utils_v1=false - -# Force V1 volume utility class (boolean value) -#force_volumeutils_v1=false - - -# -# Options defined in nova.virt.hyperv.vif -# - -# External virtual switch Name, if not provided, the first -# external virtual switch is used (string value) -#vswitch_name= - - -# -# Options defined in nova.virt.hyperv.vmops -# - -# Required for live migration among hosts with different CPU -# features (boolean value) -#limit_cpu_features=false - -# Sets the admin password in the config drive image (boolean -# value) -#config_drive_inject_password=false - -# Path of qemu-img command which is used to convert between -# different image types (string value) -#qemu_img_cmd=qemu-img.exe - -# Attaches the Config Drive image as a cdrom drive instead of -# a disk drive (boolean value) -#config_drive_cdrom=false - -# Enables metrics collections for an instance by using -# Hyper-V's metric APIs. Collected data can by retrieved by -# other apps and services, e.g.: Ceilometer. Requires Hyper-V -# / Windows Server 2012 and above (boolean value) -#enable_instance_metrics_collection=false - -# Enables dynamic memory allocation (ballooning) when set to a -# value greater than 1. The value expresses the ratio between -# the total RAM assigned to an instance and its startup RAM -# amount. For example a ratio of 2.0 for an instance with -# 1024MB of RAM implies 512MB of RAM allocated at startup -# (floating point value) -#dynamic_memory_ratio=1.0 - -# Number of seconds to wait for instance to shut down after -# soft reboot request is made. We fall back to hard reboot if -# instance does not shutdown within this window. (integer -# value) -#wait_soft_reboot_seconds=60 - - -# -# Options defined in nova.virt.hyperv.volumeops -# - -# The number of times to retry to attach a volume (integer -# value) -#volume_attach_retry_count=10 - -# Interval between volume attachment attempts, in seconds -# (integer value) -#volume_attach_retry_interval=5 - -# The number of times to retry checking for a disk mounted via -# iSCSI. (integer value) -#mounted_disk_query_retry_count=10 - -# Interval between checks for a mounted iSCSI disk, in -# seconds. (integer value) -#mounted_disk_query_retry_interval=5 - - -[image_file_url] - -# -# Options defined in nova.image.download.file -# - -# List of file systems that are configured in this file in the -# image_file_url: sections (list value) -#filesystems= - - -[ironic] - -# -# Options defined in nova.virt.ironic.driver -# - -# Version of Ironic API service endpoint. (integer value) -#api_version=1 - -# URL for Ironic API endpoint. (string value) -#api_endpoint= - -# Ironic keystone admin name (string value) -#admin_username= - -# Ironic keystone admin password. (string value) -#admin_password= - -# Ironic keystone auth token. (string value) -#admin_auth_token= - -# Keystone public API endpoint. (string value) -#admin_url= - -# Log level override for ironicclient. Set this in order to -# override the global "default_log_levels", "verbose", and -# "debug" settings. DEPRECATED: use standard logging -# configuration. (string value) -#client_log_level= - -# Ironic keystone tenant name. (string value) -#admin_tenant_name= - -# How many retries when a request does conflict. (integer -# value) -#api_max_retries=60 - -# How often to retry in seconds when a request does conflict -# (integer value) -#api_retry_interval=2 - - -[keymgr] - -# -# Options defined in nova.keymgr -# - -# The full class name of the key manager API class (string -# value) -#api_class=nova.keymgr.conf_key_mgr.ConfKeyManager - - -# -# Options defined in nova.keymgr.conf_key_mgr -# - -# Fixed key returned by key manager, specified in hex (string -# value) -#fixed_key= - - -[keystone_authtoken] - -# -# From keystonemiddleware.auth_token -# - -# Complete public Identity API endpoint. (string value) -#auth_uri = - -# API version of the admin Identity API endpoint. (string value) -#auth_version = - -# Do not handle authorization requests within the middleware, but delegate the -# authorization decision to downstream WSGI components. (boolean value) -#delay_auth_decision = false - -# Request timeout value for communicating with Identity API server. (integer -# value) -#http_connect_timeout = - -# How many times are we trying to reconnect when communicating with Identity -# API Server. (integer value) -#http_request_max_retries = 3 - -# Env key for the swift cache. (string value) -#cache = - -# Required if identity server requires client certificate (string value) -#certfile = - -# Required if identity server requires client certificate (string value) -#keyfile = - -# A PEM encoded Certificate Authority to use when verifying HTTPs connections. -# Defaults to system CAs. (string value) -#cafile = - -# Verify HTTPS connections. (boolean value) -#insecure = false - -# Directory used to cache files related to PKI tokens. (string value) -#signing_dir = - -# Optionally specify a list of memcached server(s) to use for caching. If left -# undefined, tokens will instead be cached in-process. (list value) -# Deprecated group/name - [DEFAULT]/memcache_servers -#memcached_servers = - -# In order to prevent excessive effort spent validating tokens, the middleware -# caches previously-seen tokens for a configurable duration (in seconds). Set -# to -1 to disable caching completely. (integer value) -#token_cache_time = 300 - -# Determines the frequency at which the list of revoked tokens is retrieved -# from the Identity service (in seconds). A high number of revocation events -# combined with a low cache duration may significantly reduce performance. -# (integer value) -#revocation_cache_time = 10 - -# (Optional) If defined, indicate whether token data should be authenticated or -# authenticated and encrypted. Acceptable values are MAC or ENCRYPT. If MAC, -# token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data -# is encrypted and authenticated in the cache. If the value is not one of these -# options or empty, auth_token will raise an exception on initialization. -# (string value) -#memcache_security_strategy = - -# (Optional, mandatory if memcache_security_strategy is defined) This string is -# used for key derivation. (string value) -#memcache_secret_key = - -# (Optional) Number of seconds memcached server is considered dead before it is -# tried again. (integer value) -#memcache_pool_dead_retry = 300 - -# (Optional) Maximum total number of open connections to every memcached -# server. (integer value) -#memcache_pool_maxsize = 10 - -# (Optional) Socket timeout in seconds for communicating with a memcache -# server. (integer value) -#memcache_pool_socket_timeout = 3 - -# (Optional) Number of seconds a connection to memcached is held unused in the -# pool before it is closed. (integer value) -#memcache_pool_unused_timeout = 60 - -# (Optional) Number of seconds that an operation will wait to get a memcache -# client connection from the pool. (integer value) -#memcache_pool_conn_get_timeout = 10 - -# (Optional) Use the advanced (eventlet safe) memcache client pool. The -# advanced pool will only work under python 2.x. (boolean value) -#memcache_use_advanced_pool = false - -# (Optional) Indicate whether to set the X-Service-Catalog header. If False, -# middleware will not ask for service catalog on token validation and will not -# set the X-Service-Catalog header. (boolean value) -#include_service_catalog = true - -# Used to control the use and type of token binding. Can be set to: "disabled" -# to not check token binding. "permissive" (default) to validate binding -# information if the bind type is of a form known to the server and ignore it -# if not. "strict" like "permissive" but if the bind type is unknown the token -# will be rejected. "required" any form of token binding is needed to be -# allowed. Finally the name of a binding method that must be present in tokens. -# (string value) -#enforce_token_bind = permissive - -# If true, the revocation list will be checked for cached tokens. This requires -# that PKI tokens are configured on the identity server. (boolean value) -#check_revocations_for_cached = false - -# Hash algorithms to use for hashing PKI tokens. This may be a single algorithm -# or multiple. The algorithms are those supported by Python standard -# hashlib.new(). The hashes will be tried in the order given, so put the -# preferred one first for performance. The result of the first hash will be -# stored in the cache. This will typically be set to multiple values only while -# migrating from a less secure algorithm to a more secure one. Once all the old -# tokens are expired this option should be set to a single value for better -# performance. (list value) -#hash_algorithms = md5 - -# Prefix to prepend at the beginning of the path. Deprecated, use identity_uri. -# (string value) -#auth_admin_prefix = - -# Host providing the admin Identity API endpoint. Deprecated, use identity_uri. -# (string value) -#auth_host = 127.0.0.1 - -# Port of the admin Identity API endpoint. Deprecated, use identity_uri. -# (integer value) -#auth_port = 35357 - -# Protocol of the admin Identity API endpoint (http or https). Deprecated, use -# identity_uri. (string value) -#auth_protocol = https - -# Complete admin Identity API endpoint. This should specify the unversioned -# root endpoint e.g. https://localhost:35357/ (string value) -#identity_uri = - -# This option is deprecated and may be removed in a future release. Single -# shared secret with the Keystone configuration used for bootstrapping a -# Keystone installation, or otherwise bypassing the normal authentication -# process. This option should not be used, use `admin_user` and -# `admin_password` instead. (string value) -#admin_token = - -# Service username. (string value) -#admin_user = - -# Service user password. (string value) -#admin_password = - -# Service tenant name. (string value) -#admin_tenant_name = admin - - -[libvirt] - -# -# Options defined in nova.virt.libvirt.driver -# - -# Rescue ami image. This will not be used if an image id is -# provided by the user. (string value) -#rescue_image_id= - -# Rescue aki image (string value) -#rescue_kernel_id= - -# Rescue ari image (string value) -#rescue_ramdisk_id= - -# Libvirt domain type (valid options are: kvm, lxc, qemu, uml, -# xen and parallels) (string value) -#virt_type=kvm - -# Override the default libvirt URI (which is dependent on -# virt_type) (string value) -#connection_uri= - -# Inject the admin password at boot time, without an agent. -# (boolean value) -#inject_password=false - -# Inject the ssh public key at boot time (boolean value) -#inject_key=false - -# The partition to inject to : -2 => disable, -1 => inspect -# (libguestfs only), 0 => not partitioned, >0 => partition -# number (integer value) -#inject_partition=-2 - -# Sync virtual and real mouse cursors in Windows VMs (boolean -# value) -#use_usb_tablet=true - -# Migration target URI (any included "%s" is replaced with the -# migration target hostname) (string value) -#live_migration_uri=qemu+tcp://%s/system - -# Migration flags to be set for live migration (string value) -#live_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED - -# Migration flags to be set for block migration (string value) -#block_migration_flag=VIR_MIGRATE_UNDEFINE_SOURCE, VIR_MIGRATE_PEER2PEER, VIR_MIGRATE_LIVE, VIR_MIGRATE_TUNNELLED, VIR_MIGRATE_NON_SHARED_INC - -# Maximum bandwidth to be used during migration, in Mbps -# (integer value) -#live_migration_bandwidth=0 - -# Snapshot image format (valid options are : raw, qcow2, vmdk, -# vdi). Defaults to same as source image (string value) -#snapshot_image_format= - -# Override the default disk prefix for the devices attached to -# a server, which is dependent on virt_type. (valid options -# are: sd, xvd, uvd, vd) (string value) -#disk_prefix= - -# Number of seconds to wait for instance to shut down after -# soft reboot request is made. We fall back to hard reboot if -# instance does not shutdown within this window. (integer -# value) -#wait_soft_reboot_seconds=120 - -# Set to "host-model" to clone the host CPU feature flags; to -# "host-passthrough" to use the host CPU model exactly; to -# "custom" to use a named CPU model; to "none" to not set any -# CPU model. If virt_type="kvm|qemu", it will default to -# "host-model", otherwise it will default to "none" (string -# value) -#cpu_mode= - -# Set to a named libvirt CPU model (see names listed in -# /usr/share/libvirt/cpu_map.xml). Only has effect if -# cpu_mode="custom" and virt_type="kvm|qemu" (string value) -#cpu_model= - -# Location where libvirt driver will store snapshots before -# uploading them to image service (string value) -#snapshots_directory=$instances_path/snapshots - -# Location where the Xen hvmloader is kept (string value) -#xen_hvmloader_path=/usr/lib/xen/boot/hvmloader - -# Specific cachemodes to use for different disk types e.g: -# file=directsync,block=none (list value) -#disk_cachemodes= - -# A path to a device that will be used as source of entropy on -# the host. Permitted options are: /dev/random or /dev/hwrng -# (string value) -#rng_dev_path= - -# For qemu or KVM guests, set this option to specify a default -# machine type per host architecture. You can find a list of -# supported machine types in your environment by checking the -# output of the "virsh capabilities"command. The format of the -# value for this config option is host-arch=machine-type. For -# example: x86_64=machinetype1,armv7l=machinetype2 (list -# value) -#hw_machine_type= - -# The data source used to the populate the host "serial" UUID -# exposed to guest in the virtual BIOS. Permitted options are -# "hardware", "os", "none" or "auto" (default). (string value) -#sysinfo_serial=auto - -# A number of seconds to memory usage statistics period. Zero -# or negative value mean to disable memory usage statistics. -# (integer value) -#mem_stats_period_seconds=10 - -# List of uid targets and ranges.Syntax is guest-uid:host- -# uid:countMaximum of 5 allowed. (list value) -#uid_maps= - -# List of guid targets and ranges.Syntax is guest-gid:host- -# gid:countMaximum of 5 allowed. (list value) -#gid_maps= - - -# -# Options defined in nova.virt.libvirt.imagebackend -# - -# VM Images format. Acceptable values are: raw, qcow2, lvm, -# rbd, default. If default is specified, then use_cow_images -# flag is used instead of this one. (string value) -#images_type=default - -# LVM Volume Group that is used for VM images, when you -# specify images_type=lvm. (string value) -#images_volume_group= - -# Create sparse logical volumes (with virtualsize) if this -# flag is set to True. (boolean value) -#sparse_logical_volumes=false - -# The RADOS pool in which rbd volumes are stored (string -# value) -#images_rbd_pool=rbd - -# Path to the ceph configuration file to use (string value) -#images_rbd_ceph_conf= - -# Discard option for nova managed disks (valid options are: -# ignore, unmap). Need Libvirt(1.0.6) Qemu1.5 (raw format) -# Qemu1.6(qcow2 format) (string value) -#hw_disk_discard= - - -# -# Options defined in nova.virt.libvirt.imagecache -# - -# Allows image information files to be stored in non-standard -# locations (string value) -#image_info_filename_pattern=$instances_path/$image_cache_subdirectory_name/%(image)s.info - -# Should unused kernel images be removed? This is only safe to -# enable if all compute nodes have been updated to support -# this option. This will be enabled by default in future. -# (boolean value) -#remove_unused_kernels=false - -# Unused resized base images younger than this will not be -# removed (integer value) -#remove_unused_resized_minimum_age_seconds=3600 - -# Write a checksum for files in _base to disk (boolean value) -#checksum_base_images=false - -# How frequently to checksum base images (integer value) -#checksum_interval_seconds=3600 - - -# -# Options defined in nova.virt.libvirt.lvm -# - -# Method used to wipe old volumes (valid options are: none, -# zero, shred) (string value) -#volume_clear=zero - -# Size in MiB to wipe at start of old volumes. 0 => all -# (integer value) -#volume_clear_size=0 - - -# -# Options defined in nova.virt.libvirt.utils -# - -# Compress snapshot images when possible. This currently -# applies exclusively to qcow2 images (boolean value) -#snapshot_compression=false - - -# -# Options defined in nova.virt.libvirt.vif -# - -# Use virtio for bridge interfaces with KVM/QEMU (boolean -# value) -#use_virtio_for_bridges=true - - -# -# Options defined in nova.virt.libvirt.volume -# - -# Number of times to rescan iSCSI target to find volume -# (integer value) -#num_iscsi_scan_tries=5 - -# Number of times to rescan iSER target to find volume -# (integer value) -#num_iser_scan_tries=5 - -# The RADOS client name for accessing rbd volumes (string -# value) -#rbd_user= - -# The libvirt UUID of the secret for the rbd_uservolumes -# (string value) -#rbd_secret_uuid= - -# Directory where the NFS volume is mounted on the compute -# node (string value) -#nfs_mount_point_base=$state_path/mnt - -# Mount options passed to the NFS client. See section of the -# nfs man page for details (string value) -#nfs_mount_options= - -# Directory where the SMBFS shares are mounted on the compute -# node (string value) -#smbfs_mount_point_base=$state_path/mnt - -# Mount options passed to the SMBFS client. See mount.cifs man -# page for details. Note that the libvirt-qemu uid and gid -# must be specified. (string value) -#smbfs_mount_options= - -# Number of times to rediscover AoE target to find volume -# (integer value) -#num_aoe_discover_tries=3 - -# Directory where the glusterfs volume is mounted on the -# compute node (string value) -#glusterfs_mount_point_base=$state_path/mnt - -# Use multipath connection of the iSCSI volume (boolean value) -#iscsi_use_multipath=false - -# Use multipath connection of the iSER volume (boolean value) -#iser_use_multipath=false - -# Path or URL to Scality SOFS configuration file (string -# value) -#scality_sofs_config= - -# Base dir where Scality SOFS shall be mounted (string value) -#scality_sofs_mount_point=$state_path/scality - -# Protocols listed here will be accessed directly from QEMU. -# Currently supported protocols: [gluster] (list value) -#qemu_allowed_storage_drivers= - -# Directory where the Quobyte volume is mounted on the compute -# node (string value) -#quobyte_mount_point_base=$state_path/mnt - -# Path to a Quobyte Client configuration file. (string value) -#quobyte_client_cfg= - -# The iSCSI transport iface to use to connect to target in -# case offload support is desired. Supported transports are -# be2iscsi, bnx2i, cxgb3i, cxgb4i, qla4xxx and ocs. Default -# format is transport_name.hwaddress and can be generated -# manually or via iscsiadm -m iface (string value) -# Deprecated group/name - [DEFAULT]/iscsi_transport -#iscsi_iface= - - -[metrics] - -# -# Options defined in nova.scheduler.weights.metrics -# - -# Multiplier used for weighing metrics. (floating point value) -#weight_multiplier=1.0 - -# How the metrics are going to be weighed. This should be in -# the form of "=, =, ...", where -# is one of the metrics to be weighed, and is -# the corresponding ratio. So for "name1=1.0, name2=-1.0" The -# final weight would be name1.value * 1.0 + name2.value * -# -1.0. (list value) -#weight_setting= - -# How to treat the unavailable metrics. When a metric is NOT -# available for a host, if it is set to be True, it would -# raise an exception, so it is recommended to use the -# scheduler filter MetricFilter to filter out those hosts. If -# it is set to be False, the unavailable metric would be -# treated as a negative factor in weighing process, the -# returned value would be set by the option -# weight_of_unavailable. (boolean value) -#required=true - -# The final weight value to be returned if required is set to -# False and any one of the metrics set by weight_setting is -# unavailable. (floating point value) -#weight_of_unavailable=-10000.0 - - -[neutron] - -# -# Options defined in nova.api.metadata.handler -# - -# Set flag to indicate Neutron will proxy metadata requests -# and resolve instance ids. (boolean value) -#service_metadata_proxy=false - -# Shared secret to validate proxies Neutron metadata requests -# (string value) -#metadata_proxy_shared_secret= - - -# -# Options defined in nova.network.neutronv2.api -# - -# URL for connecting to neutron (string value) -#url=http://127.0.0.1:9696 - -# User id for connecting to neutron in admin context. -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_user_id= - -# Username for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_username= - -# Password for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_password= - -# Tenant id for connecting to neutron in admin context -# DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_tenant_id= - -# Tenant name for connecting to neutron in admin context. This -# option will be ignored if neutron_admin_tenant_id is set. -# Note that with Keystone V3 tenant names are only unique -# within a domain. DEPRECATED: specify an auth_plugin and -# appropriate credentials instead. (string value) -#admin_tenant_name= - -# Region name for connecting to neutron in admin context -# (string value) -#region_name= - -# Authorization URL for connecting to neutron in admin -# context. DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. (string value) -#admin_auth_url=http://localhost:5000/v2.0 - -# Authorization strategy for connecting to neutron in admin -# context. DEPRECATED: specify an auth_plugin and appropriate -# credentials instead. If an auth_plugin is specified strategy -# will be ignored. (string value) -#auth_strategy=keystone - -# Name of Integration Bridge used by Open vSwitch (string -# value) -#ovs_bridge=br-int - -# Number of seconds before querying neutron for extensions -# (integer value) -#extension_sync_interval=600 - -# DEPRECATED: Allow an instance to have multiple vNICs -# attached to the same Neutron network. This option is -# deprecated in the 2015.1 release and will be removed in the -# 2015.2 release where the default behavior will be to always -# allow multiple ports from the same network to be attached to -# an instance. (boolean value) -#allow_duplicate_networks=false - - -[osapi_v3] - -# -# Options defined in nova.api.openstack -# - -# Whether the V3 API is enabled or not (boolean value) -#enabled=false - -# A list of v3 API extensions to never load. Specify the -# extension aliases here. (list value) -#extensions_blacklist= - -# If the list is not empty then a v3 API extension will only -# be loaded if it exists in this list. Specify the extension -# aliases here. (list value) -#extensions_whitelist= - - -[rdp] - -# -# Options defined in nova.rdp -# - -# Location of RDP html5 console proxy, in the form -# "http://127.0.0.1:6083/" (string value) -#html5_proxy_base_url=http://127.0.0.1:6083/ - -# Enable RDP related features (boolean value) -#enabled=false - - -[serial_console] - -# -# Options defined in nova.cmd.serialproxy -# - -# Host on which to listen for incoming requests (string value) -#serialproxy_host=0.0.0.0 - -# Port on which to listen for incoming requests (integer -# value) -#serialproxy_port=6083 - - -# -# Options defined in nova.console.serial -# - -# Enable serial console related features (boolean value) -#enabled=false - -# Range of TCP ports to use for serial ports on compute hosts -# (string value) -#port_range=10000:20000 - -# Location of serial console proxy. (string value) -#base_url=ws://127.0.0.1:6083/ - -# IP address on which instance serial console should listen -# (string value) -#listen=127.0.0.1 - -# The address to which proxy clients (like nova-serialproxy) -# should connect (string value) -#proxyclient_address=127.0.0.1 - - -[spice] - -# -# Options defined in nova.cmd.spicehtml5proxy -# - -# Host on which to listen for incoming requests (string value) -#html5proxy_host=0.0.0.0 - -# Port on which to listen for incoming requests (integer -# value) -#html5proxy_port=6082 - - -# -# Options defined in nova.spice -# - -# Location of spice HTML5 console proxy, in the form -# "http://127.0.0.1:6082/spice_auto.html" (string value) -#html5proxy_base_url=http://127.0.0.1:6082/spice_auto.html - -# IP address on which instance spice server should listen -# (string value) -#server_listen=127.0.0.1 - -# The address to which proxy clients (like nova- -# spicehtml5proxy) should connect (string value) -#server_proxyclient_address=127.0.0.1 - -# Enable spice related features (boolean value) -#enabled=false - -# Enable spice guest agent support (boolean value) -#agent_enabled=true - -# Keymap for spice (string value) -#keymap=en-us - - -[ssl] - -# -# Options defined in nova.openstack.common.sslutils -# - -# CA certificate file to use to verify connecting clients. -# (string value) -#ca_file= - -# Certificate file to use when starting the server securely. -# (string value) -#cert_file= - -# Private key file to use when starting the server securely. -# (string value) -#key_file= - - -[trusted_computing] - -# -# Options defined in nova.scheduler.filters.trusted_filter -# - -# Attestation server HTTP (string value) -#attestation_server= - -# Attestation server Cert file for Identity verification -# (string value) -#attestation_server_ca_file= - -# Attestation server port (string value) -#attestation_port=8443 - -# Attestation web API URL (string value) -#attestation_api_url=/OpenAttestationWebServices/V1.0 - -# Attestation authorization blob - must change (string value) -#attestation_auth_blob= - -# Attestation status cache valid period length (integer value) -#attestation_auth_timeout=60 - -# Disable SSL cert verification for Attestation service -# (boolean value) -#attestation_insecure_ssl=false - - -[upgrade_levels] - -# -# Options defined in nova.baserpc -# - -# Set a version cap for messages sent to the base api in any -# service (string value) -#baseapi= - - -# -# Options defined in nova.cells.rpc_driver -# - -# Set a version cap for messages sent between cells services -# (string value) -#intercell= - - -# -# Options defined in nova.cells.rpcapi -# - -# Set a version cap for messages sent to local cells services -# (string value) -#cells= - - -# -# Options defined in nova.cert.rpcapi -# - -# Set a version cap for messages sent to cert services (string -# value) -#cert= - - -# -# Options defined in nova.compute.rpcapi -# - -# Set a version cap for messages sent to compute services. If -# you plan to do a live upgrade from havana to icehouse, you -# should set this option to "icehouse-compat" before beginning -# the live upgrade procedure. (string value) -#compute= - - -# -# Options defined in nova.conductor.rpcapi -# - -# Set a version cap for messages sent to conductor services -# (string value) -#conductor= - - -# -# Options defined in nova.console.rpcapi -# - -# Set a version cap for messages sent to console services -# (string value) -#console= - - -# -# Options defined in nova.consoleauth.rpcapi -# - -# Set a version cap for messages sent to consoleauth services -# (string value) -#consoleauth= - - -# -# Options defined in nova.network.rpcapi -# - -# Set a version cap for messages sent to network services -# (string value) -#network= - - -# -# Options defined in nova.scheduler.rpcapi -# - -# Set a version cap for messages sent to scheduler services -# (string value) -#scheduler= - - -[vmware] - -# -# Options defined in nova.virt.vmwareapi.driver -# - -# The PBM status. (boolean value) -#pbm_enabled=false - -# PBM service WSDL file location URL. e.g. -# file:///opt/SDK/spbm/wsdl/pbmService.wsdl Not setting this -# will disable storage policy based placement of instances. -# (string value) -#pbm_wsdl_location= - -# The PBM default policy. If pbm_wsdl_location is set and -# there is no defined storage policy for the specific request -# then this policy will be used. (string value) -#pbm_default_policy= - -# Hostname or IP address for connection to VMware VC host. -# (string value) -#host_ip= - -# Port for connection to VMware VC host. (integer value) -#host_port=443 - -# Username for connection to VMware VC host. (string value) -#host_username= - -# Password for connection to VMware VC host. (string value) -#host_password= - -# Name of a VMware Cluster ComputeResource. (multi valued) -#cluster_name= - -# Regex to match the name of a datastore. (string value) -#datastore_regex= - -# The interval used for polling of remote tasks. (floating -# point value) -#task_poll_interval=0.5 - -# The number of times we retry on failures, e.g., socket -# error, etc. (integer value) -#api_retry_count=10 - -# VNC starting port (integer value) -#vnc_port=5900 - -# Total number of VNC ports (integer value) -#vnc_port_total=10000 - -# Whether to use linked clone (boolean value) -#use_linked_clone=true - -# Optional VIM Service WSDL Location e.g -# http:///vimService.wsdl. Optional over-ride to -# default location for bug work-arounds (string value) -#wsdl_location= - - -# -# Options defined in nova.virt.vmwareapi.vif -# - -# Physical ethernet adapter name for vlan networking (string -# value) -#vlan_interface=vmnic0 - -# Name of Integration Bridge (string value) -#integration_bridge=br-int - - -# -# Options defined in nova.virt.vmwareapi.vim_util -# - -# The maximum number of ObjectContent data objects that should -# be returned in a single result. A positive value will cause -# the operation to suspend the retrieval when the count of -# objects reaches the specified maximum. The server may still -# limit the count to something less than the configured value. -# Any remaining objects may be retrieved with additional -# requests. (integer value) -#maximum_objects=100 - - -# -# Options defined in nova.virt.vmwareapi.vmops -# - -# The prefix for Where cached images are stored. This is NOT -# the full path - just a folder prefix. This should only be -# used when a datastore cache should be shared between compute -# nodes. Note: this should only be used when the compute nodes -# have a shared file system. (string value) -#cache_prefix= - - -[workarounds] - -# -# Options defined in nova.utils -# - -# This option allows a fallback to sudo for performance -# reasons. For example see -# https://bugs.launchpad.net/nova/+bug/1415106 (boolean value) -#disable_rootwrap=false - -# When using libvirt 1.2.2 fails live snapshots intermittently -# under load. This config option provides mechanism to -# disable livesnapshot while this is resolved. See -# https://bugs.launchpad.net/nova/+bug/1334398 (boolean value) -#disable_libvirt_livesnapshot=true - -# Whether to destroy instances on startup when we suspect they -# have previously been evacuated. This can result in data loss -# if undesired. See https://launchpad.net/bugs/1419785 -# (boolean value) -#destroy_after_evacuate=true - - -[xenserver] - -# -# Options defined in nova.virt.xenapi.agent -# - -# Number of seconds to wait for agent reply (integer value) -#agent_timeout=30 - -# Number of seconds to wait for agent to be fully operational -# (integer value) -#agent_version_timeout=300 - -# Number of seconds to wait for agent reply to resetnetwork -# request (integer value) -#agent_resetnetwork_timeout=60 - -# Specifies the path in which the XenAPI guest agent should be -# located. If the agent is present, network configuration is -# not injected into the image. Used if -# compute_driver=xenapi.XenAPIDriver and flat_injected=True -# (string value) -#agent_path=usr/sbin/xe-update-networking - -# Disables the use of the XenAPI agent in any image regardless -# of what image properties are present. (boolean value) -#disable_agent=false - -# Determines if the XenAPI agent should be used when the image -# used does not contain a hint to declare if the agent is -# present or not. The hint is a glance property -# "xenapi_use_agent" that has the value "True" or "False". -# Note that waiting for the agent when it is not present will -# significantly increase server boot times. (boolean value) -#use_agent_default=false - - -# -# Options defined in nova.virt.xenapi.client.session -# - -# Timeout in seconds for XenAPI login. (integer value) -#login_timeout=10 - -# Maximum number of concurrent XenAPI connections. Used only -# if compute_driver=xenapi.XenAPIDriver (integer value) -#connection_concurrent=5 - - -# -# Options defined in nova.virt.xenapi.driver -# - -# URL for connection to XenServer/Xen Cloud Platform. A -# special value of unix://local can be used to connect to the -# local unix socket. Required if -# compute_driver=xenapi.XenAPIDriver (string value) -#connection_url= - -# Username for connection to XenServer/Xen Cloud Platform. -# Used only if compute_driver=xenapi.XenAPIDriver (string -# value) -#connection_username=root - -# Password for connection to XenServer/Xen Cloud Platform. -# Used only if compute_driver=xenapi.XenAPIDriver (string -# value) -#connection_password= - -# The interval used for polling of coalescing vhds. Used only -# if compute_driver=xenapi.XenAPIDriver (floating point value) -#vhd_coalesce_poll_interval=5.0 - -# Ensure compute service is running on host XenAPI connects -# to. (boolean value) -#check_host=true - -# Max number of times to poll for VHD to coalesce. Used only -# if compute_driver=xenapi.XenAPIDriver (integer value) -#vhd_coalesce_max_attempts=20 - -# Base path to the storage repository (string value) -#sr_base_path=/var/run/sr-mount - -# The iSCSI Target Host (string value) -#target_host= - -# The iSCSI Target Port, default is port 3260 (string value) -#target_port=3260 - -# IQN Prefix (string value) -#iqn_prefix=iqn.2010-10.org.openstack - -# Used to enable the remapping of VBD dev (Works around an -# issue in Ubuntu Maverick) (boolean value) -#remap_vbd_dev=false - -# Specify prefix to remap VBD dev to (ex. /dev/xvdb -> -# /dev/sdb) (string value) -#remap_vbd_dev_prefix=sd - - -# -# Options defined in nova.virt.xenapi.image.bittorrent -# - -# Base URL for torrent files. (string value) -#torrent_base_url= - -# Probability that peer will become a seeder. (1.0 = 100%) -# (floating point value) -#torrent_seed_chance=1.0 - -# Number of seconds after downloading an image via BitTorrent -# that it should be seeded for other peers. (integer value) -#torrent_seed_duration=3600 - -# Cached torrent files not accessed within this number of -# seconds can be reaped (integer value) -#torrent_max_last_accessed=86400 - -# Beginning of port range to listen on (integer value) -#torrent_listen_port_start=6881 - -# End of port range to listen on (integer value) -#torrent_listen_port_end=6891 - -# Number of seconds a download can remain at the same progress -# percentage w/o being considered a stall (integer value) -#torrent_download_stall_cutoff=600 - -# Maximum number of seeder processes to run concurrently -# within a given dom0. (-1 = no limit) (integer value) -#torrent_max_seeder_processes_per_host=1 - - -# -# Options defined in nova.virt.xenapi.pool -# - -# To use for hosts with different CPUs (boolean value) -#use_join_force=true - - -# -# Options defined in nova.virt.xenapi.vif -# - -# Name of Integration Bridge used by Open vSwitch (string -# value) -#ovs_integration_bridge=xapi1 - - -# -# Options defined in nova.virt.xenapi.vm_utils -# - -# Cache glance images locally. `all` will cache all images, -# `some` will only cache images that have the image_property -# `cache_in_nova=True`, and `none` turns off caching entirely -# (string value) -#cache_images=all - -# Compression level for images, e.g., 9 for gzip -9. Range is -# 1-9, 9 being most compressed but most CPU intensive on dom0. -# (integer value) -#image_compression_level= - -# Default OS type (string value) -#default_os_type=linux - -# Time to wait for a block device to be created (integer -# value) -#block_device_creation_timeout=10 - -# Maximum size in bytes of kernel or ramdisk images (integer -# value) -#max_kernel_ramdisk_size=16777216 - -# Filter for finding the SR to be used to install guest -# instances on. To use the Local Storage in default -# XenServer/XCP installations set this flag to other-config -# :i18n-key=local-storage. To select an SR with a different -# matching criteria, you could set it to other- -# config:my_favorite_sr=true. On the other hand, to fall back -# on the Default SR, as displayed by XenCenter, set this flag -# to: default-sr:true (string value) -#sr_matching_filter=default-sr:true - -# Whether to use sparse_copy for copying data on a resize down -# (False will use standard dd). This speeds up resizes down -# considerably since large runs of zeros won't have to be -# rsynced (boolean value) -#sparse_copy=true - -# Maximum number of retries to unplug VBD. if <=0, should try -# once and no retry (integer value) -#num_vbd_unplug_retries=10 - -# Whether or not to download images via Bit Torrent -# (all|some|none). (string value) -#torrent_images=none - -# Name of network to use for booting iPXE ISOs (string value) -#ipxe_network_name= - -# URL to the iPXE boot menu (string value) -#ipxe_boot_menu_url= - -# Name and optionally path of the tool used for ISO image -# creation (string value) -#ipxe_mkisofs_cmd=mkisofs - - -# -# Options defined in nova.virt.xenapi.vmops -# - -# Number of seconds to wait for instance to go to running -# state (integer value) -#running_timeout=60 - -# The XenAPI VIF driver using XenServer Network APIs. (string -# value) -#vif_driver=nova.virt.xenapi.vif.XenAPIBridgeDriver - -# Dom0 plugin driver used to handle image uploads. (string -# value) -#image_upload_handler=nova.virt.xenapi.image.glance.GlanceStore - - -# -# Options defined in nova.virt.xenapi.volume_utils -# - -# Number of seconds to wait for an SR to settle if the VDI -# does not exist when first introduced (integer value) -#introduce_vdi_retry_wait=20 - - -[zookeeper] - -# -# Options defined in nova.servicegroup.drivers.zk -# - -# The ZooKeeper addresses for servicegroup service in the -# format of host1:port,host2:port,host3:port (string value) -#address= - -# The recv_timeout parameter for the zk session (integer -# value) -#recv_timeout=4000 - -# The prefix used in ZooKeeper to store ephemeral nodes -# (string value) -#sg_prefix=/servicegroups - -# Number of seconds to wait until retrying to join the session -# (integer value) -#sg_retry_interval=5 - - -[matchmaker_redis] - -# -# From oslo.messaging -# - -# Host to locate redis. (string value) -#host = 127.0.0.1 - -# Use this port to connect to redis host. (integer value) -#port = 6379 - -# Password for Redis server (optional). (string value) -#password = - - -[matchmaker_ring] - -# -# From oslo.messaging -# - -# Matchmaker ring file (JSON). (string value) -# Deprecated group/name - [DEFAULT]/matchmaker_ringfile -#ringfile = /etc/oslo/matchmaker_ring.json - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -#disable_process_locking = false - -# Directory to use for lock files. For security, the specified directory -# should only be writable by the user running the processes that need locking. -# Defaults to environment variable OSLO_LOCK_PATH. If external locks are used, -# a lock path must be set. (string value) -# Deprecated group/name - [DEFAULT]/lock_path -#lock_path = - - -[oslo_messaging_amqp] - -# -# From oslo.messaging -# - -# address prefix used when sending to a specific server (string value) -# Deprecated group/name - [amqp1]/server_request_prefix -#server_request_prefix = exclusive - -# address prefix used when broadcasting to all servers (string value) -# Deprecated group/name - [amqp1]/broadcast_prefix -#broadcast_prefix = broadcast - -# address prefix when sending to any server in group (string value) -# Deprecated group/name - [amqp1]/group_request_prefix -#group_request_prefix = unicast - -# Name for the AMQP container (string value) -# Deprecated group/name - [amqp1]/container_name -#container_name = - -# Timeout for inactive connections (in seconds) (integer value) -# Deprecated group/name - [amqp1]/idle_timeout -#idle_timeout = 0 - -# Debug: dump AMQP frames to stdout (boolean value) -# Deprecated group/name - [amqp1]/trace -#trace = false - -# CA certificate PEM file for verifing server certificate (string value) -# Deprecated group/name - [amqp1]/ssl_ca_file -#ssl_ca_file = - -# Identifying certificate PEM file to present to clients (string value) -# Deprecated group/name - [amqp1]/ssl_cert_file -#ssl_cert_file = - -# Private key PEM file used to sign cert_file certificate (string value) -# Deprecated group/name - [amqp1]/ssl_key_file -#ssl_key_file = - -# Password for decrypting ssl_key_file (if encrypted) (string value) -# Deprecated group/name - [amqp1]/ssl_key_password -#ssl_key_password = - -# Accept clients using either SSL or plain TCP (boolean value) -# Deprecated group/name - [amqp1]/allow_insecure_clients -#allow_insecure_clients = false - - -[oslo_messaging_qpid] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# Qpid broker hostname. (string value) -# Deprecated group/name - [DEFAULT]/qpid_hostname -#qpid_hostname = localhost - -# Qpid broker port. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_port -#qpid_port = 5672 - -# Qpid HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/qpid_hosts -#qpid_hosts = $qpid_hostname:$qpid_port - -# Username for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_username -#qpid_username = - -# Password for Qpid connection. (string value) -# Deprecated group/name - [DEFAULT]/qpid_password -#qpid_password = - -# Space separated list of SASL mechanisms to use for auth. (string value) -# Deprecated group/name - [DEFAULT]/qpid_sasl_mechanisms -#qpid_sasl_mechanisms = - -# Seconds between connection keepalive heartbeats. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_heartbeat -#qpid_heartbeat = 60 - -# Transport to use, either 'tcp' or 'ssl'. (string value) -# Deprecated group/name - [DEFAULT]/qpid_protocol -#qpid_protocol = tcp - -# Whether to disable the Nagle algorithm. (boolean value) -# Deprecated group/name - [DEFAULT]/qpid_tcp_nodelay -#qpid_tcp_nodelay = true - -# The number of prefetched messages held by receiver. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_receiver_capacity -#qpid_receiver_capacity = 1 - -# The qpid topology version to use. Version 1 is what was originally used by -# impl_qpid. Version 2 includes some backwards-incompatible changes that allow -# broker federation to work. Users should update to version 2 when they are -# able to take everything down, as it requires a clean break. (integer value) -# Deprecated group/name - [DEFAULT]/qpid_topology_version -#qpid_topology_version = 1 - - -[oslo_messaging_rabbit] - -# -# From oslo.messaging -# - -# Use durable queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_durable_queues -#amqp_durable_queues = false - -# Auto-delete queues in AMQP. (boolean value) -# Deprecated group/name - [DEFAULT]/amqp_auto_delete -#amqp_auto_delete = false - -# Size of RPC connection pool. (integer value) -# Deprecated group/name - [DEFAULT]/rpc_conn_pool_size -#rpc_conn_pool_size = 30 - -# SSL version to use (valid only if SSL enabled). Valid values are TLSv1 and -# SSLv23. SSLv2, SSLv3, TLSv1_1, and TLSv1_2 may be available on some -# distributions. (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_version -#kombu_ssl_version = - -# SSL key file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_keyfile -#kombu_ssl_keyfile = - -# SSL cert file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_certfile -#kombu_ssl_certfile = - -# SSL certification authority file (valid only if SSL enabled). (string value) -# Deprecated group/name - [DEFAULT]/kombu_ssl_ca_certs -#kombu_ssl_ca_certs = - -# How long to wait before reconnecting in response to an AMQP consumer cancel -# notification. (floating point value) -# Deprecated group/name - [DEFAULT]/kombu_reconnect_delay -#kombu_reconnect_delay = 1.0 - -# The RabbitMQ broker address where a single node is used. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_host -#rabbit_host = localhost - -# The RabbitMQ broker port where a single node is used. (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_port -#rabbit_port = 5672 - -# RabbitMQ HA cluster host:port pairs. (list value) -# Deprecated group/name - [DEFAULT]/rabbit_hosts -#rabbit_hosts = $rabbit_host:$rabbit_port - -# Connect over SSL for RabbitMQ. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_use_ssl -#rabbit_use_ssl = false - -# The RabbitMQ userid. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_userid -#rabbit_userid = guest - -# The RabbitMQ password. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_password -#rabbit_password = guest - -# The RabbitMQ login method. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_login_method -#rabbit_login_method = AMQPLAIN - -# The RabbitMQ virtual host. (string value) -# Deprecated group/name - [DEFAULT]/rabbit_virtual_host -#rabbit_virtual_host = / - -# How frequently to retry connecting with RabbitMQ. (integer value) -#rabbit_retry_interval = 1 - -# How long to backoff for between retries when connecting to RabbitMQ. (integer -# value) -# Deprecated group/name - [DEFAULT]/rabbit_retry_backoff -#rabbit_retry_backoff = 2 - -# Maximum number of RabbitMQ connection retries. Default is 0 (infinite retry -# count). (integer value) -# Deprecated group/name - [DEFAULT]/rabbit_max_retries -#rabbit_max_retries = 0 - -# Use HA queues in RabbitMQ (x-ha-policy: all). If you change this option, you -# must wipe the RabbitMQ database. (boolean value) -# Deprecated group/name - [DEFAULT]/rabbit_ha_queues -#rabbit_ha_queues = false - -# Number of seconds after which the Rabbit broker is considered down if -# heartbeat's keep-alive fails (0 disable the heartbeat). (integer value) -#heartbeat_timeout_threshold = 60 - -# How often times during the heartbeat_timeout_threshold we check the -# heartbeat. (integer value) -#heartbeat_rate = 2 - -# Deprecated, use rpc_backend=kombu+memory or rpc_backend=fake (boolean value) -# Deprecated group/name - [DEFAULT]/fake_rabbit -#fake_rabbit = false diff --git a/openstack/python-nova/centos/files/nova.logrotate b/openstack/python-nova/centos/files/nova.logrotate deleted file mode 100644 index 6017ca60..00000000 --- a/openstack/python-nova/centos/files/nova.logrotate +++ /dev/null @@ -1,7 +0,0 @@ -/var/log/nova/*.log { - rotate 14 - size 10M - missingok - compress - copytruncate -} diff --git a/openstack/python-nova/centos/files/nova_migration-rootwrap.conf b/openstack/python-nova/centos/files/nova_migration-rootwrap.conf deleted file mode 100644 index dd3dc726..00000000 --- a/openstack/python-nova/centos/files/nova_migration-rootwrap.conf +++ /dev/null @@ -1,6 +0,0 @@ -[DEFAULT] -use_syslog=True -syslog_log_facility=syslog -syslog_log_level=ERROR -filters_path=/etc/nova/migration/rootwrap.d - diff --git a/openstack/python-nova/centos/files/nova_migration-rootwrap_cold_migration b/openstack/python-nova/centos/files/nova_migration-rootwrap_cold_migration deleted file mode 100644 index ad56460a..00000000 --- a/openstack/python-nova/centos/files/nova_migration-rootwrap_cold_migration +++ /dev/null @@ -1,9 +0,0 @@ -[Filters] -create_file: PathFilter, /usr/bin/touch, nova, /var/lib/nova/instances/ -remove_file: PathFilter, /usr/bin/rm, nova, /var/lib/nova/instances/ -create_dir: PathFilter, /usr/bin/mkdir, nova, -p, /var/lib/nova/instances/ -remove_dir: PathFilter, /usr/bin/rm, nova, -rf, /var/lib/nova/instances/ -copy_file_local_to_remote_recursive: PathFilter, /usr/bin/scp, nova, -r, -t, /var/lib/nova/instances/ -copy_file_remote_to_local_recursive: PathFilter, /usr/bin/scp, nova, -r, -f, /var/lib/nova/instances/ -copy_file_local_to_remote: PathFilter, /usr/bin/scp, nova, -t, /var/lib/nova/instances/ -copy_file_remote_to_local: PathFilter, /usr/bin/scp, nova, -f, /var/lib/nova/instances/ diff --git a/openstack/python-nova/centos/files/nova_migration-sudoers b/openstack/python-nova/centos/files/nova_migration-sudoers deleted file mode 100644 index eefdc0ba..00000000 --- a/openstack/python-nova/centos/files/nova_migration-sudoers +++ /dev/null @@ -1,4 +0,0 @@ -Defaults:nova_migration !requiretty - -nova_migration ALL = (nova) NOPASSWD: /usr/bin/nc -U /var/run/libvirt/libvirt-sock -nova_migration ALL = (root) NOPASSWD: /usr/bin/nova-rootwrap /etc/nova/migration/rootwrap.conf * diff --git a/openstack/python-nova/centos/files/nova_migration_authorized_keys b/openstack/python-nova/centos/files/nova_migration_authorized_keys deleted file mode 100644 index bd4c88d9..00000000 --- a/openstack/python-nova/centos/files/nova_migration_authorized_keys +++ /dev/null @@ -1,4 +0,0 @@ -# SSH authorized_keys file for Openstack Nova migration -# -# This controls with hosts are allowed to migration VMs to this host. -# Append the SSH public keys of authorized hosts to this file. \ No newline at end of file diff --git a/openstack/python-nova/centos/files/nova_migration_identity b/openstack/python-nova/centos/files/nova_migration_identity deleted file mode 100644 index c81ef164..00000000 --- a/openstack/python-nova/centos/files/nova_migration_identity +++ /dev/null @@ -1,6 +0,0 @@ -# SSH identity file (private key) for Openstack Nova migration -# -# Generate an ssh key pair for this host. -# Add the private key (e.g id_rsa) to this file. -# Add the public key (e.g id_rsa.pub) to /etc/nova/migration/authorized_keys -# on the migration target hosts. \ No newline at end of file diff --git a/openstack/python-nova/centos/files/nova_setup_timer_advance b/openstack/python-nova/centos/files/nova_setup_timer_advance deleted file mode 100644 index 00c655c7..00000000 --- a/openstack/python-nova/centos/files/nova_setup_timer_advance +++ /dev/null @@ -1,120 +0,0 @@ -#!/bin/bash - -# The qemu command details and the 98-102% range is taken from -# find-lapictscdeadline-optimal.sh and run-tscdeadline-latency.sh -# from the tuned package available at -# https://git.fedorahosted.org/cgit/tuned.git/tree/profiles/realtime-virtual-host -# -# The upstream code has no copyright notice in the scripts, but the -# overall package is licensed under the GPLv2 -# -# Copyright(c) 2016-2017 Wind River Systems, Inc. All rights reserved. - -QEMU=/usr/libexec/qemu-kvm -ADVANCE_FILE="/sys/module/kvm/parameters/lapic_timer_advance_ns" -ADVANCE_CALIB="/etc/nova/calibrated_lapic_timer_advance_ns" -ADVANCE_GOENABLED="/var/run/.nova_timer_advance_enabled" - -function log () -{ - logger -p local1.info -t $0 $@ - echo $0: "$@" -} - - -rm -f ${ADVANCE_GOENABLED} - -if [ ! -f $ADVANCE_FILE ]; then - touch ${ADVANCE_GOENABLED} - exit 1 -fi - -# Use previous calibrated advance result -if [ -f $ADVANCE_CALIB ]; then - read -r advance < $ADVANCE_CALIB - if [[ "$advance" =~ ^[0-9]+$ ]]; then - echo $advance > $ADVANCE_FILE - log "using advance value of" $(cat $ADVANCE_FILE) - touch ${ADVANCE_GOENABLED} - exit 0 - fi -fi - -# Move ourselves to the nova global cpuset. This will ensure that -# we run on a CPU that isn't being used by management or vswitch. -VCPU_PIN_STR=$(grep vcpu_pin_set /etc/nova/nova.conf) -VCPU_PIN_STR=${VCPU_PIN_STR//\"/} -FLOAT_CPUS=${VCPU_PIN_STR##*=} -if [ -z "${FLOAT_CPUS}" ]; then - log "skip calibration, we have not configured yet" - exit 0 -fi -log "Calibrating with FLOAT_CPUS: ${FLOAT_CPUS}" -taskset --pid --cpu-list ${FLOAT_CPUS} $$ &> /dev/null - -dir=$(mktemp -d) - -advance=1500 -latency=1000000 - - -for i in $(seq 1500 500 7000); do - log "test advance ${i}" - echo $i > $ADVANCE_FILE - timeout --foreground --signal TERM 10s \ - chrt -f 1 stdbuf -oL ${QEMU} -enable-kvm -device pc-testdev \ - -device isa-debug-exit,iobase=0xf4,iosize=0x4 \ - -display none -serial stdio -device pci-testdev \ - -kernel /usr/share/qemu-kvm/tscdeadline_latency.flat \ - -cpu host | awk 'NF==2 && /latency:/ {print $2}' > ${dir}/out0 - # chomp last line since output may be incomplete - sed \$d < ${dir}/out0 > ${dir}/out - - # Calculate the average of all the latency numbers output by - # the test image. - A=0 - while read l; do - A=$(($A + $l)) - done < $dir/out - - lines=$(wc -l $dir/out | cut -f 1 -d " ") - if [ ${lines} -eq 0 ]; then - # this shouldn't happen - log "got no output from test, aborting" - break - fi - - ans=$(($A/$lines)) - - # Get the current latency as a percentage of the previous latency - value=$((${ans}*100/${latency})) - - if [ $value -ge 102 ]; then - # Latency has increased by too much, we don't want to use this - # much advance. I didn't see this in practice, this is just - # a sanity check. - advance=$((${i} - 500)) - log "latency too large, reverting to advance of ${advance}" - echo $advance > $ADVANCE_FILE - break - elif [ $value -ge 98 ]; then - # If we're close to the previous latency, then use the current - # advance. The algorithm has a tendency to underestimate a bit, - # so we don't want to use the previous advance value. - break - else - # We're substantially lower than the previous latency, so store - # the current advance and latency numbers and loop through again - # to see if it improves further with a bit higher advance. - latency=$ans - advance=$i - fi -done - -# Save calibrated result -cat $ADVANCE_FILE > $ADVANCE_CALIB -log "using advance value of" $(cat $ADVANCE_FILE) - -rm -rf $dir -touch ${ADVANCE_GOENABLED} -exit 0 diff --git a/openstack/python-nova/centos/files/openstack-nova-api.service b/openstack/python-nova/centos/files/openstack-nova-api.service deleted file mode 100644 index 9ed93c32..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova API Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-api - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-cells.service b/openstack/python-nova/centos/files/openstack-nova-cells.service deleted file mode 100644 index 1dfbff80..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-cells.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Cells Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-cells - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-compute.service b/openstack/python-nova/centos/files/openstack-nova-compute.service deleted file mode 100644 index 9e3e0e56..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-compute.service +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=OpenStack Nova Compute Server -After=syslog.target network.target libvirtd.service - -[Service] -Environment=LIBGUESTFS_ATTACH_METHOD=appliance -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -PIDFile=/var/run/nova/nova-compute.pid -ExecStart=/usr/bin/nova-compute -ExecStartPost=/bin/bash -c 'echo $MAINPID > /var/run/nova/nova-compute.pid' -ExecStop=/bin/kill -HUP $MAINPID -StandardOutput=null - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-conductor.service b/openstack/python-nova/centos/files/openstack-nova-conductor.service deleted file mode 100644 index 5407ccaa..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-conductor.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Conductor Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=nova -ExecStart=/usr/bin/nova-conductor - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-console.service b/openstack/python-nova/centos/files/openstack-nova-console.service deleted file mode 100644 index 5c4070cc..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-console.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Console Proxy Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-console - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-consoleauth.service b/openstack/python-nova/centos/files/openstack-nova-consoleauth.service deleted file mode 100644 index 1d194147..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-consoleauth.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova VNC console auth Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-consoleauth - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-metadata-api.service b/openstack/python-nova/centos/files/openstack-nova-metadata-api.service deleted file mode 100644 index c016ad8e..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-metadata-api.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Metadata API Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-api-metadata - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-network.service b/openstack/python-nova/centos/files/openstack-nova-network.service deleted file mode 100644 index cd0d329b..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-network.service +++ /dev/null @@ -1,18 +0,0 @@ -[Unit] -Description=OpenStack Nova Network Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-network - -# Don't kill dnsmasq on shutdown (#805947) -KillMode=process - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-novncproxy.service b/openstack/python-nova/centos/files/openstack-nova-novncproxy.service deleted file mode 100644 index 50ce6751..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-novncproxy.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Nova NoVNC Proxy Server -After=syslog.target network.target - -[Service] -Type=simple -User=root -EnvironmentFile=-/etc/sysconfig/openstack-nova-novncproxy -ExecStart=/usr/bin/nova-novncproxy --web /usr/share/novnc/ $OPTIONS -#Restart=on-failure - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-nova/centos/files/openstack-nova-novncproxy.sysconfig b/openstack/python-nova/centos/files/openstack-nova-novncproxy.sysconfig deleted file mode 100644 index 8c905ed4..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-novncproxy.sysconfig +++ /dev/null @@ -1,2 +0,0 @@ -# You may specify other parameters to the nova-novncproxy here -#OPTIONS= diff --git a/openstack/python-nova/centos/files/openstack-nova-os-compute-api.service b/openstack/python-nova/centos/files/openstack-nova-os-compute-api.service deleted file mode 100644 index 5b1a40b9..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-os-compute-api.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=OpenStack Nova Compute API Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-api-os-compute - -[Install] -WantedBy=multi-user.target diff --git a/openstack/python-nova/centos/files/openstack-nova-scheduler.service b/openstack/python-nova/centos/files/openstack-nova-scheduler.service deleted file mode 100644 index 822967db..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-scheduler.service +++ /dev/null @@ -1,15 +0,0 @@ -[Unit] -Description=OpenStack Nova Scheduler Server -After=syslog.target network.target - -[Service] -Type=simple -#NotifyAccess=all -TimeoutStartSec=0 -#Restart=always -User=root -ExecStart=/usr/bin/nova-scheduler - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-serialproxy.service b/openstack/python-nova/centos/files/openstack-nova-serialproxy.service deleted file mode 100644 index ba02b86b..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-serialproxy.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Nova Serial Proxy Server -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/nova-serialproxy -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-spicehtml5proxy.service b/openstack/python-nova/centos/files/openstack-nova-spicehtml5proxy.service deleted file mode 100644 index 8abbc755..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-spicehtml5proxy.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Nova Spice HTML5 Proxy Server -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/nova-spicehtml5proxy -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/openstack-nova-xvpvncproxy.service b/openstack/python-nova/centos/files/openstack-nova-xvpvncproxy.service deleted file mode 100644 index 0f9c2b82..00000000 --- a/openstack/python-nova/centos/files/openstack-nova-xvpvncproxy.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=OpenStack Nova XVP VncProxy Server -After=syslog.target network.target - -[Service] -Type=simple -User=root -ExecStart=/usr/bin/nova-xvpvncproxy -#Restart=on-failure - -[Install] -WantedBy=multi-user.target - diff --git a/openstack/python-nova/centos/files/policy.json b/openstack/python-nova/centos/files/policy.json deleted file mode 100644 index 2c63c085..00000000 --- a/openstack/python-nova/centos/files/policy.json +++ /dev/null @@ -1,2 +0,0 @@ -{ -} diff --git a/openstack/python-nova/centos/files/resctrl-show b/openstack/python-nova/centos/files/resctrl-show deleted file mode 100755 index 09a507df..00000000 --- a/openstack/python-nova/centos/files/resctrl-show +++ /dev/null @@ -1,287 +0,0 @@ -#!/usr/bin/env python - -import os -import sys -import re -import time -import copy -import uuid - -from oslo_utils import uuidutils - -from itertools import groupby -from operator import itemgetter - -import logging - - -# logger - -logging.basicConfig(level=logging.DEBUG, - format='%(asctime)s - %(name)s - %(levelname)s - %(message)s') -logging.getLogger('multiprocessing').setLevel(logging.DEBUG) -LOG = logging.getLogger(__name__) - -# L3 CAT Support -_L3_RESCTRL_SUPPORT = None -_L3_CACHE = None -RESCTRL_BASE = '/sys/fs/resctrl' - - -def get_l3_cache_allocation_info(): - """Get resctrl L3 cache allocation technology information. - - :param: None - :return info[cache][field]: dictionary of fields, per cache type, - defined fields: - 'cbm_mask' - hexidecimal bitmask of allocatable cache lanes - 'min_cbm_bits' - minimum granularity of bits that can be specified - 'num_cbm_bits' - number of allocatable cache lanes - 'num_closids' - number of allocatable CLOS ids, eg, COS - where cache is . - - If resctrl is not available, this will return empty dictionary. - """ - global _L3_RESCTRL_SUPPORT - global _L3_CACHE - if _L3_CACHE is not None: - return _L3_CACHE - - info_dir = RESCTRL_BASE + '/info' - if _L3_RESCTRL_SUPPORT is None: - _L3_CACHE = {} - if not os.path.isdir(info_dir): - LOG.info('L3 cache allocation technology not available') - _L3_RESCTRL_SUPPORT = False - return _L3_CACHE - else: - _L3_RESCTRL_SUPPORT = True - if not _L3_RESCTRL_SUPPORT: - _L3_CACHE = {} - return _L3_CACHE - - known_types = {'int': int, 'str': str} - fields = [('cbm_mask', 'str'), - ('min_cbm_bits', 'int'), - ('num_closids', 'int')] - info_dirs = [name for name in os.listdir(info_dir)] - for cache in info_dirs: - _L3_CACHE[cache] = {} - for field, type_ in fields: - filename = RESCTRL_BASE + '/info/' + cache + '/' + field - try: - with open(filename, 'r') as f: - value = f.readline().strip() - _L3_CACHE[cache][field] = known_types[type_](value) - except Exception as e: - _L3_CACHE[cache][field] = None - LOG.error('Cannot parse file=%(file)s, error=%(err)s', - {'file': filename, 'err': e}) - if _L3_CACHE[cache]['cbm_mask'] is not None: - _L3_CACHE[cache]['num_cbm_bits'] = \ - int(_L3_CACHE[cache]['cbm_mask'], 16).bit_length() - else: - _L3_CACHE[cache]['num_cbm_bits'] = None - return _L3_CACHE - - -def get_l3_cache_allocation_schemata(uuid=None): - """Get resctrl L3 cache allocation technology schemata CBM corresponding - to instance uuid, or the default schemata if uuid not provided. - The CBM is a hexedecimal bitmask representing allocated cache lanes. - - The contents of schemata has the following line-pattern: - :=; ... = - - Example: L3 with cache type 'both', with two banks: - L3:0=ffffe;1=fffff - - Example: L3 with cache type 'code' and 'data', i.e., CDP enabled - L3CODE:0=ffffe;1=fffff - L3DATA:0=ffffe;1=fffff - - :param: uuid string - :return schemata[cache][bank]: dictionary of CBM per cache type, per bank - """ - global _L3_RESCTRL_SUPPORT - re_schemata = re.compile(r"^\s*(\S+):(\d+=\w+;?.*)$") - schemata = {} - - info_dir = RESCTRL_BASE + '/info' - if _L3_RESCTRL_SUPPORT is None: - if not os.path.isdir(info_dir): - LOG.info('L3 cache allocation technology not available') - _L3_RESCTRL_SUPPORT = False - return schemata - else: - _L3_RESCTRL_SUPPORT = True - if not _L3_RESCTRL_SUPPORT: - return schemata - - if uuid is None: - filename = RESCTRL_BASE + '/schemata' - else: - filename = RESCTRL_BASE + '/' + uuid + '/schemata' - try: - with open(filename, 'r') as f: - for line in f: - m = re.search(re_schemata, line) - if m: - cache_type = m.group(1) - cache_cbm = m.group(2).split(';') - schemata[cache_type] = {} - for scheme in cache_cbm: - bank, cbm = scheme.split('=') - schemata[cache_type][int(bank)] = cbm - except Exception as e: - LOG.error('Cannot parse file=%(file)s, error=%(err)s', - {'file': filename, 'err': e}) - - return schemata - - -def get_all_l3_schemata(): - """Get L3 CLOS schemata CBM for all resctrl uuids. - :param: None - :return schematas[uuid][cache][bank]: dictionary of CBM per uuid, - per cache type, per bank - """ - global _L3_RESCTRL_SUPPORT - schematas = {} - - info_dir = RESCTRL_BASE + '/info' - if _L3_RESCTRL_SUPPORT is None: - if not os.path.isdir(info_dir): - LOG.info('L3 cache allocation technology not available') - _L3_RESCTRL_SUPPORT = False - return schematas - else: - _L3_RESCTRL_SUPPORT = True - if not _L3_RESCTRL_SUPPORT: - return schematas - - for name in os.listdir(RESCTRL_BASE): - path = os.path.join(name, RESCTRL_BASE) - if os.path.isdir(path) and uuidutils.is_uuid_like(name): - schemata = get_l3_cache_allocation_schemata(uuid=name) - schematas[name] = copy.deepcopy(schemata) - return schematas - - -def hextoset(mask=None): - """Convert hex string to equivalent set of enabled bits. - - :param: mask: hex string representing enabled bits - :return: set of enabled bits - """ - s = set([]) - if not mask: - return s - bits = '{0:b}'.format(int(mask, 16)) - for i, c in enumerate(bits[::-1]): - if int(c): - s.add(i) - return s - - -def settohex(setbits=None): - """Convert set of enabled bits to equivalent hex string. - - :param: setbits: set of enabled bits - :return: hex string representing enabled bits - """ - if setbits is None: - return '' - mask = 0 - for i in setbits: - mask += (1 << i) - s = '{0:x}'.format(mask) - return s - - -def msb(x): - """Position of Most Significant Bit. - :param: x: integer - :return integer position of most significant bit - """ - return x.bit_length() - 1 - - -def list_to_range(input_list=None): - """Convert a list into a string of comma separate ranges. - E.g., [1,2,3,8,9,15] is converted to '1-3,8-9,15' - """ - if input_list is None: - return '' - if len(input_list) < 3: - return ','.join(str(x) for x in input_list) - else: - G = (list(x) for _, x in groupby(enumerate(input_list), - lambda (i, x): i - x)) - return ','.join( - '-'.join(map(str, (g[0][1], g[-1][1])[:len(g)])) for g in G) - - -def print_all_instance_schematas(l3_info=None, default_schemata=None, schematas=None): - if l3_info is None: - return - if default_schemata is None: - return - if schematas is None: - return - - cache_types = sorted(default_schemata.keys()) - cache_type0 = cache_types[0] - banks = sorted(default_schemata[cache_type0].keys()) - - cbm_mask = l3_info[cache_type0]['cbm_mask'] - closids_total = l3_info[cache_type0]['num_closids'] - num_cbm_bits = l3_info[cache_type0]['num_cbm_bits'] - uuid_len = len(str(uuid.uuid4())) - dum_name = "".ljust(uuid_len)[:uuid_len] - closids_used = 1 + len(schematas) - - print('%6s %4s : %*s : %8s : %20s : %4s : %s' - % ('cache', 'bank', uuid_len, 'uuid', - 'CBM', 'bitarray', 'size', 'setbits')) - for cache_type in cache_types: - for bank in banks: - default_s = hextoset(mask=default_schemata[cache_type][bank]) - default_h = settohex(setbits=default_s) - default_d = int(default_h, 16) - name = 'default' - print('%6s %4d : %*s : %08x : %s : %4d : %s' - % (cache_type, bank, uuid_len, name, default_d, - format(default_d, '020b'), bin(default_d).count('1'), - list_to_range(input_list=default_s))) - - for name, schemata in sorted(schematas.items(), - key=lambda x: msb(int(x[1][cache_type][bank], 16))): - - if schemata[cache_type][bank] == cbm_mask: - cbm_s = set() - else: - cbm_s = hextoset(mask=schemata[cache_type][bank]) - cbm_h = settohex(setbits=cbm_s) - cbm_d = int(cbm_h, 16) - print('%6s %4d : %s : %08x : %s : %4d : %s' - % (cache_type, bank, name, cbm_d, - format(cbm_d, '020b'), bin(cbm_d).count('1'), - list_to_range(input_list=cbm_s) or '-')) - print('CLOSIDS/type: %d total, %d used' % (closids_total, closids_used)) - - -def main(): - l3_info = get_l3_cache_allocation_info() - if not _L3_RESCTRL_SUPPORT: - return - default_schemata = get_l3_cache_allocation_schemata() - schematas = get_all_l3_schemata() - print_all_instance_schematas(l3_info=l3_info, - default_schemata=default_schemata, - schematas=schematas) - - -if __name__ == '__main__': - main() - sys.exit(0) diff --git a/openstack/python-nova/centos/openstack-nova.spec b/openstack/python-nova/centos/openstack-nova.spec deleted file mode 100644 index 659bc5cf..00000000 --- a/openstack/python-nova/centos/openstack-nova.spec +++ /dev/null @@ -1,900 +0,0 @@ -%{!?upstream_version: %global upstream_version %{version}%{?milestone}} -%global with_doc %{!?_without_doc:1}%{?_without_doc:0} -%global with_trans %{!?_without_trans:1}%{?_without_trans:0} -%global distro RDO - -%global common_desc \ -OpenStack Compute (codename Nova) is open source software designed to \ -provision and manage large networks of virtual machines, creating a \ -redundant and scalable cloud computing platform. It gives you the \ -software, control panels, and APIs required to orchestrate a cloud, \ -including running instances, managing networks, and controlling access \ -through users and projects. OpenStack Compute strives to be both \ -hardware and hypervisor agnostic, currently supporting a variety of \ -standard hardware configurations and seven major hypervisors. - -Name: openstack-nova -# Liberty semver reset -# https://review.openstack.org/#/q/I6a35fa0dda798fad93b804d00a46af80f08d475c,n,z -Epoch: 1 -Version: 16.0.2 -Release: 1%{?_tis_dist}.%{tis_patch_ver} -Summary: OpenStack Compute (nova) - -License: ASL 2.0 -URL: http://openstack.org/projects/compute/ -Source0: nova-%{version}.tar.gz - -# - -Source1: nova-dist.conf - -Source10: openstack-nova-api.service -Source12: openstack-nova-compute.service -Source13: openstack-nova-network.service -Source15: openstack-nova-scheduler.service -Source18: openstack-nova-xvpvncproxy.service -Source19: openstack-nova-console.service -Source20: openstack-nova-consoleauth.service -Source25: openstack-nova-metadata-api.service -Source26: openstack-nova-conductor.service -Source27: openstack-nova-cells.service -Source28: openstack-nova-spicehtml5proxy.service -Source29: openstack-nova-novncproxy.service -Source31: openstack-nova-serialproxy.service -Source32: openstack-nova-os-compute-api.service - -Source22: nova-ifc-template -Source24: nova-sudoers -Source30: openstack-nova-novncproxy.sysconfig -Source33: nova-placement-api.conf -Source34: policy.json - -Source35: nova_migration-sudoers -Source36: nova-ssh-config -Source37: nova-migration-wrapper -Source38: nova_migration_identity -Source39: nova_migration_authorized_keys -Source40: nova_migration-rootwrap.conf -Source41: nova_migration-rootwrap_cold_migration - -#WRS -Source60: nova_authorized_cmds -Source61: nova.conf -Source62: nova-purge-deleted-active -Source63: nova_setup_cpusets -Source64: openstack-nova-compute-setup.service -Source65: nova-compute.init -Source68: nova-restart -Source69: kvm_timer_advance_setup.service -Source70: nova_setup_timer_advance -Source71: nova-pci-interrupts -Source72: nova-placement-api -Source73: resctrl-show -Source74: collect_host_memory_info.sh - -BuildArch: noarch -BuildRequires: openstack-macros -BuildRequires: intltool -BuildRequires: python2-devel -BuildRequires: git -BuildRequires: python-sphinx -BuildRequires: python-oslo-cache -BuildRequires: python-openstackdocstheme -BuildRequires: python-os-traits -BuildRequires: python-setuptools -BuildRequires: python2-pip -BuildRequires: python2-wheel -BuildRequires: python-netaddr -BuildRequires: python-pbr -BuildRequires: python-d2to1 -BuildRequires: python-six -BuildRequires: python-oslo-i18n -BuildRequires: python-cryptography >= 1.6 -BuildRequires: python-oslo-policy -# Required for unit tests -BuildRequires: python-barbicanclient -BuildRequires: python-ddt -BuildRequires: python-ironicclient -BuildRequires: python-mox3 -BuildRequires: python-os-testr -BuildRequires: python-os-vif -BuildRequires: python-oslo-rootwrap -BuildRequires: python-oslotest -BuildRequires: python-osprofiler -BuildRequires: python-requests-mock -BuildRequires: python-subunit -BuildRequires: python-testrepository -BuildRequires: python-testresources -BuildRequires: python-testscenarios -BuildRequires: python-tooz -BuildRequires: python-oslo-vmware -BuildRequires: python-cursive -# WRS -BuildRequires: tsconfig -BuildRequires: python-suds -BuildRequires: systemd-devel -BuildRequires: systemd - -Requires: openstack-nova-compute = %{epoch}:%{version}-%{release} -Requires: openstack-nova-scheduler = %{epoch}:%{version}-%{release} -Requires: openstack-nova-api = %{epoch}:%{version}-%{release} -Requires: openstack-nova-network = %{epoch}:%{version}-%{release} -Requires: openstack-nova-conductor = %{epoch}:%{version}-%{release} -Requires: openstack-nova-console = %{epoch}:%{version}-%{release} -Requires: openstack-nova-cells = %{epoch}:%{version}-%{release} -Requires: openstack-nova-novncproxy = %{epoch}:%{version}-%{release} -Requires: openstack-nova-placement-api = %{epoch}:%{version}-%{release} -Requires: openstack-nova-migration = %{epoch}:%{version}-%{release} - - -%description -%{common_desc} - -%package common -Summary: Components common to all OpenStack Nova services -Obsoletes: openstack-nova-cert <= 1:16.0.0-1 - -Requires: python-nova = %{epoch}:%{version}-%{release} -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -Requires(pre): shadow-utils -BuildRequires: systemd -# Required to build nova.conf.sample -BuildRequires: python-castellan >= 0.7.0 -BuildRequires: python-glanceclient -BuildRequires: python-keystonemiddleware -BuildRequires: python-lxml -BuildRequires: python-microversion-parse >= 0.1.3 -BuildRequires: python-os-brick -BuildRequires: python-oslo-db -BuildRequires: python-oslo-reports -BuildRequires: python-oslo-service -BuildRequires: python-oslo-versionedobjects -BuildRequires: python-paramiko -BuildRequires: python-websockify -# Required to compile translation files -BuildRequires: python-babel - -# remove old service subpackage -Obsoletes: %{name}-objectstore - - -%description common -%{common_desc} - -This package contains scripts, config and dependencies shared -between all the OpenStack nova services. - - -%package compute -Summary: OpenStack Nova Virtual Machine control service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: curl -Requires: iscsi-initiator-utils -Requires: iptables iptables-ipv6 -Requires: ipmitool -Requires: python-libguestfs -Requires: libvirt-python -Requires: libvirt-daemon-kvm -Requires: /usr/bin/virsh -%if 0%{?rhel}==0 -Requires: libvirt-daemon-lxc -%endif -Requires: openssh-clients -Requires: rsync -Requires: lvm2 -Requires: python-cinderclient >= 3.1.0 -Requires(pre): qemu-kvm >= 2.3.0 -Requires: genisoimage -Requires: bridge-utils -Requires: sg3_utils -Requires: sysfsutils -Requires: libosinfo - -%description compute -%{common_desc} - -This package contains the Nova service for controlling Virtual Machines. - - -%package network -Summary: OpenStack Nova Network control service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: radvd -Requires: bridge-utils -Requires: dnsmasq -Requires: dnsmasq-utils -Requires: ebtables -Requires: conntrack-tools - -%description network -%{common_desc} - -This package contains the Nova service for controlling networking. - - -%package scheduler -Summary: OpenStack Nova VM distribution service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} - -%description scheduler -%{common_desc} - -This package contains the service for scheduling where -to run Virtual Machines in the cloud. - - -%package api -Summary: OpenStack Nova API services - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: python-cinderclient >= 3.1.0 - -%description api -%{common_desc} - -This package contains the Nova services providing programmatic access. - -%package conductor -Summary: OpenStack Nova Conductor services - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} - -%description conductor -%{common_desc} - -This package contains the Nova services providing database access for -the compute service - -%package console -Summary: OpenStack Nova console access services - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: python-websockify >= 0.8.0 - -%description console -%{common_desc} - -This package contains the Nova services providing -console access services to Virtual Machines. - -%package cells -Summary: OpenStack Nova Cells services - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} - -%description cells -%{common_desc} - -This package contains the Nova Cells service providing additional -scaling and (geographic) distribution for compute services. - -%package novncproxy -Summary: OpenStack Nova noVNC proxy service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: novnc -Requires: python-websockify >= 0.8.0 - - -%description novncproxy -%{common_desc} - -This package contains the Nova noVNC Proxy service that can proxy -VNC traffic over browser websockets connections. - -%package spicehtml5proxy -Summary: OpenStack Nova Spice HTML5 console access service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: python-websockify >= 0.8.0 - -%description spicehtml5proxy -%{common_desc} - -This package contains the Nova services providing the -spice HTML5 console access service to Virtual Machines. - -%package serialproxy -Summary: OpenStack Nova serial console access service - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: python-websockify >= 0.8.0 - -%description serialproxy -%{common_desc} - -This package contains the Nova services providing the -serial console access service to Virtual Machines. - -%package placement-api -Summary: OpenStack Nova Placement APIservice - -Requires: openstack-nova-common = %{epoch}:%{version}-%{release} -Requires: httpd -Requires: mod_wsgi - -%description placement-api -%{common_desc} - -This package contains the Nova placement service, which will initially -allow for the management of resource providers. - -%package migration -Summary: OpenStack Nova Migration - -Requires: openstack-nova-compute = %{epoch}:%{version}-%{release} - -%description migration -%{common_desc} - -This package contains scripts and config to support VM migration in Nova. - -%package -n python-nova -Summary: Nova Python libraries - -Requires: openssl -# Require openssh for ssh-keygen -Requires: openssh -Requires: sudo - -Requires: python-paramiko >= 2.0 - -Requires: python-decorator >= 3.4.0 -Requires: python-enum34 -Requires: python-eventlet >= 0.18.2 -Requires: python-iso8601 >= 0.1.11 -Requires: python-netaddr >= 0.7.13 -Requires: python-lxml >= 2.3 -Requires: python-boto -Requires: python-ldap -Requires: python-stevedore >= 1.20.0 - -Requires: python-memcached - -Requires: python-sqlalchemy >= 1.0.10 -Requires: python-migrate >= 0.11.0 -Requires: python-alembic >= 0.8.0 - -Requires: python-paste -Requires: python-paste-deploy >= 1.5.0 -Requires: python-routes >= 2.3.1 -Requires: python-webob >= 1.7.1 - -Requires: python-babel >= 2.3.4 -Requires: python-castellan >= 0.7.0 -Requires: python-cryptography >= 1.6 -Requires: python-cursive >= 0.1.2 -Requires: python-glanceclient >= 1:2.8.0 -Requires: python-greenlet >= 0.3.2 -Requires: python-keystonemiddleware >= 4.12.0 -Requires: python-keystoneauth1 >= 3.1.0 -Requires: python-jinja2 -Requires: python-jsonschema >= 2.0.0 -Requires: python-microversion-parse >= 0.1.2 -Requires: python-netifaces >= 0.10.4 -Requires: python-neutronclient >= 6.3.0 -Requires: python-novaclient >= 2.30.1 -Requires: python-os-brick >= 1.15.2 -Requires: python-os-traits -Requires: python-oslo-cache >= 1.5.0 -Requires: python-oslo-concurrency >= 3.8.0 -Requires: python-oslo-config >= 2:4.0.0 -Requires: python-oslo-context >= 2.14.0 -Requires: python-oslo-db >= 4.24.0 -Requires: python-oslo-i18n >= 2.1.0 -Requires: python-oslo-log >= 3.22.0 -Requires: python-oslo-messaging >= 5.24.2 -Requires: python-oslo-middleware >= 3.27.0 -Requires: python-oslo-policy >= 1.23.0 -Requires: python-oslo-privsep >= 1.9.0 -Requires: python-oslo-reports >= 0.6.0 -Requires: python-oslo-rootwrap >= 5.0.0 -Requires: python-oslo-serialization >= 1.10.0 -Requires: python-oslo-service >= 1.10.0 -Requires: python-oslo-utils >= 3.20.0 -Requires: python-oslo-versionedobjects >= 1.17.0 -Requires: python-os-vif >= 1.7.0 -Requires: python-oslo-vmware >= 1.16.0 -Requires: python-pbr -Requires: python-prettytable >= 0.7.1 -Requires: python-psutil -Requires: python-requests >= 2.10.0 -Requires: python-rfc3986 >= 0.3.1 -Requires: python-six >= 1.9.0 -Requires: python-tooz - -%description -n python-nova -%{common_desc} - -This package contains the nova Python library. - -%package -n python-nova-tests -Summary: Nova tests -Requires: openstack-nova = %{epoch}:%{version}-%{release} - -%description -n python-nova-tests -%{common_desc} - -This package contains the nova Python library. - -%if 0%{?with_doc} -%package doc -Summary: Documentation for OpenStack Compute - -BuildRequires: graphviz - -# Required to build module documents -BuildRequires: python-boto -BuildRequires: python-eventlet -BuildRequires: python-barbicanclient -BuildRequires: python-cinderclient -BuildRequires: python-keystoneclient -BuildRequires: python-neutronclient -BuildRequires: python-os-win -BuildRequires: python-oslo-config -BuildRequires: python-oslo-log -BuildRequires: python-oslo-messaging -BuildRequires: python-oslo-utils -BuildRequires: python-redis -BuildRequires: python-rfc3986 >= 0.2.2 -BuildRequires: python-routes -BuildRequires: python-sqlalchemy -BuildRequires: python-webob -BuildRequires: python-zmq -# while not strictly required, quiets the build down when building docs. -BuildRequires: python-migrate, python-iso8601 - -%description doc -%{common_desc} - -This package contains documentation files for nova. -%endif - -%prep -%autosetup -n nova-%{upstream_version} -S git - -find . \( -name .gitignore -o -name .placeholder \) -delete - -find nova -name \*.py -exec sed -i '/\/usr\/bin\/env python/{d;q}' {} + - -# Remove the requirements file so that pbr hooks don't add it -# to distutils requiers_dist config -%py_req_cleanup - -%build -PYTHONPATH=. oslo-config-generator --config-file=etc/nova/nova-config-generator.conf -# Generate a sample policy.yaml file for documentation purposes only -PYTHONPATH=. oslopolicy-sample-generator --config-file=etc/nova/nova-policy-generator.conf -export PBR_VERSION=%{version} - -%{__python2} setup.py build - -# Generate i18n files -# (amoralej) we can remove '-D nova' once https://review.openstack.org/#/c/439500/ is merged -%{__python2} setup.py compile_catalog -d build/lib/nova/locale -D nova - -# Avoid http://bugzilla.redhat.com/1059815. Remove when that is closed -sed -i 's|group/name|group;name|; s|\[DEFAULT\]/|DEFAULT;|' etc/nova/nova.conf.sample - -# Programmatically update defaults in sample config -# which is installed at /etc/nova/nova.conf - -# First we ensure all values are commented in appropriate format. -# Since icehouse, there was an uncommented keystone_authtoken section -# at the end of the file which mimics but also conflicted with our -# distro editing that had been done for many releases. -sed -i '/^[^#[]/{s/^/#/; s/ //g}; /^#[^ ]/s/ = /=/' etc/nova/nova.conf.sample - -# TODO: Make this more robust -# Note it only edits the first occurrence, so assumes a section ordering in sample -# and also doesn't support multi-valued variables like dhcpbridge_flagfile. -while read name eq value; do - test "$name" && test "$value" || continue - sed -i "0,/^# *$name=/{s!^# *$name=.*!#$name=$value!}" etc/nova/nova.conf.sample -done < %{SOURCE1} - -%py2_build_wheel - -%install -export PBR_VERSION=%{version} - -%{__python2} setup.py install -O1 --skip-build --root %{buildroot} -mkdir -p $RPM_BUILD_ROOT/wheels -install -m 644 dist/*.whl $RPM_BUILD_ROOT/wheels/ - -# WRS -# Install sql migration stuff that wasn't installed by setup.py -install -m 640 nova/db/sqlalchemy/api_migrations/migrate_repo/migrate.cfg %{buildroot}%{python2_sitelib}/nova/db/sqlalchemy/api_migrations/migrate_repo/migrate.cfg -install -m 640 nova/db/sqlalchemy/migrate_repo/migrate.cfg %{buildroot}%{python2_sitelib}/nova/db/sqlalchemy/migrate_repo/migrate.cfg -install -m 640 nova/db/sqlalchemy/migrate_repo/versions/246_sqlite_upgrade.sql %{buildroot}%{python2_sitelib}/nova/db/sqlalchemy/migrate_repo/versions/246_sqlite_upgrade.sql -install -d 755 %{buildroot}%{python2_sitelib}/nova/CA/. -install -m 755 nova/CA/*.sh %{buildroot}%{python2_sitelib}/nova/CA/. -install -m 644 nova/CA/*.tmpl %{buildroot}%{python2_sitelib}/nova/CA/. - -# Remove this once sphinxcontrib.seqdiag becomes available -sed -i -e '/sphinxcontrib.seqdiag/d' doc/source/conf.py -sed -i -e 's#../../etc/nova/nova-config-generator.conf#etc/nova/nova-config-generator.conf#' doc/source/conf.py - -%if 0%{?with_doc} -%{__python2} setup.py build_sphinx -%endif - -%{__python2} setup.py build_sphinx --builder man -mkdir -p %{buildroot}%{_mandir}/man1 -install -p -D -m 644 doc/build/man/*.1 %{buildroot}%{_mandir}/man1/ - -# Setup directories -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/buckets -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/instances -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/keys -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/networks -install -d -m 755 %{buildroot}%{_sharedstatedir}/nova/tmp -install -d -m 750 %{buildroot}%{_localstatedir}/log/nova -install -d -m 700 %{buildroot}%{_sharedstatedir}/nova/.ssh - -# Install config files -install -d -m 755 %{buildroot}%{_sysconfdir}/nova -install -p -D -m 640 %{SOURCE1} %{buildroot}%{_datarootdir}/nova/nova-dist.conf -install -p -D -m 640 %{SOURCE61} %{buildroot}%{_sysconfdir}/nova/nova.conf -install -p -D -m 640 %{SOURCE61} %{buildroot}%{_sysconfdir}/nova/nova-ironic.conf -install -p -D -m 640 etc/nova/rootwrap.conf %{buildroot}%{_sysconfdir}/nova/rootwrap.conf -install -p -D -m 640 etc/nova/api-paste.ini %{buildroot}%{_sysconfdir}/nova/api-paste.ini -install -p -D -m 640 %{SOURCE33} %{buildroot}%{_sysconfdir}/httpd/conf.d/00-nova-placement-api.conf -install -d -m 755 %{buildroot}%{_sysconfdir}/nova/migration -install -p -D -m 600 %{SOURCE38} %{buildroot}%{_sysconfdir}/nova/migration/identity -install -p -D -m 644 %{SOURCE39} %{buildroot}%{_sysconfdir}/nova/migration/authorized_keys -install -p -D -m 640 %{SOURCE40} %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.conf -install -d -m 755 %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.d -install -p -D -m 640 %{SOURCE41} %{buildroot}%{_sysconfdir}/nova/migration/rootwrap.d/cold_migration.filters - -# Install empty policy.json file to cover rpm updates with untouched policy files. -install -p -D -m 640 %{SOURCE34} %{buildroot}%{_sysconfdir}/nova/policy.json - -# Install version info file -cat > %{buildroot}%{_sysconfdir}/nova/release < os_xenapi/client.py </dev/null || groupadd -r nova --gid 162 -if ! getent passwd nova >/dev/null; then - useradd -u 162 -r -g nova -G nova,nobody -d %{_sharedstatedir}/nova -s /sbin/nologin -c "OpenStack Nova Daemons" nova -fi -exit 0 - -%pre compute -usermod -a -G qemu nova -usermod -a -G libvirt nova -%pre migration -getent group nova_migration >/dev/null || groupadd -r nova_migration -getent passwd nova_migration >/dev/null || \ - useradd -r -g nova_migration -d / -s /bin/bash -c "OpenStack Nova Migration" nova_migration -exit 0 - -%post compute -%systemd_post %{name}-compute.service -/usr/bin/systemctl enable %{name}-compute-setup.service -/usr/bin/systemctl enable kvm_timer_advance_setup.service -%post network -%systemd_post %{name}-network.service -%post scheduler -%systemd_post %{name}-scheduler.service -%post api -%systemd_post %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service -%post conductor -%systemd_post %{name}-conductor.service -%post console -%systemd_post %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service -%post cells -%systemd_post %{name}-cells.service -%post novncproxy -%systemd_post %{name}-novncproxy.service -%post spicehtml5proxy -%systemd_post %{name}-spicehtml5proxy.service -%post serialproxy -%systemd_post %{name}-serialproxy.service - -%preun compute -%systemd_preun %{name}-compute.service -if [ $1 -eq 0 ] ; then - # Package removal, not upgrade - /usr/bin/systemctl disable %{name}-compute-setup.service - /usr/bin/systemctl disable kvm_timer_advance_setup.service -fi -%preun network -%systemd_preun %{name}-network.service -%preun scheduler -%systemd_preun %{name}-scheduler.service -%preun api -%systemd_preun %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service -%preun conductor -%systemd_preun %{name}-conductor.service -%preun console -%systemd_preun %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service -%preun cells -%systemd_preun %{name}-cells.service -%preun novncproxy -%systemd_preun %{name}-novncproxy.service -%preun spicehtml5proxy -%systemd_preun %{name}-spicehtml5proxy.service -%preun serialproxy -%systemd_preun %{name}-serialproxy.service - -%postun compute -%systemd_postun_with_restart %{name}-compute.service -%postun network -%systemd_postun_with_restart %{name}-network.service -%postun scheduler -%systemd_postun_with_restart %{name}-scheduler.service -%postun api -%systemd_postun_with_restart %{name}-api.service %{name}-metadata-api.service %{name}-os-compute-api.service -%postun conductor -%systemd_postun_with_restart %{name}-conductor.service -%postun console -%systemd_postun_with_restart %{name}-console.service %{name}-consoleauth.service %{name}-xvpvncproxy.service -%postun cells -%systemd_postun_with_restart %{name}-cells.service -%postun novncproxy -%systemd_postun_with_restart %{name}-novncproxy.service -%postun spicehtml5proxy -%systemd_postun_with_restart %{name}-spicehtml5proxy.service -%postun serialproxy -%systemd_postun_with_restart %{name}-serialproxy.service - -%files - -%files common -f nova.lang -%doc LICENSE -%doc etc/nova/policy.yaml.sample -%dir %{_datarootdir}/nova -%attr(-, root, nova) %{_datarootdir}/nova/nova-dist.conf -%{_datarootdir}/nova/interfaces.template -%{_datarootdir}/nova/rootwrap/network.filters -%dir %attr(0755, root, nova) %{_sysconfdir}/nova -%{_sysconfdir}/nova/release -%config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/nova.conf -%config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/nova-ironic.conf -%config(noreplace) %attr(0660, root, nova) %{_sysconfdir}/nova/api-paste.ini -%config(noreplace) %attr(0640, root, nova) %{_sysconfdir}/nova/rootwrap.conf -%config(noreplace) %attr(-, root, nova) %{_sysconfdir}/nova/policy.json -%config(noreplace) %{_sysconfdir}/sudoers.d/nova -%{_sysconfdir}/bash_completion.d/nova-manage.bash_completion - -%dir %attr(0750, nova, root) %{_localstatedir}/log/nova -%dir %attr(0755, nova, root) %{_localstatedir}/run/nova - -%{_bindir}/nova-manage -%{_bindir}/nova-policy -%{_bindir}/nova-rootwrap -%{_bindir}/nova-rootwrap-daemon -%{_bindir}/nova-status - -%{_mandir}/man1/nova*.1.gz - -%defattr(-, nova, nova, -) -%dir %{_sharedstatedir}/nova -%dir %{_sharedstatedir}/nova/buckets -%dir %{_sharedstatedir}/nova/instances -%dir %{_sharedstatedir}/nova/keys -%dir %{_sharedstatedir}/nova/networks -%dir %{_sharedstatedir}/nova/tmp - -%files compute -%{_bindir}/nova-compute -%{_bindir}/nova-idmapshift -%{_unitdir}/nova-compute.service -%{_datarootdir}/nova/rootwrap/compute.filters -%{_bindir}/nova_authorized_cmds -%{_unitdir}/openstack-nova-compute-setup.service -%{_bindir}/d_nova_setup_cpusets -%{_sysconfdir}/rc.d/init.d/nova-compute -%{_unitdir}/kvm_timer_advance_setup.service -%{_bindir}/nova_setup_timer_advance -%{_bindir}/nova-pci-interrupts -%{_bindir}/resctrl-show -%{_bindir}/collect_host_memory_info.sh - -%files network -%{_bindir}/nova-network -%{_bindir}/nova-dhcpbridge -%{_unitdir}/openstack-nova-network.service - -%files scheduler -%{_bindir}/nova-scheduler -%{_unitdir}/openstack-nova-scheduler.service - -%files api -%{_bindir}/nova-api* -%{_bindir}/nova-metadata-wsgi -%{_unitdir}/openstack-nova-*api.service -%{_datarootdir}/nova/rootwrap/api-metadata.filters - -%files conductor -%{_bindir}/nova-conductor -%{_bindir}/nova-purge-deleted-active -%{_unitdir}/openstack-nova-conductor.service - -%files console -%{_bindir}/nova-console* -%{_bindir}/nova-xvpvncproxy -%{_unitdir}/openstack-nova-console*.service -%{_unitdir}/openstack-nova-xvpvncproxy.service - -%files cells -%{_bindir}/nova-cells -%{_unitdir}/openstack-nova-cells.service - -%files novncproxy -%{_bindir}/nova-novncproxy -%{_unitdir}/openstack-nova-novncproxy.service -%config(noreplace) %{_sysconfdir}/sysconfig/openstack-nova-novncproxy - -%files spicehtml5proxy -%{_bindir}/nova-spicehtml5proxy -%{_unitdir}/openstack-nova-spicehtml5proxy.service - -%files serialproxy -%{_bindir}/nova-serialproxy -%{_unitdir}/openstack-nova-serialproxy.service - -%files placement-api -%config(noreplace) %{_sysconfdir}/httpd/conf.d/00-nova-placement-api.conf -%{_bindir}/nova-placement-api - -%files migration -%{_bindir}/nova-migration-wrapper -%config(noreplace) %{_sysconfdir}/sudoers.d/nova_migration -%dir %attr(0700, nova, nova) %{_sharedstatedir}/nova/.ssh -%attr(0600, nova, nova) %{_sharedstatedir}/nova/.ssh/config -%dir %{_sysconfdir}/nova/migration -%config(noreplace) %attr(0640, root, nova_migration) %{_sysconfdir}/nova/migration/authorized_keys -%config(noreplace) %attr(0600, nova, nova) %{_sysconfdir}/nova/migration/identity -%config(noreplace) %attr(0640, root, root) %{_sysconfdir}/nova/migration/rootwrap.conf -%dir %{_sysconfdir}/nova/migration/rootwrap.d -%config(noreplace) %attr(0640, root, root) %{_sysconfdir}/nova/migration/rootwrap.d/cold_migration.filters - -%files -n python-nova -%doc LICENSE -%{python2_sitelib}/nova -%{python2_sitelib}/nova-*.egg-info -%exclude %{python2_sitelib}/nova/tests -%{_bindir}/nova-restart - -%files -n python-nova-tests -%license LICENSE -%{python2_sitelib}/nova/tests - -%if 0%{?with_doc} -%files doc -%doc LICENSE doc/build/html -%endif - -%package wheels -Summary: %{name} wheels - -%description wheels -Contains python wheels for %{name} - -%files wheels -/wheels/* - -%changelog -* Wed Oct 25 2017 rdo-trunk 1:16.0.2-1 -- Update to 16.0.2 - -* Mon Sep 25 2017 rdo-trunk 1:16.0.1-1 -- Update to 16.0.1 - -* Wed Aug 30 2017 rdo-trunk 1:16.0.0-1 -- Update to 16.0.0 - -* Fri Aug 25 2017 Alfredo Moralejo 1:16.0.0-0.2.0rc2 -- Update to 16.0.0.0rc2 - -* Thu Aug 24 2017 Alfredo Moralejo 1:16.0.0-0.1.0rc1 -- Update to 16.0.0.0rc1 - diff --git a/openstack/python-nova/python-nova/collect_host_memory_info.sh b/openstack/python-nova/python-nova/collect_host_memory_info.sh deleted file mode 100755 index 150ecdaf..00000000 --- a/openstack/python-nova/python-nova/collect_host_memory_info.sh +++ /dev/null @@ -1,45 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2013-2018 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# -# This script is intended to collect host memory information and append -# that info to collect_host_memory_info.log in /var/log/nova - -logfile="/var/log/nova/collect_host_memory_info.log" - -touch ${logfile} -echo "`date '+%F %T'`: Collect of host memory info" >> ${logfile} - -echo "process listing" >> ${logfile} -echo "---------------" >> ${logfile} -ps -eLf >> ${logfile} 2>> ${logfile} - -echo "lsof huge mounts" >> ${logfile} -echo "----------------" >> ${logfile} -lsof -n +c 15 | awk '($3 !~ /^[0-9]+$/ && /\/mnt\/huge/) || NR==1 {print $0;}' >> ${logfile} 2>> ${logfile} - -echo "numa maps" >> ${logfile} -echo "---------" >> ${logfile} -grep huge /proc/*/numa_maps >> ${logfile} 2>> ${logfile} - -tail -vn +1 /proc/meminfo >> ${logfile} 2>> ${logfile} -tail -vn +1 /sys/devices/system/node/node?/meminfo >> ${logfile} 2>> ${logfile} -tail -vn +1 /sys/devices/system/node/node?/hugepages/hugepages-*/*_hugepages >> ${logfile} 2>> ${logfile} - -echo "find /mnt/huge-2048kB|xargs ls -ld" >> ${logfile} -echo "----------------------------------" >> ${logfile} -find /mnt/huge-2048kB|xargs ls -ld >> ${logfile} 2>> ${logfile} - -echo "find /mnt/huge-1048576kB/|xargs ls -ld" >> ${logfile} -echo "--------------------------------------" >> ${logfile} -find /mnt/huge-1048576kB/|xargs ls -ld >> ${logfile} 2>> ${logfile} - -echo "Locked smaps" >> ${logfile} -echo "------------" >> ${logfile} -grep Locked: /proc/*/smaps 2>/dev/null | awk '($2 > 0) {a[$1]+=$2} END {for (i in a) print i,a[i]/1024.0, "MiB";}' >> ${logfile} 2>> ${logfile} - -date '+%F %T' >> ${logfile} 2>> ${logfile} - -exit 0 diff --git a/openstack/python-nova/python-nova/nova.conf b/openstack/python-nova/python-nova/nova.conf deleted file mode 100644 index e9d62fd9..00000000 --- a/openstack/python-nova/python-nova/nova.conf +++ /dev/null @@ -1,62 +0,0 @@ -[DEFAULT] -# firewall_driver = nova.virt.libvirt.firewall.IptablesFirewallDriver -firewall_driver = nova.virt.firewall.NoopFirewallDriver -compute_driver = libvirt.LibvirtDriver -libvirt_type = kvm -libvirt_cpu_mode = none -default_floating_pool = public -fixed_range = -force_dhcp_release = True -dhcpbridge_flagfile = /etc/nova/nova.conf -dhcpbridge_flagfile = /etc/nova/nova.conf -compute_scheduler_driver = nova.scheduler.filter_scheduler.FilterScheduler -rootwrap_config = /etc/nova/rootwrap.conf -api_paste_config = /etc/nova/api-paste.ini -allow_resize_to_same_host = true -auth_strategy = keystone -instances_path = /var/lib/nova/instances -debug = True -my_ip = 127.0.0.1 -glance_host = 127.0.0.1 -lock_path=/var/lock/nova/ -state_path=/var/run/nova/ -libvirt_images_type = default -#notification_driver=nova.openstack.common.notifier.server_group_notifier - -#Network -flat_interface = eth0 -flat_network_bridge = br1 -vlan_interface = eth0 -public_interface = br1 -network_manager = nova.network.manager.FlatDHCPManager -fixed_range= -force_dhcp_release=False -dhcpbridge=/usr/bin/nova-dhcpbridge - -# Neutron -neutron_url=http://127.0.0.1:9696 -neutron_auth_strategy=keystone -neutron_admin_tenant_name=service -neutron_admin_username=neutron -neutron_admin_password=password -neutron_admin_auth_url=http://127.0.0.1:5000/v2.0/ - -# nova-compute configuration for ceilometer -instance_usage_audit=True -instance_usage_audit_period=hour -notify_on_state_change=vm_and_task_state -#notification_driver=ceilometer.compute.nova_notifier - -# nova-compute configuration for ceph -libvirt_images_rbd_pool=cinder-volumes -libvirt_images_rbd_ceph_conf=/etc/ceph/ceph.conf -rbd_user=cinder-volume -#rbd_secret_uuid= - -[spice] -agent_enabled=False -enabled=False -html5proxy_base_url=http://127.0.0.1:6082/spice_auto.html -keymap=en-us -server_listen=127.0.0.1 -server_proxyclient_address=127.0.0.1 diff --git a/openstack/python-nova/python-nova/nova.init b/openstack/python-nova/python-nova/nova.init deleted file mode 100644 index a9a6ef18..00000000 --- a/openstack/python-nova/python-nova/nova.init +++ /dev/null @@ -1,157 +0,0 @@ -#!/bin/sh - -### BEGIN INIT INFO -# Provides: nova-compute -# Required-Start: $remote_fs $syslog -# Required-Stop: $remote_fs $syslog -# Default-Start: 3 5 -# Default-Stop: 0 1 2 6 -# Short-Description: OpenStack Compute (Nova) - compute -# Description: OpenStack Compute (Nova) - compute -### END INIT INFO - -SUFFIX="compute" -DESC="nova-compute" -DAEMON="/usr/bin/nova-$SUFFIX" -PIDFILE="/var/run/nova/nova-$SUFFIX.pid" - -WHOAMI=$(basename $0) -NOVA_STARTUP_TAG=${NOVA_STARTUP_TAG:-"${WHOAMI}"} -function log () -{ - logger -p local1.info -t ${NOVA_STARTUP_TAG} $@ - echo "${NOVA_STARTUP_TAG} $@" -} - -if [ ! -d /var/run/nova ]; then - mkdir -p /var/run/nova - chown nova:root /var/run/nova/ -fi - -if [ ! -d /var/lock/nova ]; then - mkdir -p /var/lock/nova - chown nova:root /var/lock/nova/ -fi - -if ! [ -x ${DAEMON} ] ; then - exit 0 -fi - -# Ensure the program only works with intended target nova-compute, -# and not other nova-* binaries. -if [ "${WHOAMI}" != "${DESC}" ] ; then - log "Call $0 ignored, this service managed by OCF script." - exit 0 -fi - -start () -{ - if [ -e $PIDFILE ]; then - PIDDIR=/proc/$(cat $PIDFILE) - if [ -d ${PIDDIR} ]; then - echo "$DESC already running." - exit 1 - else - echo "Removing stale PID file $PIDFILE" - rm -f $PIDFILE - fi - fi - PIDDIR=`dirname $PIDFILE` - if [ ! -d $PIDDIR ]; then - mkdir -p $PIDDIR - chown nova $PIDDIR - fi - if [ ! -d /var/log/nova ]; then - mkdir /var/log/nova - fi - echo -n "Starting $DESC..." - - start-stop-daemon --start --quiet --background \ - --pidfile ${PIDFILE} --make-pidfile --exec ${DAEMON} - - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi -} - -stop () -{ - echo -n "Stopping $DESC..." - start-stop-daemon --stop --quiet --pidfile $PIDFILE - if [ $? -eq 0 ]; then - echo "done." - else - echo "failed." - fi - rm -f $PIDFILE -} - -status() -{ - # Status function has a standard set of return codes to indicate daemon status - # http://refspecs.linuxbase.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/iniscrptact.html - pid=`cat $PIDFILE 2>/dev/null` - if [ -n "$pid" ]; then - if ps -p $pid &>/dev/null ; then - echo "$DESC is running" - exit 0 - else - echo "$DESC is not running" - exit 1 - fi - fi - echo "$DESC is not running" - exit 3 -} - -reset() -{ - . /etc/nova/openrc - - # Nova comute - simple_delete "nova list --all-tenant" "nova delete" 1 "vm" - - stop - - # This is to make sure postgres is configured and running - if ! pidof postmaster > /dev/null; then - /etc/init.d/postgresql-init - /etc/init.d/postgresql start - sleep 5 - fi - - sudo -u postgres dropdb nova - sudo -u postgres createdb nova - sleep 2 - nova-manage db sync - - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|force-reload|reload) - stop - start - ;; - status) - status - ;; - reset) - reset - ;; - *) - echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}" - exit 1 - ;; -esac - -exit 0 - diff --git a/openstack/python-nova/python-nova/nova_authorized_cmds b/openstack/python-nova/python-nova/nova_authorized_cmds deleted file mode 100644 index fd9a7ddd..00000000 --- a/openstack/python-nova/python-nova/nova_authorized_cmds +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash -# Extract the command being executed. Basically we want everything up to the first blank. -# There are lots of security issues still, but it's better than nothing. -# Maybe later we can check the paths too. -ORIG_CMD=${SSH_ORIGINAL_COMMAND%%[[:blank:]]*} -case $ORIG_CMD in - scp|rsync|rm|touch|mkdir) - # Command is expected - $SSH_ORIGINAL_COMMAND - ;; - *) - # Command is not expected - logger -i -p auth.warning "$0: disallowing passwordless execution of command: ${SSH_ORIGINAL_COMMAND}" - exit 255 - ;; -esac diff --git a/openstack/python-nova/python-nova/nova_setup_cpusets b/openstack/python-nova/python-nova/nova_setup_cpusets deleted file mode 100644 index d8a18529..00000000 --- a/openstack/python-nova/python-nova/nova_setup_cpusets +++ /dev/null @@ -1,185 +0,0 @@ -#!/bin/bash -# -# Copyright (c) 2013-2018 Wind River Systems, Inc. -# -# SPDX-License-Identifier: Apache-2.0 -# - - -# This script is intended to set up the cpusets for use by nova-compute. -# It should only run on worker nodes, and it must be run after the -# /etc/nova/nova.conf file has been modified by packstack since it -# extracts the "vcpu_pin_set" value from that file. -# -# The intent of the script is to create a top-level "floating" cpuset which -# has access to all the nova CPUs and all NUMA nodes. For each NUMA node X -# on the host a child cpuset called "nodeX" will be created which has access -# to the CPUs/memory from that specific NUMA node. - -# Platform paths and flags -. /usr/bin/tsconfig - -# This is a bit hackish, but we already have the python helper functions -# available for nova, so we may as well use them. Also python has -# built-in support for set intersections. -# -# Arg 1 is the full range of CPUs assigned to nova -# Arg 2 is the range of CPUs on this numa node -# -# We want to print the intersection of the two ranges in range -# notation. -# -# Note: the py_script can't be indented otherwise python complains. -get_float_node_cpus() -{ -py_script=" -from nova import utils -float_cpurange = \"${1}\" -node_cpurange = \"${2}\" -float_cpus = utils.range_to_list(float_cpurange) -node_cpus = utils.range_to_list(node_cpurange) -float_node_cpus = list(set(float_cpus) & set(node_cpus)) -float_node_cpus.sort() -print utils.list_to_range(float_node_cpus) -" - python -c "$py_script" -} - -log() -{ - logger -t nova_setup_cpusets -p daemon.info "$@" -} - -errlog() -{ - logger -t nova_setup_cpusets -p daemon.err "$@" -} - - -start() -{ - set -euo pipefail - - # Do not continue if the host has not been configured. We can't do - # anything until the nova.conf file has been updated. - if [ ! -f ${INITIAL_WORKER_CONFIG_COMPLETE} ] - then - log "Initial worker configuration is not complete, nothing to do" - exit 0 - fi - - # Configure cpuset mount - CPUSET=/sys/fs/cgroup/cpuset - CPUS='cpuset.cpus' - MEMS='cpuset.mems' - mkdir -p ${CPUSET} - if [ $? -ne 0 ]; then - errlog "unable to create ${CPUSET}" - exit 1 - fi - - if ! mountpoint -q ${CPUSET} - then - mount -t cpuset none ${CPUSET} - if [ $? -ne 0 ]; then - errlog "unable to mount ${CPUSET}" - exit 1 - fi - - fi - - # Make the global "floating" cpuset - mkdir -p ${CPUSET}/floating - if [ $? -ne 0 ]; then - errlog "unable to create 'floating' cpuset" - exit 1 - fi - - # Assign the full set of NUMA nodes to the global floating nodeset - MEMNODES=$(cat ${CPUSET}/${MEMS}) - log "Assign nodes ${MEMNODES} to floating/${MEMS}" - cp ${CPUSET}/${MEMS} ${CPUSET}/floating/${MEMS} - if [ $? -ne 0 ]; then - errlog "unable to write to floating/${MEMS}" - fi - - # Assign the full set of nova CPUs to the global floating cpuset - VCPU_PIN_STR=$(grep vcpu_pin_set /etc/nova/nova.conf) - VCPU_PIN_STR=${VCPU_PIN_STR//\"/} - FLOAT_CPUS=${VCPU_PIN_STR##*=} - - log "Assign cpus ${FLOAT_CPUS} to floating/${CPUS}" - /bin/echo $FLOAT_CPUS > ${CPUSET}/floating/${CPUS} - if [ $? -ne 0 ]; then - errlog "unable to write to floating/${CPUS}" - fi - - # Set ownership/permissions on the cpus/tasks files - chown nova.nova ${CPUSET}/floating/${CPUS} ${CPUSET}/floating/tasks - chmod 644 ${CPUSET}/floating/${CPUS} ${CPUSET}/floating/tasks - - # Now set up the per-NUMA-node cpusets - cd /sys/devices/system/node/ - NODES=$(ls -d node*) - cd ${CPUSET}/floating - for NODE in $NODES - do - NODENUM=${NODE#node} - mkdir -p $NODE - if [ $? -ne 0 ]; then - errlog "unable to create ${NODE} cpuset" - continue - fi - - # Assign the full set of NUMA nodes to the cpuset so that VM memory - # may span numa nodes. Default linux memory allocation policy is to - # use the same node(s) where the task is affined if that is possible. - log "Assign nodes ${MEMNODES} to floating/${NODE}/${MEMS}" - cp ${CPUSET}/${MEMS} ${NODE}/${MEMS} - if [ $? -ne 0 ]; then - errlog "unable to write to ${NODE}/${MEMS}" - continue - fi - - # Now assign the subset of FLOAT_CPUS that are part of this - # NUMA node to this cpuset - NODE_CPUS=$(cat /sys/devices/system/node/${NODE}/cpulist) - FLOAT_NODE_CPUS=$(get_float_node_cpus $FLOAT_CPUS $NODE_CPUS) - if [ $? -ne 0 ]; then - errlog "unable to calculate FLOAT_NODE_CPUS for ${NODE}" - continue - fi - - log "Assign cpus ${FLOAT_NODE_CPUS} to floating/${NODE}/${CPUS}" - /bin/echo $FLOAT_NODE_CPUS > $NODE/${CPUS} - if [ $? -ne 0 ]; then - errlog "unable to write to ${NODE}/${CPUS}" - continue - fi - - # Set ownership/permissions on the cpus/tasks files - chown nova.nova ${NODE}/${CPUS} ${NODE}/tasks - chmod 644 ${NODE}/${CPUS} ${NODE}/tasks - done -} - -stop () -{ - return -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - *) - echo "Usage: $0 {start|stop}" - exit 1 - ;; -esac - -exit 0 - diff --git a/openstack/python-nova/python-nova/openstack-nova-compute-setup.service b/openstack/python-nova/python-nova/openstack-nova-compute-setup.service deleted file mode 100644 index e2818d55..00000000 --- a/openstack/python-nova/python-nova/openstack-nova-compute-setup.service +++ /dev/null @@ -1,14 +0,0 @@ -[Unit] -Description=OpenStack Nova Compute Server Pre-Startup -After=syslog.target worker-config-gate.service -Before=nova-compute.service goenabled-worker.service - -[Service] -Type=oneshot -RemainAfterExit=yes -User=root -ExecStart=/usr/bin/d_nova_setup_cpusets start - -[Install] -WantedBy=multi-user.target - diff --git a/tox.ini b/tox.ini index 45bbfbd1..e147a498 100644 --- a/tox.ini +++ b/tox.ini @@ -14,8 +14,6 @@ deps = -r{toxinidir}/test-requirements.txt [testenv:linters] basepython = python3 whitelist_externals = bash -#bashate ignore -#E006 Line too long commands = bash -c "find {toxinidir} \ -not \( -type d -name .?\* -prune \) \ @@ -23,7 +21,7 @@ commands = -not -name \*~ \ -not -name \*.md \ -name \*.sh \ - -print0 | xargs -0 bashate -v -i E006" + -print0 | xargs -r -n 1 -0 bashate -v" bash -c "find {toxinidir} \ -path '{toxinidir}/.tox' -a -prune \ -o -name '*.yaml' \