summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2019-10-22 20:56:19 +0000
committerGerrit Code Review <review@openstack.org>2019-10-22 20:56:19 +0000
commit1cd2dddf3f181a792b9cb2e9fd02b11ea9896f11 (patch)
treeec6423ee241c00f951a2b469d5accd33e734f933
parentd8c2718e4fc04633eb192483561ff1bf9294a5f7 (diff)
parent282392158262e1afd1a2e9f7f9d6b9d2bda0fb1c (diff)
downloaddesignate-1cd2dddf3f181a792b9cb2e9fd02b11ea9896f11.tar.gz
Merge "Fix api version not providing the full url"
-rw-r--r--designate/api/versions.py40
-rw-r--r--designate/conf/api.py2
-rw-r--r--releasenotes/notes/deprecated--api-base-uri-d759b65d8b0e67a1.yaml5
3 files changed, 22 insertions, 25 deletions
diff --git a/designate/api/versions.py b/designate/api/versions.py
index 520e08f6..56854eeb 100644
--- a/designate/api/versions.py
+++ b/designate/api/versions.py
@@ -22,36 +22,28 @@ cfg.CONF.import_opt('enable_host_header', 'designate.api', group='service:api')
def factory(global_config, **local_conf):
app = flask.Flask('designate.api.versions')
- versions = []
-
- base = cfg.CONF['service:api'].api_base_uri.rstrip('/')
-
- def _host_header_links():
- del versions[:]
- host_url = flask.request.host_url.rstrip('/')
- _version('v2', 'CURRENT', host_url)
-
- def _version(version, status, base_uri):
- versions.append({
- 'id': '%s' % version,
- 'status': status,
- 'links': [{
- 'href': base_uri + '/' + version,
- 'rel': 'self'
- }]
- })
-
- if cfg.CONF['service:api'].enable_api_v2:
- _version('v2', 'CURRENT', base)
-
@app.route('/', methods=['GET'])
def version_list():
if cfg.CONF['service:api'].enable_host_header:
- _host_header_links()
+ url_root = flask.request.url_root
+ else:
+ url_root = cfg.CONF['service:api'].api_base_uri
return flask.jsonify({
"versions": {
- "values": versions
+ "values": [{
+ 'id': 'v2',
+ 'status': 'CURRENT',
+ 'links': [
+ {
+ 'href': url_root.rstrip('/') + '/v2',
+ 'rel': 'self',
+ }, {
+ 'rel': 'help',
+ 'href': 'https://docs.openstack.org/api-ref/dns'
+ }
+ ]
+ }]
}
})
diff --git a/designate/conf/api.py b/designate/conf/api.py
index d9c40c26..f102037c 100644
--- a/designate/conf/api.py
+++ b/designate/conf/api.py
@@ -25,7 +25,7 @@ API_OPTS = [
help='Number of api worker processes to spawn'),
cfg.IntOpt('threads', default=1000,
help='Number of api greenthreads to spawn'),
- cfg.BoolOpt('enable_host_header', default=False,
+ cfg.BoolOpt('enable_host_header', default=True,
help='Enable host request headers'),
cfg.StrOpt('api_base_uri', default='http://127.0.0.1:9001/',
help='the url used as the base for all API responses,'
diff --git a/releasenotes/notes/deprecated--api-base-uri-d759b65d8b0e67a1.yaml b/releasenotes/notes/deprecated--api-base-uri-d759b65d8b0e67a1.yaml
new file mode 100644
index 00000000..56dd49b5
--- /dev/null
+++ b/releasenotes/notes/deprecated--api-base-uri-d759b65d8b0e67a1.yaml
@@ -0,0 +1,5 @@
+---
+upgrade:
+ - |
+ The ``[service:api]`` option ``enable_host_header`` is now enabled by
+ default.