This is an automated email from the ASF dual-hosted git repository.

japetrsn pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/incubator-openwhisk-package-kafka.git


The following commit(s) were added to refs/heads/master by this push:
     new 449bbae  allow for configuring whisk apihost via optional environment 
variable (#268)
449bbae is described below

commit 449bbae13e813ba4dcd11dc33f47ab29d5e3541a
Author: Adnan Baruni <abar...@users.noreply.github.com>
AuthorDate: Mon May 14 14:31:04 2018 -0500

    allow for configuring whisk apihost via optional environment variable (#268)
---
 provider/consumer.py | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/provider/consumer.py b/provider/consumer.py
index f9aaef2..3819072 100644
--- a/provider/consumer.py
+++ b/provider/consumer.py
@@ -31,6 +31,7 @@ from database import Database
 from datetime import datetime
 from datetimeutils import secondsSince
 from multiprocessing import Process, Manager
+from urlparse import urlparse
 
 local_dev = os.getenv('LOCAL_DEV', 'False')
 payload_limit = int(os.getenv('PAYLOAD_LIMIT', 900000))
@@ -127,7 +128,7 @@ class ConsumerProcess (Process):
 
         self.trigger = trigger
         self.isMessageHub = params["isMessageHub"]
-        self.triggerURL = params["triggerURL"]
+        self.triggerURL = self.__triggerURL(params["triggerURL"])
         self.brokers = params["brokers"]
         self.topic = params["topic"]
 
@@ -203,6 +204,20 @@ class ConsumerProcess (Process):
     def secondsSinceLastPoll(self):
         return secondsSince(self.lastPoll())
 
+    def __triggerURL(self, originalURL):
+        apiHost = os.getenv('API_HOST')
+
+        if apiHost is not None:
+            logging.info('[{}] Environment variable defined for API_HOST. 
Overriding host value defined for trigger in DB with {}'.format(self.trigger, 
apiHost))
+            parsed = urlparse(originalURL)
+            parts = parsed.netloc.split('@')
+            auth = parts[0]
+            newURL = parsed._replace(netloc='{}@{}'.format(auth, apiHost))
+
+            return newURL.geturl()
+        else:
+            return originalURL
+
     def run(self):
         try:
             self.consumer = self.__createConsumer()

-- 
To stop receiving notification emails like this one, please contact
japet...@apache.org.

Reply via email to