925b4185f5
The following functionality changes were made: 1. Multiple plugins are loaded one per type 2. QuantumManager now holds dictionary {plugin_type: plugin_instance} Core plugin is stored there as well 3. Extensions are checked against all loaded plugins 4. Service plugins are specified by service_plugins option in quantum.conf file 5. Provide basic interface for service plugins 6. Introduce dummy service plugin as example and PoC 7. Service plugin's REST calls get corresponding plugin's common prefix 8. Add UTs for new extension framework functionality and for QuantumManager Implements: blueprint quantum-service-framework Change-Id: I1d00d6f848937410bccd91c852ff0871a86d7bb8
189 lines
6.1 KiB
Plaintext
189 lines
6.1 KiB
Plaintext
[DEFAULT]
|
|
# Default log level is INFO
|
|
# verbose and debug has the same result.
|
|
# One of them will set DEBUG log level output
|
|
# debug = False
|
|
# verbose = False
|
|
|
|
# log_format = %(asctime)s %(levelname)8s [%(name)s] %(message)s
|
|
# log_date_format = %Y-%m-%d %H:%M:%S
|
|
|
|
# use_syslog -> syslog
|
|
# log_file and log_dir -> log_dir/log_file
|
|
# (not log_file) and log_dir -> log_dir/{binary_name}.log
|
|
# use_stderr -> stderr
|
|
# (not user_stderr) and (not log_file) -> stdout
|
|
# publish_errors -> notification system
|
|
|
|
# use_syslog = False
|
|
# syslog_log_facility = LOG_USER
|
|
|
|
# use_stderr = True
|
|
# log_file =
|
|
# log_dir =
|
|
|
|
# publish_errors = False
|
|
|
|
# Address to bind the API server
|
|
bind_host = 0.0.0.0
|
|
|
|
# Port the bind the API server to
|
|
bind_port = 9696
|
|
|
|
# Path to the extensions. Note that this can be a colon-separated list of
|
|
# paths. For example:
|
|
# api_extensions_path = extensions:/path/to/more/extensions:/even/more/extensions
|
|
# The __path__ of quantum.extensions is appended to this, so if your
|
|
# extensions are in there you don't need to specify them here
|
|
# api_extensions_path =
|
|
|
|
# Quantum plugin provider module
|
|
core_plugin = quantum.plugins.sample.SamplePlugin.FakePlugin
|
|
|
|
# Advanced service modules
|
|
# service_plugins =
|
|
|
|
# Paste configuration file
|
|
api_paste_config = api-paste.ini
|
|
|
|
# The strategy to be used for auth.
|
|
# Supported values are 'keystone'(default), 'noauth'.
|
|
# auth_strategy = keystone
|
|
|
|
# Base MAC address. The first 3 octets will remain unchanged. If the
|
|
# 4h octet is not 00, it will also used. The others will be
|
|
# randomly generated.
|
|
# 3 octet
|
|
# base_mac = fa:16:3e:00:00:00
|
|
# 4 octet
|
|
# base_mac = fa:16:3e:4f:00:00
|
|
|
|
# Maximum amount of retries to generate a unique MAC address
|
|
# mac_generation_retries = 16
|
|
|
|
# DHCP Lease duration (in seconds)
|
|
# dhcp_lease_duration = 120
|
|
|
|
# Enable or disable bulk create/update/delete operations
|
|
# allow_bulk = True
|
|
# Enable or disable overlapping IPs for subnets
|
|
# Attention: the following parameter MUST be set to False if Quantum is
|
|
# being used in conjunction with nova security groups and/or metadata service.
|
|
# allow_overlapping_ips = False
|
|
|
|
# RPC configuration options. Defined in rpc __init__
|
|
# The messaging module to use, defaults to kombu.
|
|
# rpc_backend = quantum.openstack.common.rpc.impl_kombu
|
|
# Size of RPC thread pool
|
|
# rpc_thread_pool_size = 64,
|
|
# Size of RPC connection pool
|
|
# rpc_conn_pool_size = 30
|
|
# Seconds to wait for a response from call or multicall
|
|
# rpc_response_timeout = 60
|
|
# Seconds to wait before a cast expires (TTL). Only supported by impl_zmq.
|
|
# rpc_cast_timeout = 30
|
|
# Modules of exceptions that are permitted to be recreated
|
|
# upon receiving exception data from an rpc call.
|
|
# allowed_rpc_exception_modules = quantum.openstack.common.exception, nova.exception
|
|
# AMQP exchange to connect to if using RabbitMQ or QPID
|
|
control_exchange = quantum
|
|
|
|
# If passed, use a fake RabbitMQ provider
|
|
# fake_rabbit = False
|
|
|
|
# Configuration options if sending notifications via kombu rpc (these are
|
|
# the defaults)
|
|
# SSL version to use (valid only if SSL enabled)
|
|
# kombu_ssl_version =
|
|
# SSL key file (valid only if SSL enabled)
|
|
# kombu_ssl_keyfile =
|
|
# SSL cert file (valid only if SSL enabled)
|
|
# kombu_ssl_certfile =
|
|
# SSL certification authority file (valid only if SSL enabled)'
|
|
# kombu_ssl_ca_certs =
|
|
# IP address of the RabbitMQ installation
|
|
# rabbit_host = localhost
|
|
# Password of the RabbitMQ server
|
|
# rabbit_password = guest
|
|
# Port where RabbitMQ server is running/listening
|
|
# rabbit_port = 5672
|
|
# User ID used for RabbitMQ connections
|
|
# rabbit_userid = guest
|
|
# Location of a virtual RabbitMQ installation.
|
|
# rabbit_virtual_host = /
|
|
# Maximum retries with trying to connect to RabbitMQ
|
|
# (the default of 0 implies an infinite retry count)
|
|
# rabbit_max_retries = 0
|
|
# RabbitMQ connection retry interval
|
|
# rabbit_retry_interval = 1
|
|
|
|
# QPID
|
|
# rpc_backend=quantum.openstack.common.rpc.impl_qpid
|
|
# Qpid broker hostname
|
|
# qpid_hostname = localhost
|
|
# Qpid broker port
|
|
# qpid_port = 5672
|
|
# Username for qpid connection
|
|
# qpid_username = ''
|
|
# Password for qpid connection
|
|
# qpid_password = ''
|
|
# Space separated list of SASL mechanisms to use for auth
|
|
# qpid_sasl_mechanisms = ''
|
|
# Seconds between connection keepalive heartbeats
|
|
# qpid_heartbeat = 60
|
|
# Transport to use, either 'tcp' or 'ssl'
|
|
# qpid_protocol = tcp
|
|
# Disable Nagle algorithm
|
|
# qpid_tcp_nodelay = True
|
|
|
|
# ZMQ
|
|
# rpc_backend=quantum.openstack.common.rpc.impl_zmq
|
|
# ZeroMQ bind address. Should be a wildcard (*), an ethernet interface, or IP.
|
|
# The "host" option should point or resolve to this address.
|
|
# rpc_zmq_bind_address = *
|
|
|
|
# ============ Notification System Options =====================
|
|
|
|
# Notifications can be sent when network/subnet/port are create, updated or deleted.
|
|
# There are three methods of sending notifications: logging (via the
|
|
# log_file directive), rpc (via a message queue) and
|
|
# noop (no notifications sent, the default)
|
|
|
|
# Notification_driver can be defined multiple times
|
|
# Do nothing driver
|
|
# notification_driver = quantum.openstack.common.notifier.no_op_notifier
|
|
# Logging driver
|
|
# notification_driver = quantum.openstack.common.notifier.log_notifier
|
|
# RPC driver. DHCP agents needs it.
|
|
notification_driver = quantum.openstack.common.notifier.rpc_notifier
|
|
|
|
# default_notification_level is used to form actual topic name(s) or to set logging level
|
|
default_notification_level = INFO
|
|
|
|
# default_publisher_id is a part of the notification payload
|
|
# host = myhost.com
|
|
# default_publisher_id = $host
|
|
|
|
# Defined in rpc_notifier, can be comma separated values.
|
|
# The actual topic names will be %s.%(default_notification_level)s
|
|
notification_topics = notifications
|
|
|
|
[QUOTAS]
|
|
# resource name(s) that are supported in quota features
|
|
# quota_items = network,subnet,port
|
|
|
|
# default number of resource allowed per tenant, minus for unlimited
|
|
# default_quota = -1
|
|
|
|
# number of networks allowed per tenant, and minus means unlimited
|
|
# quota_network = 10
|
|
|
|
# number of subnets allowed per tenant, and minus means unlimited
|
|
# quota_subnet = 10
|
|
|
|
# number of ports allowed per tenant, and minus means unlimited
|
|
# quota_port = 50
|
|
|
|
# default driver to use for quota checks
|
|
# quota_driver = quantum.quota.ConfDriver
|