Expose touch_domain via an API extension

Change-Id: Ic46049376f05d3a4dae41a61b3ead5b0f7d2e4c7
This commit is contained in:
Kiall Mac Innes 2013-11-12 11:51:21 +00:00
parent 6df678bd14
commit dce134e557
3 changed files with 31 additions and 1 deletions

View File

@ -0,0 +1,29 @@
# Copyright 2013 Hewlett-Packard Development Company, L.P.
#
# Author: Kiall Mac Innes <kiall@hp.com>
#
# 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.
import flask
from designate.central import rpcapi as central_rpcapi
central_api = central_rpcapi.CentralAPI()
blueprint = flask.Blueprint('touch', __name__)
@blueprint.route('/domains/<uuid:domain_id>/touch', methods=['POST'])
def touch_domain(domain_id):
context = flask.request.environ.get('context')
central_api.touch_domain(context, domain_id)
return flask.Response(status=200)

View File

@ -64,7 +64,7 @@ root_helper = sudo
#enable_api_v2 = False
# Enabled API Version 1 extensions
#enabled_extensions_v1 = diagnostics, quotas, reports, sync
#enabled_extensions_v1 = diagnostics, quotas, reports, sync, touch
#-----------------------
# Keystone Middleware

View File

@ -51,6 +51,7 @@ designate.api.v1.extensions =
quotas = designate.api.v1.extensions.quotas:blueprint
sync = designate.api.v1.extensions.sync:blueprint
reports = designate.api.v1.extensions.reports:blueprint
touch = designate.api.v1.extensions.touch:blueprint
designate.storage =
sqlalchemy = designate.storage.impl_sqlalchemy:SQLAlchemyStorage