deckhand/deckhand/control/versions.py
Bryan Strassner 8cc63164d2 Allow anonymous access for health and versions
Updates the context middleware to check for authentication upon routing
the request instead of pre-routing. Adds a list to the base resource
that means all requests must be authenticated by default, but allows for
child resources to specify the HTTP methods that should not be authenticated.

Change-Id: I369087430b403355ce551384b8d798465738b684
2017-11-21 16:37:34 -06:00

36 lines
1.1 KiB
Python

# Copyright 2017 AT&T Intellectual Property. All other 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.
import falcon
from deckhand.control import base as api_base
class VersionsResource(api_base.BaseResource):
"""Versions resource
Returns the list of supported versions of the Deckhand API.
Unauthenticated GET.
"""
no_authentication_methods = ['GET']
def on_get(self, req, resp):
resp.body = {
'v1.0': {
'path': '/api/v1.0',
'status': 'stable'
}
}
resp.status = falcon.HTTP_200