From af245164a3a597893ef7ac802f7ded340422530f Mon Sep 17 00:00:00 2001 From: Thomas Goirand Date: Thu, 30 Apr 2020 18:48:52 +0200 Subject: [PATCH] Add a /healthcheck URL This is helpful for operators to use haproxy or to do monitoring. Change-Id: I551aa1a0c63d699a4830294024248468bd958922 --- etc/heat/api-paste.ini | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/etc/heat/api-paste.ini b/etc/heat/api-paste.ini index 883f36dfc9..09b4d82f87 100644 --- a/etc/heat/api-paste.ini +++ b/etc/heat/api-paste.ini @@ -1,7 +1,7 @@ # heat-api pipeline [pipeline:heat-api] -pipeline = cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authurl authtoken context osprofiler apiv1app +pipeline = healthcheck cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authurl authtoken context osprofiler apiv1app # heat-api pipeline for standalone heat # ie. uses alternative auth backend that authenticates users against keystone @@ -12,7 +12,7 @@ pipeline = cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authu # flavor = standalone # [pipeline:heat-api-standalone] -pipeline = cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authurl authpassword context apiv1app +pipeline = healthcheck cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authurl authpassword context apiv1app # heat-api pipeline for custom cloud backends # i.e. in heat.conf: @@ -20,23 +20,23 @@ pipeline = cors request_id faultwrap http_proxy_to_wsgi versionnegotiation authu # flavor = custombackend # [pipeline:heat-api-custombackend] -pipeline = cors request_id context faultwrap versionnegotiation custombackendauth apiv1app +pipeline = healthcheck cors request_id context faultwrap versionnegotiation custombackendauth apiv1app # To enable, in heat.conf: # [paste_deploy] # flavor = noauth # [pipeline:heat-api-noauth] -pipeline = cors request_id faultwrap noauth context http_proxy_to_wsgi versionnegotiation apiv1app +pipeline = healthcheck cors request_id faultwrap noauth context http_proxy_to_wsgi versionnegotiation apiv1app # heat-api-cfn pipeline [pipeline:heat-api-cfn] -pipeline = cors request_id http_proxy_to_wsgi cfnversionnegotiation ec2authtoken authtoken context osprofiler apicfnv1app +pipeline = healthcheck cors request_id http_proxy_to_wsgi cfnversionnegotiation ec2authtoken authtoken context osprofiler apicfnv1app # heat-api-cfn pipeline for standalone heat # relies exclusively on authenticating with ec2 signed requests [pipeline:heat-api-cfn-standalone] -pipeline = cors request_id http_proxy_to_wsgi cfnversionnegotiation ec2authtoken context apicfnv1app +pipeline = healthcheck cors request_id http_proxy_to_wsgi cfnversionnegotiation ec2authtoken context apicfnv1app [app:apiv1app] paste.app_factory = heat.common.wsgi:app_factory @@ -100,3 +100,6 @@ paste.filter_factory = oslo_middleware.request_id:RequestId.factory [filter:osprofiler] paste.filter_factory = osprofiler.web:WsgiMiddleware.factory + +[filter:healthcheck] +paste.filter_factory = oslo_middleware:Healthcheck.factory