def _run(self, application, socket): """Start a WSGI server in a new green thread.""" logger = logging.getLogger('eventlet.wsgi') eventlet.wsgi.server(socket, application, custom_pool=self.tg.pool, log=logging.WritableLogger(logger))
def notify(_context, message): """Notifies the recipient of the desired event given the model. Log notifications using openstack's default logging system""" priority = message.get('priority', CONF.default_notification_level) priority = priority.lower() logger = logging.getLogger('reddwarf.openstack.common.notification.%s' % message['event_type']) getattr(logger, priority)(jsonutils.dumps(message))
def notify(_context, message): """Notifies the recipient of the desired event given the model. Log notifications using openstack's default logging system""" priority = message.get('priority', CONF.default_notification_level) priority = priority.lower() logger = logging.getLogger( 'reddwarf.openstack.common.notification.%s' % message['event_type']) getattr(logger, priority)(jsonutils.dumps(message))
# 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. from reddwarf.openstack.common import log as logging from reddwarf.common import extensions from reddwarf.common import wsgi from reddwarf.extensions.mysql import service LOG = logging.getLogger(__name__) class Mysql(extensions.ExtensionsDescriptor): def get_name(self): return "Mysql" def get_description(self): return "Non essential MySQL services such as users and schemas" def get_alias(self): return "MYSQL" def get_namespace(self): return "http://TBD"
# # 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. from reddwarf.common import exception from reddwarf.common import wsgi from reddwarf.extensions.mgmt.host import models from reddwarf.openstack.common import log as logging from reddwarf.openstack.common.gettextutils import _ LOG = logging.getLogger(__name__) class HostInstanceController(wsgi.Controller): """Controller for all instances on specific hosts.""" def action(self, req, body, tenant_id, host_id): LOG.info("req : '%s'\n\n" % req) LOG.info("Committing an ACTION against host %s for tenant '%s'" % (host_id, tenant_id)) if not body: raise exception.BadRequest(_("Invalid request body.")) context = req.environ[wsgi.CONTEXT_KEY] host = models.DetailedHost.load(context, host_id) _actions = {'update': self._action_update} selected_action = None for key in body:
# # 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. """Various conveniences used for migration scripts.""" from reddwarf.openstack.common import log as logging import sqlalchemy.types logger = logging.getLogger('reddwarf.db.sqlalchemy.migrate_repo.schema') String = lambda length: sqlalchemy.types.String( length=length, convert_unicode=False, assert_unicode=None, unicode_error=None, _warn_on_bytestring=False) Text = lambda: sqlalchemy.types.Text( length=None, convert_unicode=False, assert_unicode=None, unicode_error=None, _warn_on_bytestring=False) Boolean = lambda: sqlalchemy.types.Boolean(create_constraint=True, name=None)
""" from reddwarf.openstack.common import log as logging import exceptions try: import json except ImportError: import simplejson as json from novaclient.client import HTTPClient from novaclient.v1_1.client import Client LOG = logging.getLogger('rsdns.client.dns_client') class DNSaasClient(HTTPClient): def __init__(self, accountId, user, apikey, auth_url, management_base_url): tenant = "dbaas" super(DNSaasClient, self).__init__(user, apikey, tenant, auth_url) self.accountId = accountId self.management_base_url = management_base_url self.api_key = apikey self.disable_ssl_certificate_validation = True self.service = "cloudDNS" def authenticate(self): """Set the management url and auth token"""
is different here. """ from reddwarf.openstack.common import log as logging import exceptions try: import json except ImportError: import simplejson as json from novaclient.client import HTTPClient from novaclient.v1_1.client import Client LOG = logging.getLogger('rsdns.client.dns_client') class DNSaasClient(HTTPClient): def __init__(self, accountId, user, apikey, auth_url, management_base_url): tenant = "dbaas" super(DNSaasClient, self).__init__(user, apikey, tenant, auth_url) self.accountId = accountId self.management_base_url = management_base_url self.api_key = apikey self.disable_ssl_certificate_validation = True self.service = "cloudDNS" def authenticate(self): """Set the management url and auth token""" req_body = {
# 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. """Various conveniences used for migration scripts.""" from reddwarf.openstack.common import log as logging import sqlalchemy.types logger = logging.getLogger('reddwarf.db.sqlalchemy.migrate_repo.schema') String = lambda length: sqlalchemy.types.String(length=length, convert_unicode=False, assert_unicode=None, unicode_error=None, _warn_on_bytestring=False) Text = lambda: sqlalchemy.types.Text(length=None, convert_unicode=False, assert_unicode=None, unicode_error=None, _warn_on_bytestring=False) Boolean = lambda: sqlalchemy.types.Boolean(create_constraint=True, name=None)
from reddwarf.openstack.common import wsgi as openstack_wsgi from reddwarf.openstack.common import log as logging from reddwarf.common import cfg CONTEXT_KEY = "reddwarf.context" Router = openstack_wsgi.Router Debug = openstack_wsgi.Debug Middleware = openstack_wsgi.Middleware JSONDictSerializer = openstack_wsgi.JSONDictSerializer XMLDictSerializer = openstack_wsgi.XMLDictSerializer XMLDeserializer = openstack_wsgi.XMLDeserializer RequestDeserializer = openstack_wsgi.RequestDeserializer eventlet.patcher.monkey_patch(all=False, socket=True) LOG = logging.getLogger("reddwarf.common.wsgi") CONF = cfg.CONF XMLNS = "http://docs.openstack.org/database/api/v1.0" CUSTOM_PLURALS_METADATA = {"databases": "", "users": ""} CUSTOM_SERIALIZER_METADATA = { "instance": { "status": "", "hostname": "", "id": "", "name": "", "created": "", "updated": "", "host": "", "server_id": "",
from reddwarf.openstack.common import log as logging import os from migrate.versioning import api as versioning_api # See LP bug #719834. sqlalchemy-migrate changed location of # exceptions.py after 0.6.0. try: from migrate.versioning import exceptions as versioning_exceptions except ImportError: from migrate import exceptions as versioning_exceptions from reddwarf.common import exception logger = logging.getLogger('reddwarf.db.sqlalchemy.migration') def db_version(options, repo_path=None): """Return the database's current migration number. :param options: options dict :retval version number """ repo_path = get_migrate_repo_path(repo_path) sql_connection = options['sql_connection'] try: return versioning_api.db_version(sql_connection, repo_path) except versioning_exceptions.DatabaseNotControlledError: msg = ("database '%(sql_connection)s' is not under migration control"
from reddwarf.openstack.common import wsgi as openstack_wsgi from reddwarf.openstack.common import log as logging from reddwarf.common import cfg CONTEXT_KEY = 'reddwarf.context' Router = openstack_wsgi.Router Debug = openstack_wsgi.Debug Middleware = openstack_wsgi.Middleware JSONDictSerializer = openstack_wsgi.JSONDictSerializer XMLDictSerializer = openstack_wsgi.XMLDictSerializer XMLDeserializer = openstack_wsgi.XMLDeserializer RequestDeserializer = openstack_wsgi.RequestDeserializer eventlet.patcher.monkey_patch(all=False, socket=True) LOG = logging.getLogger('reddwarf.common.wsgi') CONF = cfg.CONF XMLNS = 'http://docs.openstack.org/database/api/v1.0' CUSTOM_PLURALS_METADATA = {'databases': '', 'users': ''} CUSTOM_SERIALIZER_METADATA = { 'instance': { 'status': '', 'hostname': '', 'id': '', 'name': '', 'created': '', 'updated': '', 'host': '', 'server_id': '',