From be020179ae5a965c379a7b5ecafd83d8faeac0e9 Mon Sep 17 00:00:00 2001 From: Oleksii Chuprykov Date: Thu, 11 Jun 2015 06:49:48 -0400 Subject: [PATCH] Add apache2 support for heat API services Add scripts for running API serces via apache2 This patch is needed for I1bdd678c44ddfa616a9db7db85ff6f490ff08947 Implements bp: run-heat-api-under-apache2 Change-Id: Ibef2d1f6bcedc8f58368b7752a4acc36c4296a1f --- heat/httpd/heat-api-cfn.py | 50 +++++++++++++++++++++++++++++++ heat/httpd/heat-api-cloudwatch.py | 50 +++++++++++++++++++++++++++++++ heat/httpd/heat-api.py | 48 +++++++++++++++++++++++++++++ 3 files changed, 148 insertions(+) create mode 100644 heat/httpd/heat-api-cfn.py create mode 100644 heat/httpd/heat-api-cloudwatch.py create mode 100644 heat/httpd/heat-api.py diff --git a/heat/httpd/heat-api-cfn.py b/heat/httpd/heat-api-cfn.py new file mode 100644 index 0000000000..9c6a8d5fff --- /dev/null +++ b/heat/httpd/heat-api-cfn.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# +# 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. + +"""WSGI script for heat-api-cfn + +Script for running heat-api-cfn under Apache2 + +""" + + +from oslo_config import cfg +import oslo_i18n as i18n +from oslo_log import log as logging + +from heat.common import config +from heat.common.i18n import _LI +from heat.common import messaging +from heat.common import profiler +from heat import version + +i18n.enable_lazy() + +LOG = logging.getLogger('heat.api.cfn') + +logging.register_options(cfg.CONF) +cfg.CONF(project='heat', + prog='heat-api-cfn', + version=version.version_info.version_string()) +logging.setup(cfg.CONF, 'heat-api-cfn') +logging.set_defaults() +messaging.setup() + +port = cfg.CONF.heat_api_cfn.bind_port +host = cfg.CONF.heat_api_cfn.bind_host +LOG.info(_LI('Starting Heat API on %(host)s:%(port)s'), + {'host': host, 'port': port}) +profiler.setup('heat-api-cfn', host) + +application = config.load_paste_app() diff --git a/heat/httpd/heat-api-cloudwatch.py b/heat/httpd/heat-api-cloudwatch.py new file mode 100644 index 0000000000..36218ca9a5 --- /dev/null +++ b/heat/httpd/heat-api-cloudwatch.py @@ -0,0 +1,50 @@ +#!/usr/bin/env python +# +# 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. + +"""WSGI script for heat-api-cloudwatch + +Script for running heat-api-cloudwatch under Apache2 + +""" + + +from oslo_config import cfg +import oslo_i18n as i18n +from oslo_log import log as logging + +from heat.common import config +from heat.common.i18n import _LI +from heat.common import messaging +from heat.common import profiler +from heat import version + +i18n.enable_lazy() + +LOG = logging.getLogger('heat.api.cloudwatch') + +logging.register_options(cfg.CONF) +cfg.CONF(project='heat', + prog='heat-api-cloudwatch', + version=version.version_info.version_string()) +logging.setup(cfg.CONF, 'heat-api-cloudwatch') +logging.set_defaults() +messaging.setup() + +port = cfg.CONF.heat_api_cloudwatch.bind_port +host = cfg.CONF.heat_api_cloudwatch.bind_host +LOG.info(_LI('Starting Heat CloudWatch API on %(host)s:%(port)s'), + {'host': host, 'port': port}) +profiler.setup('heat-api-cloudwatch', host) + +application = config.load_paste_app() diff --git a/heat/httpd/heat-api.py b/heat/httpd/heat-api.py new file mode 100644 index 0000000000..3c9cfeabf9 --- /dev/null +++ b/heat/httpd/heat-api.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python +# +# 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. + +"""WSGI script for heat-api + +Script for running heat-api under Apache2 + +""" + + +from oslo_config import cfg +import oslo_i18n as i18n +from oslo_log import log as logging + +from heat.common import config +from heat.common.i18n import _LI +from heat.common import messaging +from heat.common import profiler +from heat import version + +i18n.enable_lazy() + +LOG = logging.getLogger('heat.api') + +logging.register_options(cfg.CONF) +version = version.version_info.version_string() +cfg.CONF(project='heat', prog='heat-api', version=version) +logging.setup(cfg.CONF, 'heat-api') +messaging.setup() + +port = cfg.CONF.heat_api.bind_port +host = cfg.CONF.heat_api.bind_host +LOG.info(_LI('Starting Heat ReST API on %(host)s:%(port)s'), + {'host': host, 'port': port}) +profiler.setup('heat-api', host) + +application = config.load_paste_app()