[openstack-manila/f21] Add the first release for f21

Pete Zaitcev zaitcev at fedoraproject.org
Thu Sep 25 20:36:13 UTC 2014


commit 4a5adb67e1905cdcbe9c2018524a554ebd41d876
Author: Pete Zaitcev <zaitcev at kotori.zaitcev.us>
Date:   Wed Sep 24 23:54:55 2014 -0600

    Add the first release for f21

 api-paste.ini                      |   52 ++
 manila-2014.2-oslosphinx.patch     |   28 ++
 manila-dist.conf                   |    1 +
 manila-sudoers                     |    3 +
 manila.conf                        |  931 ++++++++++++++++++++++++++++++++++++
 manila.logrotate                   |    9 +
 openstack-manila-api.service       |   12 +
 openstack-manila-scheduler.service |   12 +
 openstack-manila-share.service     |   12 +
 openstack-manila.spec              |  345 +++++++++++++
 10 files changed, 1405 insertions(+), 0 deletions(-)
---
diff --git a/api-paste.ini b/api-paste.ini
new file mode 100644
index 0000000..22948b2
--- /dev/null
+++ b/api-paste.ini
@@ -0,0 +1,52 @@
+#############
+# OpenStack #
+#############
+
+[composite:osapi_share]
+use = call:manila.api:root_app_factory
+/: apiversions
+/v1: openstack_share_api_v1
+
+[composite:openstack_share_api_v1]
+use = call:manila.api.middleware.auth:pipeline_factory
+noauth = faultwrap sizelimit noauth apiv1
+keystone = faultwrap sizelimit authtoken keystonecontext apiv1
+keystone_nolimit = faultwrap sizelimit authtoken keystonecontext apiv1
+
+[filter:faultwrap]
+paste.filter_factory = manila.api.middleware.fault:FaultWrapper.factory
+
+[filter:noauth]
+paste.filter_factory = manila.api.middleware.auth:NoAuthMiddleware.factory
+
+[filter:sizelimit]
+paste.filter_factory = manila.api.middleware.sizelimit:RequestBodySizeLimiter.factory
+
+[app:apiv1]
+paste.app_factory = manila.api.v1.router:APIRouter.factory
+
+[pipeline:apiversions]
+pipeline = faultwrap osshareversionapp
+
+[app:osshareversionapp]
+paste.app_factory = manila.api.versions:Versions.factory
+
+##########
+# Shared #
+##########
+
+[filter:keystonecontext]
+paste.filter_factory = manila.api.middleware.auth:ManilaKeystoneContext.factory
+
+[filter:authtoken]
+paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory
+service_protocol = http
+service_host = 127.0.0.1
+service_port = 5000
+auth_host = 127.0.0.1
+auth_port = 35357
+auth_protocol = http
+admin_tenant_name = %SERVICE_TENANT_NAME%
+admin_user = %SERVICE_USER%
+admin_password = %SERVICE_PASSWORD%
+signing_dir = /var/lib/manila
diff --git a/manila-2014.2-oslosphinx.patch b/manila-2014.2-oslosphinx.patch
new file mode 100644
index 0000000..db55874
--- /dev/null
+++ b/manila-2014.2-oslosphinx.patch
@@ -0,0 +1,28 @@
+commit 8399c2d83746075c28e4aa163bc5ab023d725546
+Author: Pete Zaitcev <zaitcev at kotori.zaitcev.us>
+Date:   Wed Sep 10 18:52:48 2014 -0600
+
+    oslo.sphinx
+
+diff --git a/doc/source/conf.py b/doc/source/conf.py
+index ed14d26..4b0fd70 100644
+--- a/doc/source/conf.py
++++ b/doc/source/conf.py
+@@ -35,7 +35,7 @@ extensions = ['sphinx.ext.autodoc',
+               'sphinx.ext.pngmath',
+               'sphinx.ext.ifconfig',
+               'sphinx.ext.graphviz',
+-              'oslosphinx',
++              'oslo.sphinx',
+               ]
+ 
+ # autodoc generation is a bit aggressive and a nuisance
+@@ -140,7 +140,7 @@ man_pages = [
+ # Theme options are theme-specific and customize the look and feel of a theme
+ # further.  For a list of options available for each theme, see the
+ # documentation.
+-html_theme_options = {'incubating': True}
++#html_theme_options = {'incubating': True}
+ 
+ # Add any paths that contain custom themes here, relative to this directory.
+ #html_theme_path = []
diff --git a/manila-dist.conf b/manila-dist.conf
new file mode 100644
index 0000000..8a3be37
--- /dev/null
+++ b/manila-dist.conf
@@ -0,0 +1 @@
+# XXX Oslo prevents Manila from starting unless this file exists
diff --git a/manila-sudoers b/manila-sudoers
new file mode 100644
index 0000000..91bb8e8
--- /dev/null
+++ b/manila-sudoers
@@ -0,0 +1,3 @@
+Defaults:manila !requiretty
+
+manila ALL = (root) NOPASSWD: /usr/bin/manila-rootwrap /etc/manila/rootwrap.conf *
diff --git a/manila.conf b/manila.conf
new file mode 100644
index 0000000..0ed5916
--- /dev/null
+++ b/manila.conf
@@ -0,0 +1,931 @@
+####################
+# manila.conf      #
+####################
+
+[DEFAULT]
+
+#
+# Options defined in manila.exception
+#
+
+# make exception message format errors fatal (boolean value)
+#fatal_exception_format_errors=false
+
+
+#
+# Options defined in manila.quota
+#
+
+# number of shares allowed per project (integer value)
+#quota_shares=10
+
+# number of share snapshots allowed per project (integer value)
+#quota_snapshots=10
+
+# number of share gigabytes (snapshots are also included)
+# allowed per project (integer value)
+#quota_gigabytes=1000
+
+# number of activated share-networks allowed per project (integer value)
+#quota_share_networks=5
+
+# number of seconds until a reservation expires (integer value)
+#reservation_expire=86400
+
+# 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=manila.quota.DbQuotaDriver
+
+
+#
+# Options defined in manila.service
+#
+
+# seconds between nodes reporting state to datastore (integer
+# value)
+#report_interval=10
+
+# seconds between running periodic tasks (integer value)
+#periodic_interval=60
+
+# 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
+
+# IP address for OpenStack Share API to listen (string value)
+#osapi_share_listen=0.0.0.0
+
+# port for os share api to listen (integer value)
+#osapi_share_listen_port=8786
+
+
+#
+# Options defined in manila.test
+#
+
+# File name of clean sqlite db (string value)
+#sqlite_clean_db=clean.sqlite
+
+# should we use everything for testing (boolean value)
+#fake_tests=true
+
+
+#
+# Options defined in manila.wsgi
+#
+
+# 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
+
+# Number of backlog requests to configure the socket with
+# (integer value)
+#backlog=4096
+
+# Sets the value of TCP_KEEPIDLE in seconds for each server
+# socket. Not supported on OS X. (integer value)
+#tcp_keepidle=600
+
+# CA certificate file to use to verify connecting clients
+# (string value)
+#ssl_ca_file=<None>
+
+# Certificate file to use when starting the server securely
+# (string value)
+#ssl_cert_file=<None>
+
+# Private key file to use when starting the server securely
+# (string value)
+#ssl_key_file=<None>
+
+
+#
+# Options defined in manila.api.middleware.auth
+#
+
+# 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 manila.api.middleware.sizelimit
+#
+
+# Max size for body of a request (integer value)
+#osapi_max_request_body_size=114688
+
+
+#
+# Options defined in manila.common.config
+#
+
+# Virtualization api connection type : libvirt, xenapi, or
+# fake (string value)
+#connection_type=<None>
+
+# The SQLAlchemy connection string used to connect to the
+# database (string value)
+#sql_connection=sqlite:///$state_path/$sqlite_db
+
+# Verbosity of SQL debugging information. 0=None,
+# 100=Everything (integer value)
+#sql_connection_debug=0
+
+# File name for the paste.deploy config for manila-api (string
+# value)
+#api_paste_config=api-paste.ini
+
+# Directory where the manila python module is installed
+# (string value)
+#pybasedir=/usr/lib/python/site-packages
+
+# Directory where manila binaries are installed (string value)
+#bindir=$pybasedir/bin
+
+# Top-level directory for maintaining manila's state (string
+# value)
+#state_path=$pybasedir
+
+# ip address of this host (string value)
+#my_ip=10.0.0.1
+
+# default glance hostname or ip (string value)
+#glance_host=$my_ip
+
+# default glance port (integer value)
+#glance_port=9292
+
+# A list of the glance api servers available to manila
+# ([hostname|ip]:port) (list value)
+#glance_api_servers=$glance_host:$glance_port
+
+# Version of the glance api to use (integer value)
+#glance_api_version=1
+
+# Number retries when downloading an image from glance
+# (integer value)
+#glance_num_retries=0
+
+# Allow to perform insecure SSL (https) requests to glance
+# (boolean value)
+#glance_api_insecure=false
+
+# the topic scheduler nodes listen on (string value)
+#scheduler_topic=manila-scheduler
+
+# the topic share nodes listen on (string value)
+#share_topic=manila-share
+
+# Deploy v1 of the Manila API.  (boolean value)
+#enable_v1_api=true
+
+# Deploy v2 of the Manila API.  (boolean value)
+#enable_v2_api=true
+
+# whether to rate limit the api (boolean value)
+#api_rate_limit=true
+
+# Specify list of extensions to load when using
+# osapi_share_extension option with
+# manila.api.contrib.select_extensions (list value)
+#osapi_share_ext_list=
+
+# osapi share extension to load (multi valued)
+#osapi_share_extension=manila.api.contrib.standard_extensions
+
+# Base URL that will be presented to users in links to the
+# OpenStack Share API (string value)
+#osapi_share_base_URL=<None>
+
+# the maximum number of items returned in a single response
+# from a collection resource (integer value)
+#osapi_max_limit=1000
+
+# the filename to use with sqlite (string value)
+#sqlite_db=manila.sqlite
+
+# If passed, use synchronous mode for sqlite (boolean value)
+#sqlite_synchronous=true
+
+# timeout before idle sql connections are reaped (integer
+# value)
+#sql_idle_timeout=3600
+
+# maximum db connection retries during startup. (setting -1
+# implies an infinite retry count) (integer value)
+#sql_max_retries=10
+
+# interval between retries of opening a sql connection
+# (integer value)
+#sql_retry_interval=10
+
+# full class name for the Manager for scheduler (string value)
+#scheduler_manager=manila.scheduler.manager.SchedulerManager
+
+# full class name for the Manager for share (string value)
+#share_manager=manila.share.manager.ShareManager
+
+# Name of this node.  This can be an opaque identifier.  It is
+# not necessarily a hostname, FQDN, or IP address. (string
+# value)
+#host=manila
+
+# availability zone of this node (string value)
+#storage_availability_zone=nova
+
+# Memcached servers or None for in process cache. (list value)
+#memcached_servers=<None>
+
+# time period to generate share usages for.  Time period must
+# be hour, day, month or year (string value)
+#share_usage_audit_period=month
+
+# Deprecated: command to use for running commands as root
+# (string value)
+#root_helper=sudo
+
+# Path to the rootwrap configuration file to use for running
+# commands as root (string value)
+#rootwrap_config=<None>
+
+# Whether to log 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 up service (integer
+# value)
+#service_down_time=60
+
+# The full class name of the share API class to use (string
+# value)
+#share_api_class=manila.share.api.API
+
+# The strategy to use for auth. Supports noauth, keystone, and
+# deprecated. (string value)
+#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=<None>
+
+# A list of share backend names to use. These backend names
+# should be backed by a unique [CONFIG] group with its options
+# (list value)
+#enabled_share_backends=<None>
+
+# Whether snapshots count against GigaByte quota (boolean
+# value)
+#no_snapshot_gb_quota=false
+
+
+#
+# Options defined in manila.compute
+#
+
+# The full class name of the compute API class to use (string
+# value)
+#compute_api_class=manila.compute.nova.API
+
+
+#
+# Options defined in manila.compute.nova
+#
+
+# Info to match when looking for nova in the service catalog.
+# Format is : separated values of the form:
+# <service_type>:<service_name>:<endpoint_type> (string value)
+#nova_catalog_info=compute:nova:publicURL
+
+# Same as nova_catalog_info, but for admin endpoint. (string
+# value)
+#nova_catalog_admin_info=compute:nova:adminURL
+
+# region name of this node (string value)
+#os_region_name=<None>
+
+# Location of ca certicates file to use for nova client
+# requests. (string value)
+#nova_ca_certificates_file=<None>
+
+# Allow to perform insecure SSL requests to nova (boolean
+# value)
+#nova_api_insecure=false
+
+# Nova admin username (string value)
+#nova_admin_username=nova
+
+# Nova admin password (string value)
+#nova_admin_password=<None>
+
+# Nova admin tenant name (string value)
+#nova_admin_tenant_name=service
+
+# Identity service url (string value)
+#nova_admin_auth_url=http://localhost:5000/v2.0
+
+
+#
+# Options defined in manila.db.api
+#
+
+# The backend to use for db (string value)
+#db_backend=sqlalchemy
+
+# Services to be added to the available pool on create
+# (boolean value)
+#enable_new_services=true
+
+# Template string to be used to generate share names (string
+# value)
+#share_name_template=share-%s
+
+# Template string to be used to generate share snapshot names
+# (string value)
+#share_snapshot_name_template=share-snapshot-%s
+
+
+#
+# Options defined in manila.db.base
+#
+
+# driver to use for database access (string value)
+#db_driver=manila.db
+
+
+#
+# Options defined in manila.network
+#
+
+# The full class name of the network API class to use (string
+# value)
+#network_api_class=manila.network.neutron.neutron_network_plugin.NeutronNetworkPlugin
+
+
+#
+# Options defined in manila.network.linux.interface
+#
+
+# Name of Open vSwitch bridge to use (string value)
+#ovs_integration_bridge=br-int
+
+
+#
+# Options defined in manila.openstack.common.eventlet_backdoor
+#
+
+# Enable eventlet backdoor.  Acceptable values are 0, <port>,
+# and <start>:<end>, where 0 results in listening on a random
+# tcp port number; <port> results in listening on the
+# specified port number (and not enabling backdoor if that
+# port is in use); and <start>:<end> 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=<None>
+
+
+#
+# Options defined in manila.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=<None>
+
+
+#
+# Options defined in manila.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
+
+# 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)
+#log_config_append=<None>
+
+# 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=<None>
+
+# 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)
+#log_file=<None>
+
+# (Optional) The base directory used for relative --log-file
+# paths. (string value)
+#log_dir=<None>
+
+# 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 manila.openstack.common.notifier.api
+#
+
+# Driver or drivers to handle sending notifications (multi
+# valued)
+
+# Default notification level for outgoing notifications
+# (string value)
+#default_notification_level=INFO
+
+# Default publisher_id for outgoing notifications (string
+# value)
+#default_publisher_id=<None>
+
+
+#
+# Options defined in manila.openstack.common.notifier.rpc_notifier
+#
+
+# AMQP topic used for OpenStack notifications (list value)
+#notification_topics=notifications
+
+
+#
+# Options defined in manila.openstack.common.notifier.rpc_notifier2
+#
+
+# AMQP topic(s) used for OpenStack notifications (list value)
+#topics=notifications
+
+
+#
+# Options defined in manila.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 manila.openstack.common.rpc
+#
+
+# The messaging module to use, defaults to kombu. (string
+# value)
+#rpc_backend=manila.openstack.common.rpc.impl_kombu
+
+# Size of RPC thread pool (integer value)
+#rpc_thread_pool_size=64
+
+# Size of RPC connection pool (integer value)
+#rpc_conn_pool_size=30
+
+# Seconds to wait for a response from call or multicall
+# (integer value)
+#rpc_response_timeout=60
+
+# Seconds to wait before a cast expires (TTL). Only supported
+# by impl_zmq. (integer value)
+#rpc_cast_timeout=30
+
+# Modules of exceptions that are permitted to be recreated
+# upon receiving exception data from an rpc call. (list value)
+#allowed_rpc_exception_modules=nova.exception,cinder.exception,exceptions
+
+# If passed, use a fake RabbitMQ provider (boolean value)
+#fake_rabbit=false
+
+# AMQP exchange to connect to if using RabbitMQ or Qpid
+# (string value)
+#control_exchange=openstack
+
+
+#
+# Options defined in manila.openstack.common.rpc.amqp
+#
+
+# Use durable queues in amqp. (boolean value)
+#amqp_durable_queues=false
+
+# Auto-delete queues in amqp. (boolean value)
+#amqp_auto_delete=false
+
+
+#
+# Options defined in manila.openstack.common.rpc.impl_kombu
+#
+
+# If SSL is enabled, the SSL version to use. Valid values are
+# TLSv1, SSLv23 and SSLv3. SSLv2 might 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=
+
+# 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 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
+
+
+#
+# Options defined in manila.openstack.common.rpc.impl_qpid
+#
+
+# 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
+
+# Disable Nagle algorithm (boolean value)
+#qpid_tcp_nodelay=true
+
+# 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
+
+
+#
+# Options defined in manila.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. (string value)
+#rpc_zmq_bind_address=*
+
+# MatchMaker driver (string value)
+#rpc_zmq_matchmaker=manila.openstack.common.rpc.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=<None>
+
+# 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=manila
+
+
+#
+# Options defined in manila.openstack.common.rpc.matchmaker
+#
+
+# Heartbeat frequency (integer value)
+#matchmaker_heartbeat_freq=300
+
+# Heartbeat time-to-live. (integer value)
+#matchmaker_heartbeat_ttl=600
+
+
+#
+# Options defined in manila.openstack.common.rpc.matchmaker_redis
+#
+
+# 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=<None>
+
+
+#
+# Options defined in manila.openstack.common.rpc.matchmaker_ring
+#
+
+# Matchmaker ring file (JSON) (string value)
+#ringfile=/etc/oslo/matchmaker_ring.json
+
+
+#
+# Options defined in manila.openstack.common.sslutils
+#
+
+# CA certificate file to use to verify connecting clients.
+# (string value)
+#ca_file=<None>
+
+# Certificate file to use when starting the server securely.
+# (string value)
+#cert_file=<None>
+
+# Private key file to use when starting the server securely.
+# (string value)
+#key_file=<None>
+
+
+#
+# Options defined in manila.scheduler.driver
+#
+
+# The scheduler host manager class to use (string value)
+#scheduler_host_manager=manila.scheduler.host_manager.HostManager
+
+# Maximum number of attempts to schedule a share (integer
+# value)
+#scheduler_max_attempts=3
+
+
+#
+# Options defined in manila.scheduler.manager
+#
+
+# Default scheduler driver to use (string value)
+#scheduler_driver=manila.scheduler.filter_scheduler.FilterScheduler
+
+
+#
+# Options defined in manila.scheduler.scheduler_options
+#
+
+# Absolute path to scheduler configuration JSON file. (string
+# value)
+#scheduler_json_config_location=
+
+
+#
+# Options defined in manila.scheduler.simple
+#
+
+# maximum number of volume gigabytes to allow per host
+# (integer value)
+#max_gigabytes=10000
+
+
+#
+# Options defined in manila.share.driver
+#
+
+# number of times to attempt to run flakey shell commands
+# (integer value)
+#num_shell_tries=3
+
+# The percentage of backend capacity reserved (integer value)
+#reserved_share_percentage=0
+
+# The backend name for a given driver implementation (string
+# value)
+#share_backend_name=<None>
+
+
+#
+# Options defined in manila.share.drivers.glusterfs
+#
+
+# File with the list of Gluster volumes that canbe used to
+# create shares (string value)
+#glusterfs_volumes_config=/etc/manila/glusterfs_volumes
+
+# Base dir containing mount points for Gluster volumes.
+# (string value)
+#glusterfs_mount_point_base=$state_path/mnt
+
+
+#
+# Options defined in manila.share.drivers.lvm
+#
+
+# Base folder where exported shares are located (string value)
+#share_export_root=$state_path/mnt
+
+# IP to be added to export string (string value)
+#share_export_ip=<None>
+
+# Path to smb config (string value)
+#smb_config_path=$state_path/smb.conf
+
+# If set, create lvms with multiple mirrors. Note that this
+# requires lvm_mirrors + 2 pvs with available space (integer value)
+#share_lvm_mirrors=0
+
+# Name for the VG that will contain exported shares (string value)
+#share_volume_group=stack-shares
+
+# Specify list of share export helpers. (list value)
+#share_lvm_helpers=CIFS=manila.share.drivers.lvm.CIFSNetConfHelper,NFS=manila.share.drivers.lvm.NFSHelper
+
+
+#
+# Options defined in manila.share.drivers.netapp.cluster_mode
+#
+
+# Name template to use for new vserver. (string value)
+#netapp_vserver_name_template=os_%(net_id)s
+
+# Lif name template (string value)
+#netapp_lif_name_template=os_%(net_allocation_id)s
+
+# Pattern for searching available aggregates for provisioning.
+# (string value)
+#netapp_aggregate_name_search_pattern=(.*)
+
+# Name of aggregate to create root volume on. (string value)
+#netapp_root_volume_aggregate=<None>
+
+# Root volume name. (string value)
+#netapp_root_volume_name=root
+
+
+#
+# Options defined in manila.share.drivers.netapp.driver
+#
+
+# Transport type protocol. (string value)
+#netapp_nas_transport_type=http
+
+# User name for the ONTAP controller. (string value)
+#netapp_nas_login=admin
+
+# Password for the ONTAP controller. (string value)
+#netapp_nas_password=<None>
+
+# Hostname for the ONTAP controller. (string value)
+#netapp_nas_server_hostname=<None>
+
+# Volume size multiplier to ensure while creation. (floating point value)
+#netapp_nas_size_multiplier=1.2
+
+# Vfiler to use for provisioning. (string value)
+#netapp_nas_vfiler=<None>
+
+# Netapp volume name template. (string value)
+#netapp_nas_volume_name_template=share_%(share_id)s
+
+
+#
+# Options defined in manila.share.manager
+#
+
+# Driver to use for share creation (string value)
+#share_driver=manila.share.drivers.lvm.LVMShareDriver
+
+# With this option is set to True share server willbe deleted
+# on deletion of last share (boolean value)
+#delete_share_server_with_last_share=false
+
+
+#
+# Options defined in manila.volume
+#
+
+# The full class name of the volume API class to use (string value)
+#volume_api_class=manila.volume.cinder.API
+
+
+# Total option count: 197
diff --git a/manila.logrotate b/manila.logrotate
new file mode 100644
index 0000000..ceb5542
--- /dev/null
+++ b/manila.logrotate
@@ -0,0 +1,9 @@
+compress
+
+/var/log/manila/*.log {
+    weekly
+    rotate 4
+    missingok
+    compress
+    minsize 100k
+}
diff --git a/openstack-manila-api.service b/openstack-manila-api.service
new file mode 100644
index 0000000..89c8409
--- /dev/null
+++ b/openstack-manila-api.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=OpenStack Manila API Server
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=manila
+ExecStart=/usr/bin/manila-api --config-file /usr/share/manila/manila-dist.conf --config-file /etc/manila/manila.conf --logfile /var/log/manila/api.log
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/openstack-manila-scheduler.service b/openstack-manila-scheduler.service
new file mode 100644
index 0000000..9763a1d
--- /dev/null
+++ b/openstack-manila-scheduler.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=OpenStack Manila Scheduler
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=manila
+ExecStart=/usr/bin/manila-scheduler --config-file /usr/share/manila/manila-dist.conf --config-file /etc/manila/manila.conf --logfile /var/log/manila/scheduler.log
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/openstack-manila-share.service b/openstack-manila-share.service
new file mode 100644
index 0000000..f8affde
--- /dev/null
+++ b/openstack-manila-share.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=OpenStack Manila Share Service
+After=syslog.target network.target
+
+[Service]
+Type=simple
+User=manila
+ExecStart=/usr/bin/manila-share --config-file /usr/share/manila/manila-dist.conf --config-file /etc/manila/manila.conf --logfile /var/log/manila/share.log
+
+[Install]
+WantedBy=multi-user.target
+
diff --git a/openstack-manila.spec b/openstack-manila.spec
new file mode 100644
index 0000000..96c2955
--- /dev/null
+++ b/openstack-manila.spec
@@ -0,0 +1,345 @@
+%global with_doc %{!?_without_doc:1}%{?_without_doc:0}
+
+Name:             openstack-manila
+Version:          2014.2
+Release:          0.2%{?dist}
+Summary:          OpenStack Shared Filesystem Service
+
+Group:            Applications/System
+License:          ASL 2.0
+# We're only incubated, so we're not on openstack.org.
+# URL:              http://www.openstack.org/software/openstack-filesystem/
+URL:              http://github.com/stackforge/manila
+#Source0:          https://launchpad.net/manila/icehouse/2014.2/+download/manila-%{version}.tar.gz
+Source0:          manila-2014.2.dev32.g5d54abf.tar.gz
+Source1:          manila.conf
+Source2:          manila.logrotate
+Source3:          manila-dist.conf
+Source4:          api-paste.ini
+
+Source10:         openstack-manila-api.service
+Source11:         openstack-manila-scheduler.service
+Source12:         openstack-manila-share.service
+
+Source20:         manila-sudoers
+
+Patch01:          manila-2014.2-oslosphinx.patch
+
+#
+# patches_base=2013.2
+#
+#Patch0001: 0001-Ensure-we-don-t-access-the-net-when-building-docs.patch
+
+BuildArch:        noarch
+# XXX Although intltool pulls gettext, we still traceback with undeclared '_'
+BuildRequires:    intltool
+BuildRequires:    python-d2to1
+BuildRequires:    python-oslo-sphinx
+BuildRequires:    python-pbr
+BuildRequires:    python-setuptools
+BuildRequires:    python-sphinx
+
+Requires:         openstack-utils
+Requires:         python-manila = %{version}-%{release}
+
+Requires(post):   systemd
+Requires(preun):  systemd
+Requires(postun): systemd
+Requires(pre):    shadow-utils
+
+# We pull the posix_ipc with Oslo's common lockutils.
+Requires:         python-posix_ipc
+
+%description
+OpenStack Shared Filesystem Service (code-name Manila) provides services
+to manage network filesystems for use by Virtual Machine instances.
+
+%package -n       python-manila
+Summary:          Python libraries for OpenStack Shared Filesystem Service
+Group:            Applications/System
+
+# Rootwrap in 2013.2 and later deprecates anything but sudo.
+Requires:         sudo
+
+Requires:         MySQL-python
+
+Requires:         python-paramiko
+
+Requires:         python-qpid
+Requires:         python-kombu
+Requires:         python-amqplib
+
+Requires:         python-eventlet
+Requires:         python-greenlet
+Requires:         python-iso8601
+Requires:         python-netaddr
+Requires:         python-lxml
+Requires:         python-anyjson
+Requires:         python-cheetah
+Requires:         python-suds
+
+Requires:         python-sqlalchemy
+Requires:         python-migrate
+
+Requires:         python-paste-deploy
+Requires:         python-routes
+Requires:         python-webob
+
+Requires:         python-keystoneclient
+Requires:         python-neutronclient
+Requires:         python-novaclient >= 1:2.15
+
+Requires:         python-oslo-config >= 1:1.2.0
+Requires:         python-oslo-db
+Requires:         python-oslo-messaging >= 1.3.0-0.1.a9
+Requires:         python-oslo-rootwrap
+Requires:         python-oslo-utils
+
+# We need pbr at runtime because it deterimines the version seen in API.
+Requires:         python-pbr
+
+Requires:         python-six >= 1.5.0
+
+Requires:         python-babel
+Requires:         python-lockfile
+
+%description -n   python-manila
+OpenStack Shared Filesystem Service (code-name Manila) provides services
+to manage network filesystems for use by Virtual Machine instances.
+
+This package contains the associated Python library.
+
+%package -n       %{name}-share
+Summary:          An implementation of OpenStack Shared Filesystem Service
+Group:            Applications/System
+
+Requires:         python-manila = %{version}-%{release}
+
+Requires(post):   systemd-units
+Requires(preun):  systemd-units
+Requires(postun): systemd-units
+Requires(pre):    shadow-utils
+
+# The manila-share can create shares out of LVM slices.
+Requires:         lvm2
+# The manila-share runs testparm, smbd and aborts if it's missing.
+Requires:         samba
+
+%description -n   %{name}-share
+OpenStack Shared Filesystem Service (code-name Manila) provides services
+to manage network filesystems for use by Virtual Machine instances.
+
+This package contains a reference implementation of a service that
+exports shares, similar to a filer.
+
+%if 0%{?with_doc}
+%package doc
+Summary:          Documentation for OpenStack Shared Filesystem Service
+Group:            Documentation
+
+Requires:         %{name} = %{version}-%{release}
+
+BuildRequires:    systemd-units
+#BuildRequires:    graphviz
+
+# Required to build module documents
+BuildRequires:    python-eventlet
+BuildRequires:    python-routes
+BuildRequires:    python-sqlalchemy
+BuildRequires:    python-webob
+# while not strictly required, quiets the build down when building docs.
+BuildRequires:    python-migrate, python-iso8601
+
+%description      doc
+OpenStack Shared Filesystem Service (code-name Manila) provides services
+to manage network filesystems for use by Virtual Machine instances.
+
+This package contains the associated documentation.
+%endif
+
+%prep
+#setup -q -n manila-%{version}
+%setup -q -n manila-2014.2.dev32.g5d54abf
+
+%patch01 -p1
+#patch0001 -p1
+
+find . \( -name .gitignore -o -name .placeholder \) -delete
+
+find manila -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 requires_dist config
+rm -rf {test-,}requirements.txt tools/{pip,test}-requires
+
+# We add REDHATCINDERVERSION/RELEASE with the pbr removal patch
+sed -i s/REDHATCINDERVERSION/%{version}/ manila/version.py
+sed -i s/REDHATCINDERRELEASE/%{release}/ manila/version.py
+
+%build
+%{__python} setup.py build
+
+%install
+%{__python} setup.py install -O1 --skip-build --root %{buildroot}
+
+# docs generation requires everything to be installed first
+export PYTHONPATH="$( pwd ):$PYTHONPATH"
+
+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
+
+# Create dir link to avoid a sphinx-build exception
+mkdir -p build/man/.doctrees/
+ln -s .  build/man/.doctrees/man
+SPHINX_DEBUG=1 sphinx-build -b man -c source source/man build/man
+mkdir -p %{buildroot}%{_mandir}/man1
+install -p -D -m 644 build/man/*.1 %{buildroot}%{_mandir}/man1/
+
+popd
+
+# Setup directories
+install -d -m 755 %{buildroot}%{_sharedstatedir}/manila
+install -d -m 755 %{buildroot}%{_sharedstatedir}/manila/tmp
+install -d -m 755 %{buildroot}%{_localstatedir}/log/manila
+
+# Install config files
+install -d -m 755 %{buildroot}%{_sysconfdir}/manila
+install -p -D -m 640 %{SOURCE1} %{buildroot}%{_sysconfdir}/manila/manila.conf
+install -p -D -m 644 %{SOURCE3} %{buildroot}%{_datadir}/manila/manila-dist.conf
+install -p -D -m 640 etc/manila/rootwrap.conf %{buildroot}%{_sysconfdir}/manila/rootwrap.conf
+# XXX We want to set signing_dir to /var/lib/manila/keystone-signing,
+# but there's apparently no way to override the value in api-paste.ini
+# from manila.conf. So we keep a forked api-paste.ini around for now.
+#install -p -D -m 640 etc/manila/api-paste.ini %{buildroot}%{_sysconfdir}/manila/api-paste.ini
+install -p -D -m 640 %{SOURCE4} %{buildroot}%{_sysconfdir}/manila/api-paste.ini
+install -p -D -m 640 etc/manila/policy.json %{buildroot}%{_sysconfdir}/manila/policy.json
+
+# Install initscripts for services
+install -p -D -m 644 %{SOURCE10} %{buildroot}%{_unitdir}/%{name}-api.service
+install -p -D -m 644 %{SOURCE11} %{buildroot}%{_unitdir}/%{name}-scheduler.service
+install -p -D -m 644 %{SOURCE12} %{buildroot}%{_unitdir}/%{name}-share.service
+
+# Install sudoers
+install -p -D -m 440 %{SOURCE20} %{buildroot}%{_sysconfdir}/sudoers.d/manila
+
+# Install logrotate
+install -p -D -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/logrotate.d/openstack-manila
+
+# Install pid directory
+install -d -m 755 %{buildroot}%{_localstatedir}/run/manila
+
+# Install rootwrap files in /usr/share/manila/rootwrap
+mkdir -p %{buildroot}%{_datadir}/manila/rootwrap/
+install -p -D -m 644 etc/manila/rootwrap.d/* %{buildroot}%{_datadir}/manila/rootwrap/
+
+## Remove unneeded in production stuff
+# XXX Drop from Manila once we know for sure none of this is needed.
+#rm -f %{buildroot}%{_bindir}/cinder-debug
+#rm -fr %{buildroot}%{python_sitelib}/cinder/tests/
+#rm -fr %{buildroot}%{python_sitelib}/run_tests.*
+#rm -f %{buildroot}/usr/share/doc/cinder/README*
+
+%pre -n python-manila
+getent group manila >/dev/null || groupadd -r manila
+getent passwd manila >/dev/null || \
+   useradd -r -g manila -G manila,nobody -d %{_sharedstatedir}/manila \
+      -s /sbin/nologin -c "OpenStack Manila Daemons" manila
+
+%post
+%systemd_post %{name}-api.service
+%systemd_post %{name}-scheduler.service
+
+%preun
+%systemd_preun %{name}-api.service
+%systemd_preun %{name}-scheduler.service
+
+%postun
+%systemd_postun_with_restart %{name}-api.service
+%systemd_postun_with_restart %{name}-scheduler.service
+
+%post -n %{name}-share
+%systemd_post %{name}-share.service
+
+%preun -n %{name}-share
+%systemd_preun %{name}-share.service
+
+%postun -n %{name}-share
+%systemd_postun_with_restart %{name}-share.service
+
+%files
+%{_bindir}/manila-api
+%{_bindir}/manila-scheduler
+%{_unitdir}/%{name}-api.service
+%{_unitdir}/%{name}-scheduler.service
+%{_mandir}/man1/manila*.1.gz
+
+%defattr(-, manila, manila, -)
+%dir %{_sharedstatedir}/manila
+%dir %{_sharedstatedir}/manila/tmp
+
+%files -n python-manila
+%doc LICENSE
+
+# Aww, this is awkward. The python-manila itself does not need or provide
+# any configurations, but since it's the bracket package, there's no choice.
+%dir %{_sysconfdir}/manila
+%config(noreplace) %attr(-, root, manila) %{_sysconfdir}/manila/manila.conf
+%config(noreplace) %attr(-, root, manila) %{_sysconfdir}/manila/api-paste.ini
+%config(noreplace) %attr(-, root, manila) %{_sysconfdir}/manila/rootwrap.conf
+%config(noreplace) %attr(-, root, manila) %{_sysconfdir}/manila/policy.json
+%config(noreplace) %{_sysconfdir}/logrotate.d/openstack-manila
+%config(noreplace) %{_sysconfdir}/sudoers.d/manila
+
+%dir %{_datadir}/manila
+%dir %{_datadir}/manila/rootwrap
+%{_datadir}/manila/rootwrap/*
+%attr(-, root, manila) %{_datadir}/manila/manila-dist.conf
+
+# XXX On Fedora 19 and later, /var/run is a symlink to /run, which is mounted.
+# If one specifies directories in /run, they disappear on reboot. Fix?
+%dir %attr(0750, manila, root) %{_localstatedir}/log/manila
+%dir %attr(0755, manila, root) %{_localstatedir}/run/manila
+
+%{python_sitelib}/manila
+%{python_sitelib}/manila-%{version}*.egg-info
+
+%{_bindir}/manila-all
+%{_bindir}/manila-manage
+%{_bindir}/manila-rootwrap
+
+%files -n %{name}-share
+%{_bindir}/manila-share
+%{_unitdir}/%{name}-share.service
+
+%if 0%{?with_doc}
+%files doc
+%doc doc/build/html
+%endif
+
+%changelog
+* Wed Sep 10 2014 Pete Zaitcev <zaitcev at redhat.com>
+- 2014.2-0.2
+- Address review comments bz#1125033 comment#2
+- Upstream removed jQuery
+
+* Sun Aug 10 2014 Pete Zaitcev <zaitcev at redhat.com>
+- 2013.2-0.9
+- Add dependency on python-neutronclient, else traceback
+- Split away the openstack-manila-share and its dependencies on lvm2 and samba
+
+* Wed Jul 30 2014 Pete Zaitcev <zaitcev at redhat.com>
+- 2013.2-0.8
+- Switch to dynamic UID/GID allocation per Packaging:UsersAndGroups
+
+* Tue Jul 29 2014 Pete Zaitcev <zaitcev at redhat.com>
+- 2013.2-0.7
+- Require python-pbr after all
+
+* Thu Jun 26 2014 Pete Zaitcev <zaitcev at redhat.com>
+- 2013.2-0.3
+- Initial testing RPM


More information about the scm-commits mailing list