Skip to content

Instantly share code, notes, and snippets.

@yosshy
Last active August 29, 2015 14:06
Show Gist options
  • Save yosshy/9f9b22dae8b12e17d0f0 to your computer and use it in GitHub Desktop.
Save yosshy/9f9b22dae8b12e17d0f0 to your computer and use it in GitHub Desktop.
Calltrace for Nova Juno-3
#!/bin/bash
LINE=""
DIR=`dirname $0`
/bin/grep -Ev '^#' $DIR/nova_list > /tmp/list2
while read i ; do
if [ -n "$LINE" ]; then
LINE=$LINE,$i:nova.ct.ct
else
LINE=$i:nova.ct.ct
fi
done < /tmp/list2
sed -e "s/%%%%/$LINE/" $DIR/nova.conf > /etc/nova/nova.conf
[DEFAULT]
vif_plugging_timeout = 300
vif_plugging_is_fatal = True
linuxnet_interface_driver =
security_group_api = neutron
network_api_class = nova.network.neutronv2.api.API
firewall_driver = nova.virt.firewall.NoopFirewallDriver
compute_driver = libvirt.LibvirtDriver
default_ephemeral_format = ext4
rabbit_password = stackqueue
rabbit_hosts = 192.168.33.103
rpc_backend = nova.openstack.common.rpc.impl_kombu
ec2_dmz_host = 192.168.33.103
vncserver_proxyclient_address = 127.0.0.1
vncserver_listen = 127.0.0.1
vnc_enabled = true
xvpvncproxy_base_url = http://192.168.33.103:6081/console
novncproxy_base_url = http://192.168.33.103:6080/vnc_auto.html
logging_exception_prefix = %(color)s%(asctime)s.%(msecs)03d TRACE %(name)s %(instance)s
logging_debug_format_suffix = from (pid=%(process)d) %(funcName)s %(pathname)s:%(lineno)d
logging_default_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [-%(color)s] %(instance)s%(color)s%(message)s
logging_context_format_string = %(asctime)s.%(msecs)03d %(color)s%(levelname)s %(name)s [%(request_id)s %(user_name)s %(project_name)s%(color)s] %(instance)s%(color)s%(message)s
force_config_drive = always
instances_path = /opt/stack/data/nova/instances
lock_path = /opt/stack/data/nova
state_path = /opt/stack/data/nova
enabled_apis = ec2,osapi_compute,metadata
instance_name_template = instance-%08x
sql_connection = mysql://root:[email protected]/nova?charset=utf8
my_ip = 192.168.33.103
s3_port = 3333
s3_host = 192.168.33.103
default_floating_pool = public
fixed_range =
force_dhcp_release = True
dhcpbridge_flagfile = /etc/nova/nova.conf
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
debug = True
verbose = True
[osapi_v3]
enabled = True
[keystone_authtoken]
signing_dir = /var/cache/nova
admin_password = nomoresecrete
admin_user = nova
cafile =
admin_tenant_name = service
identity_uri = http://192.168.33.103:35357
[spice]
enabled = false
html5proxy_base_url = http://192.168.33.103:6082/spice_auto.html
[glance]
api_servers = 192.168.33.103:9292
[libvirt]
vif_driver = nova.virt.libvirt.vif.LibvirtGenericVIFDriver
inject_partition = -2
use_usb_tablet = False
cpu_mode = none
virt_type = qemu
[neutron]
service_metadata_proxy = True
url = http://192.168.33.103:9696
region_name = RegionOne
admin_tenant_name = service
auth_strategy = keystone
admin_auth_url = http://192.168.33.103:35357/v2.0
admin_password = nomoresecrete
admin_username = neutron
[keymgr]
fixed_key = dc5d89a9f99ae28f7fa4a612a434b56890541d306e91edff125091ecaa52888d
[monkey_patch]
enabled = True
target_modules = %%%%
exclude_methods = init_host,object_class_action
commit d3230f25d525bfe2ce98d2ba4d7899e3b6af4d8c
Author: Akira Yoshiyama <[email protected]>
Date: Mon Sep 8 04:37:10 2014 +0000
Added calltrace monkey patch.
diff --git a/nova/cmd/all.py b/nova/cmd/all.py
index 7d7c9d4..7f8d855 100644
--- a/nova/cmd/all.py
+++ b/nova/cmd/all.py
@@ -33,6 +33,7 @@ from nova.i18n import _
from nova import objects
from nova.objectstore import s3server
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova import service
from nova import utils
from nova.vnc import xvp_proxy
@@ -49,7 +50,7 @@ def main():
config.parse_args(sys.argv)
logging.setup("nova")
LOG = logging.getLogger('nova.all')
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
launcher = service.process_launcher()
diff --git a/nova/cmd/api.py b/nova/cmd/api.py
index 8b94bea..31102e2 100644
--- a/nova/cmd/api.py
+++ b/nova/cmd/api.py
@@ -27,6 +27,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -40,7 +41,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/api_ec2.py b/nova/cmd/api_ec2.py
index 65b4de9..c393999 100644
--- a/nova/cmd/api_ec2.py
+++ b/nova/cmd/api_ec2.py
@@ -23,6 +23,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -36,7 +37,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/api_metadata.py b/nova/cmd/api_metadata.py
index bcbd8ac..2396fd1 100644
--- a/nova/cmd/api_metadata.py
+++ b/nova/cmd/api_metadata.py
@@ -25,6 +25,7 @@ from nova import config
from nova import objects
from nova.objects import base as objects_base
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -39,7 +40,7 @@ CONF.import_opt('use_local', 'nova.conductor.api', group='conductor')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/api_os_compute.py b/nova/cmd/api_os_compute.py
index 89aec67..94e2f4d 100644
--- a/nova/cmd/api_os_compute.py
+++ b/nova/cmd/api_os_compute.py
@@ -23,6 +23,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -36,7 +37,7 @@ CONF.import_opt('enabled_ssl_apis', 'nova.service')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/cells.py b/nova/cmd/cells.py
index 5cf85dc..9145622 100644
--- a/nova/cmd/cells.py
+++ b/nova/cmd/cells.py
@@ -22,6 +22,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -35,7 +36,7 @@ CONF.import_opt('manager', 'nova.cells.opts', group='cells')
def main():
config.parse_args(sys.argv)
logging.setup('nova')
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/cert.py b/nova/cmd/cert.py
index b260322..ee91b28 100644
--- a/nova/cmd/cert.py
+++ b/nova/cmd/cert.py
@@ -20,6 +20,7 @@ from oslo.config import cfg
from nova import config
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -32,7 +33,7 @@ CONF.import_opt('cert_topic', 'nova.cert.rpcapi')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/compute.py b/nova/cmd/compute.py
index bad4cf7..1f8ba77 100644
--- a/nova/cmd/compute.py
+++ b/nova/cmd/compute.py
@@ -29,6 +29,7 @@ from nova.i18n import _
from nova import objects
from nova.objects import base as objects_base
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -57,7 +58,7 @@ def block_db_access():
def main():
config.parse_args(sys.argv)
logging.setup('nova')
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/conductor.py b/nova/cmd/conductor.py
index 776e368..cbf1ccd 100644
--- a/nova/cmd/conductor.py
+++ b/nova/cmd/conductor.py
@@ -21,6 +21,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common import processutils
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
@@ -34,7 +35,7 @@ CONF.import_opt('topic', 'nova.conductor.api', group='conductor')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/network.py b/nova/cmd/network.py
index 490097a..b180e2a 100644
--- a/nova/cmd/network.py
+++ b/nova/cmd/network.py
@@ -29,6 +29,7 @@ from nova.i18n import _
from nova import objects
from nova.objects import base as objects_base
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -57,7 +58,7 @@ def block_db_access():
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/objectstore.py b/nova/cmd/objectstore.py
index 2edb289..690d633 100644
--- a/nova/cmd/objectstore.py
+++ b/nova/cmd/objectstore.py
@@ -22,6 +22,7 @@ import sys
from nova import config
from nova.objectstore import s3server
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -31,7 +32,7 @@ from nova import version
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/cmd/scheduler.py b/nova/cmd/scheduler.py
index ad2f9da..34eda79 100644
--- a/nova/cmd/scheduler.py
+++ b/nova/cmd/scheduler.py
@@ -23,6 +23,7 @@ from oslo.config import cfg
from nova import config
from nova import objects
from nova.openstack.common import log as logging
+from nova.openstack.common import monkeypatch_utils as mp
from nova.openstack.common.report import guru_meditation_report as gmr
from nova import service
from nova import utils
@@ -35,7 +36,7 @@ CONF.import_opt('scheduler_topic', 'nova.scheduler.rpcapi')
def main():
config.parse_args(sys.argv)
logging.setup("nova")
- utils.monkey_patch()
+ mp.monkey_patch()
objects.register_all()
gmr.TextGuruMeditation.setup_autorun(version)
diff --git a/nova/ct.py b/nova/ct.py
new file mode 100644
index 0000000..939255b
--- /dev/null
+++ b/nova/ct.py
@@ -0,0 +1,48 @@
+import fcntl
+import inspect
+import os.path
+import eventlet.corolocal
+
+from oslo.config import cfg
+
+
+LOGFILE = "/tmp/calltrace.log"
+binary = os.path.basename(inspect.stack()[-1][1])
+
+PERIODIC_TASKS = [
+ "periodic_tasks",
+ "_report_state",
+ "service_update",
+]
+
+tls = eventlet.corolocal.local()
+
+
+def ct(name, fn):
+
+ def wrapped_func(*args, **kwarg):
+ tid = eventlet.corolocal.get_ident()
+ if hasattr(tls, "periodic_task"):
+ return fn(*args, **kwarg)
+
+ func_name = name.rsplit('.')[-1]
+ if func_name in PERIODIC_TASKS:
+ tls.periodic_task = 1
+ return fn(*args, **kwarg)
+
+ if not hasattr(tls, "count"):
+ tls.count = 0
+ try:
+ with open(LOGFILE, "a") as f:
+ f.write("%s-%s %sentering %s\n" % (
+ binary, tid, "|" * tls.count, name))
+ tls.count += 1
+ return fn(*args, **kwarg)
+
+ finally:
+ tls.count -= 1
+ with open(LOGFILE, "a") as f:
+ f.write("%s-%s %sexiting %s\n" % (
+ binary, tid, "|" * tls.count, name))
+
+ return wrapped_func
diff --git a/nova/openstack/common/monkeypatch_utils.py b/nova/openstack/common/monkeypatch_utils.py
new file mode 100644
index 0000000..103d252
--- /dev/null
+++ b/nova/openstack/common/monkeypatch_utils.py
@@ -0,0 +1,94 @@
+# Copyright 2010 United States Government as represented by the
+# Administrator of the National Aeronautics and Space Administration.
+# Copyright 2011 Justin Santa Barbara
+# All Rights Reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may
+# not use this file except in compliance with the License. You may obtain
+# a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations
+# under the License.
+
+"""Monkey Patching Helper."""
+
+import inspect
+import pyclbr
+import sys
+
+import eventlet
+from oslo.config import cfg
+from nova.openstack.common import importutils
+
+monkey_patch_opts = [
+ cfg.BoolOpt('enabled',
+ default=False,
+ help='Whether to log monkey patching'),
+ cfg.ListOpt('target_modules',
+ default=[],
+ help='List of modules/decorators to monkey patch'),
+ cfg.ListOpt('exclude_methods',
+ default=[],
+ help='List of methods not to monkey patch'),
+]
+
+CONF = cfg.CONF
+CONF.register_opts(monkey_patch_opts, 'monkey_patch')
+
+
+def monkey_patch():
+ """If the CONF.monkey_patch set as True,
+ this function patches a decorator
+ for all functions in specified modules.
+ You can set decorators for each modules
+ using CONF.monkey_patch_modules.
+ The format is "Module path:Decorator function".
+ Example:
+ 'nova.api.ec2.cloud:nova.notifications.notify_decorator'
+
+ Parameters of the decorator is as follows.
+ (See nova.notifications.notify_decorator)
+
+ name - name of the function
+ function - object of the function
+ """
+ # If CONF.monkey_patch is not True, this function do nothing.
+ if not CONF.monkey_patch.enabled:
+ return
+ # Get list of modules and decorators
+ for module_and_decorator in CONF.monkey_patch.target_modules:
+ module, decorator_name = module_and_decorator.split(':')
+ # import decorator function
+ decorator = importutils.import_class(decorator_name)
+ __import__(module)
+ # Retrieve module information using pyclbr
+ module_data = pyclbr.readmodule_ex(module)
+ for key in module_data.keys():
+ # set the decorator for the class methods
+ if isinstance(module_data[key], pyclbr.Class):
+ clz = importutils.import_class("%s.%s" % (module, key))
+ for method, func in inspect.getmembers(clz, inspect.ismethod):
+ # check exclude_methods
+ if method in CONF.monkey_patch.exclude_methods:
+ continue
+ # avoid applying patch to methods with @classmethod
+ m = getattr(clz, method)
+ if m.__self__ is clz:
+ continue
+ # apply it
+ setattr(clz, method,
+ decorator("%s.%s.%s" % (module, key, method), func))
+ # set the decorator for the function
+ if isinstance(module_data[key], pyclbr.Function):
+ # check exclude_methods
+ if key in CONF.monkey_patch.exclude_methods:
+ continue
+ # apply it
+ func = importutils.import_class("%s.%s" % (module, key))
+ setattr(sys.modules[module], key,
+ decorator("%s.%s" % (module, key), func))
nova.keymgr.key_mgr
nova.keymgr.conf_key_mgr
nova.keymgr.mock_key_mgr
nova.keymgr.single_key_mgr
nova.keymgr.key
nova.keymgr.not_implemented_key_mgr
#nova.rpc
#nova.context
#nova.config
#nova.service
nova.ipv6.rfc2462
nova.ipv6.account_identifier
nova.ipv6.api
#nova.manager
#nova.loadables
#nova.safe_utils
nova.quota
nova.cert.manager
nova.cert.rpcapi
nova.availability_zones
nova.notifications
nova.volume.encryptors.nop
nova.volume.encryptors.base
nova.volume.encryptors.luks
nova.volume.encryptors.cryptsetup
nova.volume.cinder
nova.console.serial
nova.console.manager
nova.console.rpcapi
nova.console.type
nova.console.websocketproxy
nova.console.xvp
nova.console.api
nova.console.vmrc
nova.console.vmrc_manager
nova.weights
nova.netconf
#nova.openstack.common.eventlet_backdoor
#nova.openstack.common.imageutils
#nova.openstack.common.gettextutils
#nova.openstack.common.context
#nova.openstack.common.jsonutils
#nova.openstack.common.service
#nova.openstack.common.report.models.with_default_views
#nova.openstack.common.report.models.conf
#nova.openstack.common.report.models.version
#nova.openstack.common.report.models.base
#nova.openstack.common.report.models.threading
#nova.openstack.common.report.generators.conf
#nova.openstack.common.report.generators.version
#nova.openstack.common.report.generators.threading
#nova.openstack.common.report.views.xml.generic
#nova.openstack.common.report.views.text.header
#nova.openstack.common.report.views.text.generic
#nova.openstack.common.report.views.text.threading
#nova.openstack.common.report.views.jinja_view
#nova.openstack.common.report.views.json.generic
#nova.openstack.common.report.report
#nova.openstack.common.report.utils
#nova.openstack.common.report.guru_meditation_report
#nova.openstack.common.local
#nova.openstack.common.periodic_task
#nova.openstack.common.versionutils
#nova.openstack.common.log
#nova.openstack.common.systemd
#nova.openstack.common.network_utils
#nova.openstack.common.timeutils
#nova.openstack.common.processutils
#nova.openstack.common.fileutils
#nova.openstack.common.importutils
#nova.openstack.common.threadgroup
#nova.openstack.common.policy
#nova.openstack.common.db.sqlalchemy.migration
#nova.openstack.common.db.sqlalchemy.models
#nova.openstack.common.db.sqlalchemy.test_base
#nova.openstack.common.db.sqlalchemy.session
#nova.openstack.common.db.sqlalchemy.utils
#nova.openstack.common.db.sqlalchemy.provision
#nova.openstack.common.db.sqlalchemy.test_migrations
#nova.openstack.common.db.exception
#nova.openstack.common.db.options
#nova.openstack.common.db.api
#nova.openstack.common.memorycache
#nova.openstack.common.units
#nova.openstack.common.sslutils
#nova.openstack.common.cliutils
#nova.openstack.common.xmlutils
#nova.openstack.common.excutils
#nova.openstack.common.strutils
#nova.openstack.common.loopingcall
#nova.openstack.common.middleware.request_id
#nova.openstack.common.middleware.base
#nova.openstack.common.uuidutils
#nova.openstack.common.config.generator
#nova.openstack.common.lockutils
#nova.openstack.common.fixture.config
#nova.openstack.common.fixture.moxstubout
#nova.openstack.common.fixture.logging
#nova.openstack.common.fixture.mockpatch
#nova.openstack.common.fixture.lockutils
nova.vnc.xvp_proxy
#nova.baserpc
#nova.cmd.baremetal_deploy_helper
#nova.cmd.scheduler
#nova.cmd.cells
#nova.cmd.novnc
#nova.cmd.dhcpbridge
#nova.cmd.consoleauth
#nova.cmd.manage
#nova.cmd.cert
#nova.cmd.console
#nova.cmd.network
#nova.cmd.spicehtml5proxy
#nova.cmd.all
#nova.cmd.api_ec2
#nova.cmd.baremetal_manage
#nova.cmd.conductor
#nova.cmd.xvpvncproxy
#nova.cmd.objectstore
#nova.cmd.novncproxy
#nova.cmd.idmapshift
#nova.cmd.api
#nova.cmd.api_os_compute
#nova.cmd.api_metadata
#nova.cmd.compute
#nova.cmd.serialproxy
#nova.policy
#nova.db.migration
#nova.db.sqlalchemy.types
#nova.db.sqlalchemy.migration
#nova.db.sqlalchemy.models
#nova.db.sqlalchemy.migrate_repo.versions.249_remove_duplicate_index
#nova.db.sqlalchemy.migrate_repo.versions.232_drop_dump_tables
#nova.db.sqlalchemy.migrate_repo.versions.248_add_expire_reservations_index
#nova.db.sqlalchemy.migrate_repo.versions.235_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.237_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.240_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.236_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.252_add_instance_extra_table
#nova.db.sqlalchemy.migrate_repo.versions.243_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.229_add_extra_resources_in_compute_nodes
#nova.db.sqlalchemy.migrate_repo.versions.241_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.227_fix_project_user_quotas_resource_length
#nova.db.sqlalchemy.migrate_repo.versions.228_add_metrics_in_compute_nodes
#nova.db.sqlalchemy.migrate_repo.versions.224_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.250_remove_instance_groups_metadata
#nova.db.sqlalchemy.migrate_repo.versions.238_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.242_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.247_nullable_mismatch
#nova.db.sqlalchemy.migrate_repo.versions.245_add_mtu_and_dhcp_server
#nova.db.sqlalchemy.migrate_repo.versions.239_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.246_add_compute_node_id_fk
#nova.db.sqlalchemy.migrate_repo.versions.233_add_stats_in_compute_nodes
#nova.db.sqlalchemy.migrate_repo.versions.216_havana
#nova.db.sqlalchemy.migrate_repo.versions.225_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.244_increase_user_id_length_volume_usage_cache
#nova.db.sqlalchemy.migrate_repo.versions.251_add_numa_topology_to_comput_nodes
#nova.db.sqlalchemy.migrate_repo.versions.222_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.220_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.226_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.218_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.219_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.231_add_ephemeral_key_uuid
#nova.db.sqlalchemy.migrate_repo.versions.230_add_details_column_to_instance_actions_events
#nova.db.sqlalchemy.migrate_repo.versions.221_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.234_add_expire_reservations_index
#nova.db.sqlalchemy.migrate_repo.versions.223_placeholder
#nova.db.sqlalchemy.migrate_repo.versions.217_placeholder
#nova.db.sqlalchemy.migrate_repo.manage
#nova.db.sqlalchemy.utils
#nova.db.sqlalchemy.api
#nova.db.base
#nova.db.api
#nova.version
nova.block_device
#nova.hooks
nova.compute.monitors.virt.cpu_monitor
nova.compute.monitors.cpu_monitor
nova.compute.task_states
nova.compute.manager
nova.compute.rpcapi
nova.compute.resource_tracker
nova.compute.resources.base
nova.compute.resources.vcpu
nova.compute.stats
nova.compute.utils
nova.compute.vm_states
nova.compute.arch
nova.compute.vm_mode
nova.compute.claims
nova.compute.api
nova.compute.flavors
nova.compute.cells_api
nova.compute.instance_actions
nova.compute.power_state
nova.cloudpipe.pipelib
nova.cells.filters.target_cell
nova.cells.filters.image_properties
nova.cells.scheduler
nova.cells.manager
nova.cells.opts
nova.cells.rpcapi
nova.cells.state
nova.cells.messaging
nova.cells.utils
nova.cells.driver
nova.cells.weights.weight_offset
nova.cells.weights.mute_child
nova.cells.weights.ram_by_instance_type
nova.cells.rpc_driver
nova.virt.netutils
nova.virt.vmwareapi.read_write_util
nova.virt.vmwareapi.error_util
nova.virt.vmwareapi.io_util
nova.virt.vmwareapi.vmware_images
nova.virt.vmwareapi.ds_util
nova.virt.vmwareapi.host
nova.virt.vmwareapi.vim_util
nova.virt.vmwareapi.constants
nova.virt.vmwareapi.driver
nova.virt.vmwareapi.network_util
nova.virt.vmwareapi.imagecache
nova.virt.vmwareapi.volumeops
nova.virt.vmwareapi.vif
nova.virt.vmwareapi.vmops
nova.virt.vmwareapi.vm_util
nova.virt.disk.mount.nbd
nova.virt.disk.mount.loop
nova.virt.disk.mount.api
nova.virt.disk.api
nova.virt.disk.vfs.guestfs
nova.virt.disk.vfs.api
nova.virt.disk.vfs.localfs
nova.virt.storage_users
nova.virt.event
nova.virt.block_device
nova.virt.firewall
nova.virt.volumeutils
nova.virt.driver
nova.virt.diagnostics
nova.virt.hardware
nova.virt.configdrive
nova.virt.imagecache
nova.virt.libvirt.config
nova.virt.libvirt.dmcrypt
nova.virt.libvirt.imagebackend
nova.virt.libvirt.designer
nova.virt.libvirt.blockinfo
nova.virt.libvirt.rbd_utils
nova.virt.libvirt.firewall
nova.virt.libvirt.utils
nova.virt.libvirt.driver
nova.virt.libvirt.lvm
nova.virt.libvirt.imagecache
nova.virt.libvirt.volume
nova.virt.libvirt.vif
nova.virt.baremetal.virtual_power_driver
nova.virt.baremetal.pxe
nova.virt.baremetal.tilera
nova.virt.baremetal.baremetal_states
nova.virt.baremetal.db.migration
nova.virt.baremetal.db.sqlalchemy.migration
nova.virt.baremetal.db.sqlalchemy.models
nova.virt.baremetal.db.sqlalchemy.session
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.006_move_prov_mac_address
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.004_add_instance_name_to_bm_nodes
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.003_add_uuid_to_bm_nodes
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.002_drop_bm_deployments
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.005_drop_unused_columns_from_nodes
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.008_remove_bm_pxe_ips_table
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.007_drop_prov_mac_address
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.001_init
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.010_add_preserve_ephemeral
nova.virt.baremetal.db.sqlalchemy.migrate_repo.versions.009_add_ephemeral_mb_to_bm_nodes
nova.virt.baremetal.db.sqlalchemy.api
nova.virt.baremetal.db.api
nova.virt.baremetal.common
nova.virt.baremetal.ipmi
nova.virt.baremetal.utils
nova.virt.baremetal.tilera_pdu
nova.virt.baremetal.driver
nova.virt.baremetal.virtual_power_driver_settings
nova.virt.baremetal.volume_driver
nova.virt.baremetal.base
nova.virt.baremetal.iboot_pdu
nova.virt.baremetal.vif_driver
nova.virt.virtapi
nova.virt.hyperv.networkutilsv2
nova.virt.hyperv.migrationops
nova.virt.hyperv.volumeutilsv2
nova.virt.hyperv.hostutils
nova.virt.hyperv.vmutilsv2
nova.virt.hyperv.ioutils
nova.virt.hyperv.vmutils
nova.virt.hyperv.rdpconsoleutils
nova.virt.hyperv.rdpconsoleops
nova.virt.hyperv.livemigrationops
nova.virt.hyperv.pathutils
nova.virt.hyperv.rdpconsoleutilsv2
nova.virt.hyperv.volumeutils
nova.virt.hyperv.networkutils
nova.virt.hyperv.vhdutils
nova.virt.hyperv.constants
nova.virt.hyperv.driver
nova.virt.hyperv.basevolumeutils
nova.virt.hyperv.livemigrationutils
nova.virt.hyperv.imagecache
nova.virt.hyperv.hostops
nova.virt.hyperv.volumeops
nova.virt.hyperv.vif
nova.virt.hyperv.vmops
nova.virt.hyperv.vhdutilsv2
nova.virt.hyperv.utilsfactory
nova.virt.hyperv.snapshotops
nova.virt.xenapi.network_utils
nova.virt.xenapi.vm_utils
nova.virt.xenapi.agent
nova.virt.xenapi.host
nova.virt.xenapi.firewall
nova.virt.xenapi.volume_utils
nova.virt.xenapi.pool_states
nova.virt.xenapi.driver
nova.virt.xenapi.image.bittorrent
nova.virt.xenapi.image.vdi_through_dev
nova.virt.xenapi.image.utils
nova.virt.xenapi.image.glance
nova.virt.xenapi.volumeops
nova.virt.xenapi.client.objects
nova.virt.xenapi.client.session
nova.virt.xenapi.vif
nova.virt.xenapi.vmops
nova.virt.xenapi.pool
nova.virt.watchdog_actions
nova.virt.images
#nova.exception
#nova.utils
#nova.crypto
#nova.api.manager
nova.api.metadata.vendordata_json
nova.api.metadata.handler
nova.api.metadata.base
nova.api.metadata.password
#nova.api.openstack.urlmap
#nova.api.openstack.auth
#nova.api.openstack.common
nova.api.openstack.compute.contrib.instance_usage_audit_log
nova.api.openstack.compute.contrib.volumes
nova.api.openstack.compute.contrib.flavor_rxtx
nova.api.openstack.compute.contrib.flavor_swap
#nova.api.openstack.compute.contrib.scheduler_hints
nova.api.openstack.compute.contrib.flavorextradata
nova.api.openstack.compute.contrib.attach_interfaces
nova.api.openstack.compute.contrib.extended_virtual_interfaces_net
nova.api.openstack.compute.contrib.floating_ips_bulk
nova.api.openstack.compute.contrib.image_size
nova.api.openstack.compute.contrib.extended_server_attributes
nova.api.openstack.compute.contrib.cells
nova.api.openstack.compute.contrib.cell_capacities
nova.api.openstack.compute.contrib.quota_classes
nova.api.openstack.compute.contrib.extended_ips_mac
nova.api.openstack.compute.contrib.extended_quotas
nova.api.openstack.compute.contrib.config_drive
nova.api.openstack.compute.contrib.server_list_multi_status
#nova.api.openstack.compute.contrib.disk_config
nova.api.openstack.compute.contrib.security_groups
nova.api.openstack.compute.contrib.fping
nova.api.openstack.compute.contrib.multinic
nova.api.openstack.compute.contrib.server_diagnostics
nova.api.openstack.compute.contrib.shelve
nova.api.openstack.compute.contrib.os_networks
nova.api.openstack.compute.contrib.security_group_default_rules
nova.api.openstack.compute.contrib.extended_ips
nova.api.openstack.compute.contrib.floating_ip_pools
nova.api.openstack.compute.contrib.server_usage
nova.api.openstack.compute.contrib.floating_ips
nova.api.openstack.compute.contrib.extended_volumes
nova.api.openstack.compute.contrib.hide_server_addresses
nova.api.openstack.compute.contrib.baremetal_nodes
nova.api.openstack.compute.contrib.consoles
nova.api.openstack.compute.contrib.console_auth_tokens
nova.api.openstack.compute.contrib.flavorextraspecs
nova.api.openstack.compute.contrib.extended_status
nova.api.openstack.compute.contrib.flavormanage
nova.api.openstack.compute.contrib.keypairs
nova.api.openstack.compute.contrib.cloudpipe
nova.api.openstack.compute.contrib.evacuate
nova.api.openstack.compute.contrib.simple_tenant_usage
nova.api.openstack.compute.contrib.user_data
nova.api.openstack.compute.contrib.extended_rescue_with_image
nova.api.openstack.compute.contrib.baremetal_ext_status
nova.api.openstack.compute.contrib.flavor_disabled
nova.api.openstack.compute.contrib.migrations
nova.api.openstack.compute.contrib.hosts
nova.api.openstack.compute.contrib.networks_associate
nova.api.openstack.compute.contrib.extended_floating_ips
nova.api.openstack.compute.contrib.quotas
nova.api.openstack.compute.contrib.volume_attachment_update
nova.api.openstack.compute.contrib.agents
nova.api.openstack.compute.contrib.assisted_volume_snapshots
nova.api.openstack.compute.contrib.preserve_ephemeral_rebuild
nova.api.openstack.compute.contrib.extended_availability_zone
nova.api.openstack.compute.contrib.extended_networks
nova.api.openstack.compute.contrib.cloudpipe_update
nova.api.openstack.compute.contrib.aggregates
nova.api.openstack.compute.contrib.fixed_ips
nova.api.openstack.compute.contrib.used_limits_for_admin
nova.api.openstack.compute.contrib.server_start_stop
nova.api.openstack.compute.contrib.server_groups
#nova.api.openstack.compute.contrib.server_external_events
nova.api.openstack.compute.contrib.os_tenant_networks
nova.api.openstack.compute.contrib.extended_evacuate_find_host
nova.api.openstack.compute.contrib.extended_services_delete
nova.api.openstack.compute.contrib.flavor_access
nova.api.openstack.compute.contrib.extended_hypervisors
nova.api.openstack.compute.contrib.availability_zone
nova.api.openstack.compute.contrib.services
nova.api.openstack.compute.contrib.certificates
nova.api.openstack.compute.contrib.instance_actions
nova.api.openstack.compute.contrib.multiple_create
nova.api.openstack.compute.contrib.admin_actions
nova.api.openstack.compute.contrib.virtual_interfaces
nova.api.openstack.compute.contrib.rescue
nova.api.openstack.compute.contrib.floating_ip_dns
nova.api.openstack.compute.contrib.createserverext
nova.api.openstack.compute.contrib.block_device_mapping_v2_boot
nova.api.openstack.compute.contrib.deferred_delete
nova.api.openstack.compute.contrib.hypervisors
nova.api.openstack.compute.contrib.extended_services
nova.api.openstack.compute.contrib.server_password
nova.api.openstack.compute.contrib.user_quotas
nova.api.openstack.compute.contrib.hypervisor_status
nova.api.openstack.compute.contrib.used_limits
nova.api.openstack.compute.contrib.console_output
nova.api.openstack.compute.plugins.v3.volumes
nova.api.openstack.compute.plugins.v3.flavor_rxtx
nova.api.openstack.compute.plugins.v3.scheduler_hints
nova.api.openstack.compute.plugins.v3.attach_interfaces
nova.api.openstack.compute.plugins.v3.admin_password
nova.api.openstack.compute.plugins.v3.extended_server_attributes
nova.api.openstack.compute.plugins.v3.cells
nova.api.openstack.compute.plugins.v3.migrate_server
nova.api.openstack.compute.plugins.v3.config_drive
nova.api.openstack.compute.plugins.v3.pause_server
nova.api.openstack.compute.plugins.v3.quota_sets
nova.api.openstack.compute.plugins.v3.security_groups
nova.api.openstack.compute.plugins.v3.multinic
nova.api.openstack.compute.plugins.v3.server_diagnostics
nova.api.openstack.compute.plugins.v3.shelve
nova.api.openstack.compute.plugins.v3.create_backup
nova.api.openstack.compute.plugins.v3.server_usage
nova.api.openstack.compute.plugins.v3.servers
nova.api.openstack.compute.plugins.v3.extended_volumes
nova.api.openstack.compute.plugins.v3.hide_server_addresses
nova.api.openstack.compute.plugins.v3.suspend_server
nova.api.openstack.compute.plugins.v3.consoles
nova.api.openstack.compute.plugins.v3.console_auth_tokens
nova.api.openstack.compute.plugins.v3.extended_status
nova.api.openstack.compute.plugins.v3.keypairs
nova.api.openstack.compute.plugins.v3.block_device_mapping
nova.api.openstack.compute.plugins.v3.evacuate
nova.api.openstack.compute.plugins.v3.simple_tenant_usage
nova.api.openstack.compute.plugins.v3.user_data
nova.api.openstack.compute.plugins.v3.flavor_manage
nova.api.openstack.compute.plugins.v3.migrations
nova.api.openstack.compute.plugins.v3.access_ips
nova.api.openstack.compute.plugins.v3.hosts
nova.api.openstack.compute.plugins.v3.agents
nova.api.openstack.compute.plugins.v3.extended_availability_zone
nova.api.openstack.compute.plugins.v3.versions
nova.api.openstack.compute.plugins.v3.aggregates
nova.api.openstack.compute.plugins.v3.limits
nova.api.openstack.compute.plugins.v3.extension_info
nova.api.openstack.compute.plugins.v3.pci
nova.api.openstack.compute.plugins.v3.server_groups
nova.api.openstack.compute.plugins.v3.server_external_events
nova.api.openstack.compute.plugins.v3.flavors_extraspecs
nova.api.openstack.compute.plugins.v3.flavor_access
nova.api.openstack.compute.plugins.v3.flavors
nova.api.openstack.compute.plugins.v3.availability_zone
nova.api.openstack.compute.plugins.v3.services
nova.api.openstack.compute.plugins.v3.certificates
nova.api.openstack.compute.plugins.v3.instance_actions
nova.api.openstack.compute.plugins.v3.multiple_create
nova.api.openstack.compute.plugins.v3.admin_actions
nova.api.openstack.compute.plugins.v3.server_metadata
nova.api.openstack.compute.plugins.v3.block_device_mapping_v1
nova.api.openstack.compute.plugins.v3.rescue
nova.api.openstack.compute.plugins.v3.lock_server
nova.api.openstack.compute.plugins.v3.remote_consoles
nova.api.openstack.compute.plugins.v3.images
nova.api.openstack.compute.plugins.v3.deferred_delete
nova.api.openstack.compute.plugins.v3.hypervisors
nova.api.openstack.compute.plugins.v3.server_password
nova.api.openstack.compute.plugins.v3.ips
nova.api.openstack.compute.plugins.v3.used_limits
nova.api.openstack.compute.plugins.v3.console_output
nova.api.openstack.compute.servers
nova.api.openstack.compute.consoles
#nova.api.openstack.compute.views.servers
#nova.api.openstack.compute.views.addresses
#nova.api.openstack.compute.views.versions
#nova.api.openstack.compute.views.limits
#nova.api.openstack.compute.views.flavors
#nova.api.openstack.compute.views.images
#nova.api.openstack.compute.versions
#nova.api.openstack.compute.limits
nova.api.openstack.compute.schemas.v3.attach_interfaces
nova.api.openstack.compute.schemas.v3.admin_password
nova.api.openstack.compute.schemas.v3.cells
nova.api.openstack.compute.schemas.v3.migrate_server
nova.api.openstack.compute.schemas.v3.config_drive
nova.api.openstack.compute.schemas.v3.quota_sets
nova.api.openstack.compute.schemas.v3.security_groups
nova.api.openstack.compute.schemas.v3.multinic
nova.api.openstack.compute.schemas.v3.create_backup
nova.api.openstack.compute.schemas.v3.servers
nova.api.openstack.compute.schemas.v3.extended_volumes
nova.api.openstack.compute.schemas.v3.keypairs
nova.api.openstack.compute.schemas.v3.evacuate
nova.api.openstack.compute.schemas.v3.user_data
nova.api.openstack.compute.schemas.v3.flavor_manage
nova.api.openstack.compute.schemas.v3.hosts
nova.api.openstack.compute.schemas.v3.agents
nova.api.openstack.compute.schemas.v3.aggregates
nova.api.openstack.compute.schemas.v3.flavors_extraspecs
nova.api.openstack.compute.schemas.v3.flavor_access
nova.api.openstack.compute.schemas.v3.reset_server_state
nova.api.openstack.compute.schemas.v3.availability_zone
nova.api.openstack.compute.schemas.v3.multiple_create
nova.api.openstack.compute.schemas.v3.rescue
nova.api.openstack.compute.schemas.v3.remote_consoles
nova.api.openstack.compute.schemas.v3.console_output
nova.api.openstack.compute.flavors
nova.api.openstack.compute.server_metadata
nova.api.openstack.compute.image_metadata
nova.api.openstack.compute.extensions
nova.api.openstack.compute.images
nova.api.openstack.compute.ips
#nova.api.openstack.xmlutil
#nova.api.openstack.extensions
#nova.api.openstack.wsgi
#nova.api.auth
#nova.api.validation.validators
#nova.api.validation.parameter_types
#nova.api.sizelimit
#nova.api.validator
#nova.api.ec2.faults
#nova.api.ec2.cloud
#nova.api.ec2.ec2utils
#nova.api.ec2.apirequest
#nova.api.ec2.inst_state
#nova.api.compute_req_id
nova.scheduler.filters.availability_zone_filter
nova.scheduler.filters.trusted_filter
nova.scheduler.filters.affinity_filter
nova.scheduler.filters.isolated_hosts_filter
nova.scheduler.filters.aggregate_instance_extra_specs
nova.scheduler.filters.image_props_filter
nova.scheduler.filters.json_filter
nova.scheduler.filters.retry_filter
nova.scheduler.filters.core_filter
nova.scheduler.filters.utils
nova.scheduler.filters.type_filter
nova.scheduler.filters.ram_filter
nova.scheduler.filters.extra_specs_ops
nova.scheduler.filters.metrics_filter
nova.scheduler.filters.aggregate_image_properties_isolation
nova.scheduler.filters.aggregate_multitenancy_isolation
nova.scheduler.filters.pci_passthrough_filter
nova.scheduler.filters.io_ops_filter
nova.scheduler.filters.exact_ram_filter
nova.scheduler.filters.all_hosts_filter
nova.scheduler.filters.exact_disk_filter
nova.scheduler.filters.compute_capabilities_filter
nova.scheduler.filters.exact_core_filter
nova.scheduler.filters.disk_filter
nova.scheduler.filters.num_instances_filter
nova.scheduler.filters.compute_filter
nova.scheduler.ironic_host_manager
nova.scheduler.manager
nova.scheduler.rpcapi
nova.scheduler.chance
nova.scheduler.scheduler_options
nova.scheduler.filter_scheduler
nova.scheduler.host_manager
nova.scheduler.utils
nova.scheduler.driver
nova.scheduler.caching_scheduler
nova.scheduler.weights.ram
nova.scheduler.weights.metrics
nova.scheduler.client.report
nova.scheduler.client.query
nova.scheduler.base_baremetal_host_manager
nova.scheduler.baremetal_host_manager
nova.storage.linuxscsi
#nova.i18n
#nova.filters
#nova.objects.virtual_interface
#nova.objects.floating_ip
#nova.objects.external_event
#nova.objects.compute_node
#nova.objects.pci_device
#nova.objects.fixed_ip
#nova.objects.ec2
#nova.objects.service
#nova.objects.migration
#nova.objects.security_group
#nova.objects.bandwidth_usage
#nova.objects.dns_domain
#nova.objects.network
#nova.objects.agent
#nova.objects.instance_info_cache
#nova.objects.network_request
#nova.objects.instance_fault
#nova.objects.block_device
#nova.objects.quotas
#nova.objects.flavor
#nova.objects.keypair
#nova.objects.base
#nova.objects.security_group_rule
#nova.objects.aggregate
#nova.objects.instance_group
#nova.objects.instance
#nova.objects.instance_action
#nova.objects.instance_numa_topology
#nova.objects.fields
nova.network.base_api
nova.network.nova_ipam_lib
nova.network.dns_driver
nova.network.manager
nova.network.noop_dns_driver
nova.network.rpcapi
nova.network.ldapdns
nova.network.neutronv2.constants
nova.network.neutronv2.api
nova.network.floating_ips
nova.network.model
nova.network.minidns
nova.network.l3
nova.network.driver
nova.network.security_group.security_group_base
nova.network.security_group.neutron_driver
nova.network.security_group.openstack_driver
nova.network.linux_net
nova.network.api
nova.image.s3
nova.image.download.file
nova.image.download.base
nova.image.api
nova.image.glance
nova.servicegroup.drivers.db
nova.servicegroup.drivers.zk
nova.servicegroup.drivers.mc
nova.servicegroup.api
#nova.hacking.checks
nova.conductor.manager
nova.conductor.rpcapi
nova.conductor.api
nova.conductor.tasks.live_migrate
#nova.debugger
#nova.ct
nova.objectstore.s3server
#nova.wsgi
nova.consoleauth.manager
nova.consoleauth.rpcapi
#nova.paths
nova.pci.pci_device
nova.pci.pci_manager
nova.pci.pci_request
nova.pci.pci_whitelist
nova.pci.pci_utils
nova.pci.pci_stats
nova.pci.pci_devspec
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment