You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by du...@apache.org on 2018/09/19 20:03:27 UTC
[incubator-openwhisk-package-kafka] branch master updated: Fix for
overriding api host (#286)
This is an automated email from the ASF dual-hosted git repository.
dubeejw 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 40c2370 Fix for overriding api host (#286)
40c2370 is described below
commit 40c2370dd3e075c1cbaaf6968d44e49e22403f5a
Author: Adnan Baruni <ab...@users.noreply.github.com>
AuthorDate: Wed Sep 19 15:03:23 2018 -0500
Fix for overriding api host (#286)
* fix the way we are handling trigger urls when env var overrides api host. also remove basic auth from trigger url
---
provider/consumer.py | 21 ++++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/provider/consumer.py b/provider/consumer.py
index 1b6bf6f..9b48a2d 100644
--- a/provider/consumer.py
+++ b/provider/consumer.py
@@ -213,18 +213,29 @@ class ConsumerProcess (Process):
return secondsSince(self.lastPoll())
def __triggerURL(self, originalURL):
+ parsed = urlparse(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))
+ newURL = parsed._replace(netloc=apiHost)
return newURL.geturl()
else:
- return originalURL
+ # remove https://user:pass@host from url and replace it with just https://host
+ # we do this because we no longer need the basic auth in the url itself.
+ # we rely upon the HTTPBasicAuth handler or the IAMAuth handler
+ parts = parsed.netloc.split('@')
+
+ if len(parts) == 2:
+ host = parts[1]
+ else:
+ host = parts[0]
+
+ logging.info('[{}] Environment variable undefined for API_HOST. Using value in DB of {}'.format(self.trigger, host))
+ newURL = parsed._replace(netloc=host)
+
+ return newURL.geturl()
def run(self):
try: