You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwhisk.apache.org by mr...@apache.org on 2020/03/20 15:10:35 UTC

[openwhisk-wskdeploy] branch master updated: Support alt namespace uuid as tenant id on swagger api creates/deletes (#1091)

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

mrutkowski pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openwhisk-wskdeploy.git


The following commit(s) were added to refs/heads/master by this push:
     new 20d66fa  Support alt namespace uuid as tenant id on swagger api creates/deletes (#1091)
20d66fa is described below

commit 20d66fafdab977c390ea71b32df2c0cb64bb73ed
Author: Will Plusnick <pw...@users.noreply.github.com>
AuthorDate: Fri Mar 20 10:10:24 2020 -0500

    Support alt namespace uuid as tenant id on swagger api creates/deletes (#1091)
    
    * Support alt namespace resource uuid as tenant id on swagger api creates/deletes
    
    * Run go fmt on deployers/servicedeployers
---
 deployers/servicedeployer.go | 20 ++++++++++++++++----
 1 file changed, 16 insertions(+), 4 deletions(-)

diff --git a/deployers/servicedeployer.go b/deployers/servicedeployer.go
index 1bba645..613bbe8 100644
--- a/deployers/servicedeployer.go
+++ b/deployers/servicedeployer.go
@@ -1014,9 +1014,9 @@ func (deployer *ServiceDeployer) createAction(pkgname string, action *whisk.Acti
 
 func (deployer *ServiceDeployer) getAnnotationsFromPackageActionOrSequence(packageActionName string) *whisk.KeyValueArr {
 
-	if len(packageActionName)!=0 {
+	if len(packageActionName) != 0 {
 		// Split the package name and action name being searched for
-		aActionName := strings.Split(packageActionName,	parsers.PATH_SEPARATOR)
+		aActionName := strings.Split(packageActionName, parsers.PATH_SEPARATOR)
 
 		// Attempt to locate the named action (or sequence) to return its annotations
 		if pkg, found := deployer.Deployment.Packages[aActionName[0]]; found {
@@ -1088,8 +1088,14 @@ func (deployer *ServiceDeployer) createSwaggerApi(api *whisk.ApiCreateRequest) e
 	var response *http.Response
 
 	apiCreateReqOptions := deployer.Deployment.SwaggerApiOptions
-	apiCreateReqOptions.SpaceGuid = strings.Split(deployer.Client.Config.AuthToken, ":")[0]
 	apiCreateReqOptions.AccessToken = deployer.Client.Config.ApigwAccessToken
+	// In the case of IAM namespaces, we must use the ApigwTenantId as the SpaceGuid
+	// IAM namespaces can be detected by seeing if the ApigwTenantId is populated
+	if len(deployer.Client.Config.ApigwTenantId) > 0 {
+		apiCreateReqOptions.SpaceGuid = deployer.Client.Config.ApigwTenantId
+	} else {
+		apiCreateReqOptions.SpaceGuid = strings.Split(deployer.Client.Config.AuthToken, ":")[0]
+	}
 
 	err = retry(DEFAULT_ATTEMPTS, DEFAULT_INTERVAL, func() error {
 		_, response, err = deployer.Client.Apis.Insert(api, apiCreateReqOptions, true)
@@ -1508,9 +1514,15 @@ func (deployer *ServiceDeployer) deleteSwaggerApi(api *whisk.ApiCreateRequest) e
 	}
 
 	apiDeleteReqOptions := new(whisk.ApiDeleteRequestOptions)
-	apiDeleteReqOptions.SpaceGuid = strings.Split(deployer.Client.Config.AuthToken, ":")[0]
 	apiDeleteReqOptions.AccessToken = deployer.Client.Config.ApigwAccessToken
 	apiDeleteReqOptions.ApiBasePath = swaggerObj.BasePath
+	// In the case of IAM namespaces, we must use the ApigwTenantId as the SpaceGuid
+	// IAM namespaces can be detected by seeing if the ApigwTenantId is populated
+	if len(deployer.Client.Config.ApigwTenantId) > 0 {
+		apiDeleteReqOptions.SpaceGuid = deployer.Client.Config.ApigwTenantId
+	} else {
+		apiDeleteReqOptions.SpaceGuid = strings.Split(deployer.Client.Config.AuthToken, ":")[0]
+	}
 
 	a := new(whisk.ApiDeleteRequest)
 	a.Swagger = swaggerString