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/01/28 07:16:22 UTC

[incubator-openwhisk-wskdeploy] branch go-fmt updated (995348f -> c307449)

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

dubeejw pushed a change to branch go-fmt
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-wskdeploy.git.


    omit 995348f  Format source code
     new c307449  Format source code

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (995348f)
            \
             N -- N -- N   refs/heads/go-fmt (c307449)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 parsers/manifest_parser.go | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

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

[incubator-openwhisk-wskdeploy] 01/01: Format source code

Posted by du...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

dubeejw pushed a commit to branch go-fmt
in repository https://gitbox.apache.org/repos/asf/incubator-openwhisk-wskdeploy.git

commit c307449d0e39457aa514d2ce9b979124946b3f7f
Author: dubeejw <jw...@us.ibm.com>
AuthorDate: Sun Jan 28 02:11:08 2018 -0500

    Format source code
---
 cmd/add.go                                         |   86 +-
 cmd/init.go                                        |   30 +-
 cmd/publish.go                                     |   38 +-
 cmd/report.go                                      |   16 +-
 cmd/root.go                                        |   24 +-
 cmd/undeploy.go                                    |   10 +-
 cmd/version.go                                     |    4 +-
 deployers/deploymentreader.go                      |   28 +-
 deployers/deploymentreader_test.go                 |   15 +-
 deployers/filesystemreader.go                      |   10 +-
 deployers/manifestreader.go                        |    2 +-
 deployers/manifestreader_test.go                   |    2 +-
 deployers/servicedeployer.go                       |   76 +-
 deployers/whiskclient.go                           |   24 +-
 deployers/whiskclient_test.go                      |   24 +-
 parsers/deploy_parser.go                           |   15 +-
 parsers/manifest_parser.go                         |   71 +-
 parsers/manifest_parser_test.go                    | 2566 ++++++++++----------
 parsers/parameters.go                              |  163 +-
 parsers/yamlparser.go                              |   54 +-
 .../owbp-cloudant-trigger_test.go                  |   13 +-
 .../integration/alarmtrigger/alarmtrigger_test.go  |   26 +-
 .../src/integration/apigateway/apigateway_test.go  |    4 +-
 tests/src/integration/cloudant/cloudant_test.go    |    9 +-
 tests/src/integration/common/wskdeploy.go          |   10 +-
 .../src/integration/dependency/dependency_test.go  |   23 +-
 tests/src/integration/flagstests/flags_test.go     |   28 +-
 .../managed-deployment/managed-deployment_test.go  |    1 -
 .../src/integration/runtimetests/runtimes_test.go  |    9 +-
 .../integration/triggerrule/triggerrule_test.go    |    5 +-
 .../validate-action-annotations_test.go            |    5 +-
 .../validate-application-and-project_test.go       |    5 +-
 .../validate-bind-inputs-anno_test.go              |    4 +-
 .../validate-file-extensions_test.go               |   13 +-
 .../validateSequencesCreation_test.go              |   49 +-
 tests/src/integration/webaction/webaction_test.go  |    1 -
 tests/src/integration/zipaction/zipaction_test.go  |   22 +-
 utils/conversion.go                                |    4 +-
 utils/dependencies.go                              |   26 +-
 utils/fileoperations.go                            |   38 +-
 utils/fileoperations_test.go                       |  200 +-
 utils/flags.go                                     |   10 +-
 utils/managedannotations.go                        |   13 +-
 utils/misc_test.go                                 |   12 +-
 utils/qualifiedname.go                             |    2 +-
 utils/runtimes.go                                  |    5 +-
 utils/validation.go                                |    2 +-
 wskderrors/wskdeployerror.go                       |  110 +-
 wskderrors/wskdeployerror_test.go                  |   26 +-
 wskenv/environment.go                              |    4 +-
 wskenv/environment_test.go                         |   38 +-
 wski18n/detection.go                               |   24 +-
 wski18n/i18n.go                                    |  152 +-
 wski18n/i18n_ids.go                                |  302 +--
 wski18n/i18n_ids_test.go                           |    2 +-
 wski18n/i18n_resources.go                          |   42 +-
 wskprint/console.go                                |   31 +-
 57 files changed, 2246 insertions(+), 2282 deletions(-)

diff --git a/cmd/add.go b/cmd/add.go
index 24eab52..3decdb1 100644
--- a/cmd/add.go
+++ b/cmd/add.go
@@ -19,62 +19,62 @@ package cmd
 
 import (
 	"bufio"
-	"os"
-	"github.com/spf13/cobra"
 	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"github.com/spf13/cobra"
+	"os"
 )
 
 // addCmd represents the add command
 var addCmd = &cobra.Command{
-	Use:	"add",
-	SuggestFor: []string {"insert"},
-	Short:	wski18n.T(wski18n.ID_CMD_DESC_SHORT_ADD),
+	Use:        "add",
+	SuggestFor: []string{"insert"},
+	Short:      wski18n.T(wski18n.ID_CMD_DESC_SHORT_ADD),
 }
 
 // action represents the `add action` command
 var actionCmd = &cobra.Command{
-	Use:   "action",
+	Use: "action",
 	Short: wski18n.T(wski18n.ID_CMD_DESC_SHORT_ADD_X_key_X,
 		map[string]interface{}{wski18n.KEY_KEY: parsers.YAML_KEY_ACTION}),
 	RunE: func(cmd *cobra.Command, args []string) error {
 		maniyaml, err := parsers.ReadOrCreateManifest()
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
-	reader := bufio.NewReader(os.Stdin)
-	action := parsers.Action{}
+		reader := bufio.NewReader(os.Stdin)
+		action := parsers.Action{}
 
-	for {
-		action.Name = utils.Ask(reader, wski18n.NAME_ACTION, "")
+		for {
+			action.Name = utils.Ask(reader, wski18n.NAME_ACTION, "")
 
-		// Check action name is unique
-		if _, ok := maniyaml.Package.Actions[action.Name]; !ok {
-			break
-		}
+			// Check action name is unique
+			if _, ok := maniyaml.Package.Actions[action.Name]; !ok {
+				break
+			}
 
-		warnMsg := wski18n.T(wski18n.ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X,
-			map[string]interface{}{
-				wski18n.KEY_KEY: parsers.YAML_KEY_ACTION,
-				wski18n.KEY_NAME: action.Name})
-		wskprint.PrintOpenWhiskWarning(warnMsg)
-	}
+			warnMsg := wski18n.T(wski18n.ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X,
+				map[string]interface{}{
+					wski18n.KEY_KEY:  parsers.YAML_KEY_ACTION,
+					wski18n.KEY_NAME: action.Name})
+			wskprint.PrintOpenWhiskWarning(warnMsg)
+		}
 
-	// TODO() use dynamic/programmatic way to get default runtime (not hardcoded)
-	// TODO() And List all supported runtime names (values) (via API)
-	action.Runtime = utils.Ask(reader, wski18n.NAME_RUNTIME, "nodejs:6")
-	maniyaml.Package.Actions[action.Name] = action
+		// TODO() use dynamic/programmatic way to get default runtime (not hardcoded)
+		// TODO() And List all supported runtime names (values) (via API)
+		action.Runtime = utils.Ask(reader, wski18n.NAME_RUNTIME, "nodejs:6")
+		maniyaml.Package.Actions[action.Name] = action
 
-	// Create directory structure before update manifest, as a way
-	// to check the action name is a valid path name
-	err = os.MkdirAll("actions/"+action.Name, 0777)
+		// Create directory structure before update manifest, as a way
+		// to check the action name is a valid path name
+		err = os.MkdirAll("actions/"+action.Name, 0777)
 
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		return parsers.Write(maniyaml, utils.ManifestFileNameYaml)
 	},
@@ -82,14 +82,14 @@ var actionCmd = &cobra.Command{
 
 // trigger represents the `add trigger` command
 var triggerCmd = &cobra.Command{
-	Use:   "trigger",
+	Use: "trigger",
 	Short: wski18n.T(wski18n.ID_CMD_DESC_SHORT_ADD_X_key_X,
 		map[string]interface{}{wski18n.KEY_KEY: parsers.YAML_KEY_TRIGGER}),
 	RunE: func(cmd *cobra.Command, args []string) error {
 		maniyaml, err := parsers.ReadOrCreateManifest()
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		reader := bufio.NewReader(os.Stdin)
 		trigger := parsers.Trigger{}
@@ -104,7 +104,7 @@ var triggerCmd = &cobra.Command{
 
 			warnMsg := wski18n.T(wski18n.ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X,
 				map[string]interface{}{
-					wski18n.KEY_KEY: parsers.YAML_KEY_TRIGGER,
+					wski18n.KEY_KEY:  parsers.YAML_KEY_TRIGGER,
 					wski18n.KEY_NAME: trigger.Name})
 			wskprint.PrintOpenWhiskWarning(warnMsg)
 		}
@@ -118,14 +118,14 @@ var triggerCmd = &cobra.Command{
 
 // rule represents the `add rule` command
 var ruleCmd = &cobra.Command{
-	Use:   "rule",
+	Use: "rule",
 	Short: wski18n.T(wski18n.ID_CMD_DESC_SHORT_ADD_X_key_X,
 		map[string]interface{}{wski18n.KEY_KEY: parsers.YAML_KEY_RULE}),
 	RunE: func(cmd *cobra.Command, args []string) error {
 		maniyaml, err := parsers.ReadOrCreateManifest()
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		reader := bufio.NewReader(os.Stdin)
 		rule := parsers.Rule{}
@@ -140,7 +140,7 @@ var ruleCmd = &cobra.Command{
 
 			warnMsg := wski18n.T(wski18n.ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X,
 				map[string]interface{}{
-					wski18n.KEY_KEY: parsers.YAML_KEY_RULE,
+					wski18n.KEY_KEY:  parsers.YAML_KEY_RULE,
 					wski18n.KEY_NAME: rule.Name})
 			wskprint.PrintOpenWhiskWarning(warnMsg)
 		}
diff --git a/cmd/init.go b/cmd/init.go
index 871ef1b..21098c2 100644
--- a/cmd/init.go
+++ b/cmd/init.go
@@ -24,18 +24,18 @@ import (
 	"github.com/spf13/cobra"
 	"os"
 	"path/filepath"
-    "strings"
+	"strings"
 )
 
 var initCmd = &cobra.Command{
-	Use:   "init",
-	SuggestFor: []string {"initialize"},
-	Short: "Init helps you create a manifest file on OpenWhisk",
+	Use:        "init",
+	SuggestFor: []string{"initialize"},
+	Short:      "Init helps you create a manifest file on OpenWhisk",
 	RunE: func(cmd *cobra.Command, args []string) error {
 		maniyaml, err := parsers.ReadOrCreateManifest()
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		reader := bufio.NewReader(os.Stdin)
 
@@ -44,22 +44,22 @@ var initCmd = &cobra.Command{
 		maniyaml.Package.License = askLicense(reader, maniyaml.Package.License)
 
 		err = parsers.Write(maniyaml, utils.ManifestFileNameYaml)
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		// Create directory structure
 		os.Mkdir("actions", 0777)
-        return nil
+		return nil
 	},
 }
 
 func askName(reader *bufio.Reader, def string) string {
 	if len(def) == 0 {
-        path := strings.TrimSpace(utils.Flags.ProjectPath)
-        if (len(path) == 0) {
-            path = utils.DEFAULT_PROJECT_PATH
-        }
+		path := strings.TrimSpace(utils.Flags.ProjectPath)
+		if len(path) == 0 {
+			path = utils.DEFAULT_PROJECT_PATH
+		}
 		abspath, _ := filepath.Abs(path)
 		def = filepath.Base(abspath)
 	}
diff --git a/cmd/publish.go b/cmd/publish.go
index 22020ba..0f8d806 100644
--- a/cmd/publish.go
+++ b/cmd/publish.go
@@ -19,24 +19,24 @@ package cmd
 
 import (
 	"bufio"
+	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"github.com/spf13/cobra"
 	"net/http"
 	"net/url"
 	"os"
 	"path"
 	"strings"
-	"github.com/spf13/cobra"
-	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 )
 
 // publishCmd represents the publish command
 var publishCmd = &cobra.Command{
-	Use:		"publish",
-	SuggestFor:	[]string{"publicize"},
-	Short:		wski18n.T(wski18n.ID_CMD_DESC_SHORT_PUBLISH),
-	Long:		wski18n.T(wski18n.ID_CMD_DESC_LONG_PUBLISH),
+	Use:        "publish",
+	SuggestFor: []string{"publicize"},
+	Short:      wski18n.T(wski18n.ID_CMD_DESC_SHORT_PUBLISH),
+	Long:       wski18n.T(wski18n.ID_CMD_DESC_LONG_PUBLISH),
 	RunE: func(cmd *cobra.Command, args []string) error {
 		// Get registry location
 		userHome := utils.GetHomeDirectory()
@@ -52,8 +52,8 @@ var publishCmd = &cobra.Command{
 			wskprint.PrintOpenWhiskError(
 				wski18n.T(wski18n.ID_ERR_URL_INVALID_X_urltype_X_url_X_filetype_X,
 					map[string]interface{}{
-						wski18n.KEY_URL_TYPE: wski18n.REGISTRY,
-						wski18n.KEY_URL: "",
+						wski18n.KEY_URL_TYPE:  wski18n.REGISTRY,
+						wski18n.KEY_URL:       "",
 						wski18n.KEY_FILE_TYPE: wski18n.WHISK_PROPS}))
 
 			// TODO() should only read if interactive mode is on
@@ -72,7 +72,7 @@ var publishCmd = &cobra.Command{
 					wski18n.T(wski18n.ID_ERR_URL_MALFORMED_X_urltype_X_url_X,
 						map[string]interface{}{
 							wski18n.KEY_URL_TYPE: wski18n.REGISTRY,
-							wski18n.KEY_URL: registry}))
+							wski18n.KEY_URL:      registry}))
 			}
 
 			configs["REGISTRY"] = registry
@@ -94,18 +94,18 @@ var publishCmd = &cobra.Command{
 				wskprint.PrintOpenWhiskError(
 					wski18n.T(wski18n.ID_ERR_URL_INVALID_X_urltype_X_url_X_filetype_X,
 						map[string]interface{}{
-							wski18n.KEY_URL_TYPE: wski18n.REPOSITORY,
-							wski18n.KEY_URL: repoURL,
+							wski18n.KEY_URL_TYPE:  wski18n.REPOSITORY,
+							wski18n.KEY_URL:       repoURL,
 							wski18n.KEY_FILE_TYPE: wski18n.MANIFEST}))
 				return nil
 			}
 
-			repo := paths[l - 1]
-			owner := paths[l - 2]
+			repo := paths[l-1]
+			owner := paths[l-2]
 
 			// Send HTTP request
 			client := &http.Client{}
-			request, err := http.NewRequest("PUT", registry + "?owner=" + owner + "&repo=" + repo, nil)
+			request, err := http.NewRequest("PUT", registry+"?owner="+owner+"&repo="+repo, nil)
 			if err != nil {
 				return err
 			}
@@ -118,8 +118,8 @@ var publishCmd = &cobra.Command{
 			wskprint.PrintOpenWhiskError(
 				wski18n.T(wski18n.ID_ERR_URL_INVALID_X_urltype_X_url_X_filetype_X,
 					map[string]interface{}{
-						wski18n.KEY_URL_TYPE: wski18n.REPOSITORY,
-						wski18n.KEY_URL: "",
+						wski18n.KEY_URL_TYPE:  wski18n.REPOSITORY,
+						wski18n.KEY_URL:       "",
 						wski18n.KEY_FILE_TYPE: wski18n.MANIFEST}))
 		}
 		return nil
diff --git a/cmd/report.go b/cmd/report.go
index 37a361d..c1159e6 100644
--- a/cmd/report.go
+++ b/cmd/report.go
@@ -19,15 +19,15 @@ package cmd
 
 import (
 	"fmt"
-	"path"
-	"sync"
-	"os"
-	"github.com/spf13/cobra"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/deployers"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"github.com/spf13/cobra"
+	"os"
+	"path"
+	"sync"
 )
 
 var wskpropsPath string
@@ -37,9 +37,9 @@ var wg sync.WaitGroup
 
 // reportCmd represents the report command
 var reportCmd = &cobra.Command{
-	Use:		"report",
-	SuggestFor:	[]string{"list"},
-	Short:		wski18n.T(wski18n.ID_CMD_DESC_SHORT_REPORT),
+	Use:        "report",
+	SuggestFor: []string{"list"},
+	Short:      wski18n.T(wski18n.ID_CMD_DESC_SHORT_REPORT),
 	RunE: func(cmd *cobra.Command, args []string) error {
 		if wskpropsPath != "" {
 			config, _ := deployers.NewWhiskConfig(wskpropsPath, utils.Flags.DeploymentPath, utils.Flags.ManifestPath, false)
diff --git a/cmd/root.go b/cmd/root.go
index 1600802..a2da30b 100644
--- a/cmd/root.go
+++ b/cmd/root.go
@@ -21,18 +21,18 @@ import (
 	"encoding/json"
 	"errors"
 	"fmt"
+	"github.com/apache/incubator-openwhisk-client-go/whisk"
+	"github.com/apache/incubator-openwhisk-wskdeploy/deployers"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"github.com/spf13/cobra"
 	"os"
 	"path"
 	"path/filepath"
 	"regexp"
 	"strings"
-	"github.com/spf13/cobra"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
-	"github.com/apache/incubator-openwhisk-client-go/whisk"
-	"github.com/apache/incubator-openwhisk-wskdeploy/deployers"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 )
 
 var stderr = ""
@@ -40,11 +40,11 @@ var stdout = ""
 
 // TODO(#683) short and long desc. should be translated for i18n
 var RootCmd = &cobra.Command{
-	Use:		"wskdeploy",
-	SilenceErrors:	true,
-	SilenceUsage:	true,
-	Short:		wski18n.T(wski18n.ID_CMD_DESC_SHORT_ROOT),
-	Long:		wski18n.T(wski18n.ID_CMD_DESC_LONG_ROOT),
+	Use:           "wskdeploy",
+	SilenceErrors: true,
+	SilenceUsage:  true,
+	Short:         wski18n.T(wski18n.ID_CMD_DESC_SHORT_ROOT),
+	Long:          wski18n.T(wski18n.ID_CMD_DESC_LONG_ROOT),
 	// Uncomment the following line if your bare application
 	// has an action associated with it:
 	RunE: RootCmdImp,
diff --git a/cmd/undeploy.go b/cmd/undeploy.go
index e1a962a..c079bcc 100644
--- a/cmd/undeploy.go
+++ b/cmd/undeploy.go
@@ -24,11 +24,11 @@ import (
 
 // undeployCmd represents the undeploy command
 var undeployCmd = &cobra.Command{
-	Use:   "undeploy",
-	SuggestFor: []string {"remove"},
-	Short: "Undeploy assets from OpenWhisk",
-	Long:  `Undeploy removes deployed assets from the manifest and deployment files`,
-	RunE:  UndeployCmdImp,
+	Use:        "undeploy",
+	SuggestFor: []string{"remove"},
+	Short:      "Undeploy assets from OpenWhisk",
+	Long:       `Undeploy removes deployed assets from the manifest and deployment files`,
+	RunE:       UndeployCmdImp,
 }
 
 func UndeployCmdImp(cmd *cobra.Command, args []string) error {
diff --git a/cmd/version.go b/cmd/version.go
index ef63f79..7ad5bc5 100644
--- a/cmd/version.go
+++ b/cmd/version.go
@@ -19,10 +19,10 @@ package cmd
 
 import (
 	"fmt"
-	"github.com/spf13/cobra"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"github.com/spf13/cobra"
 )
 
 func init() {
@@ -32,7 +32,7 @@ func init() {
 var versionCmd = &cobra.Command{
 	Use:        "version",
 	SuggestFor: []string{"edition", "release"},
-	Short:        wski18n.T(wski18n.ID_CMD_DESC_SHORT_VERSION),
+	Short:      wski18n.T(wski18n.ID_CMD_DESC_SHORT_VERSION),
 	Run: func(cmd *cobra.Command, args []string) {
 		wskprint.PrintlnOpenWhiskOutput(
 			// Note: no need to translate the following string
diff --git a/deployers/deploymentreader.go b/deployers/deploymentreader.go
index d490865..03c7abc 100644
--- a/deployers/deploymentreader.go
+++ b/deployers/deploymentreader.go
@@ -20,11 +20,11 @@ package deployers
 import (
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskenv"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 )
 
 type DeploymentReader struct {
@@ -79,8 +79,8 @@ func (reader *DeploymentReader) bindPackageInputsAndAnnotations() error {
 			warningString := wski18n.T(
 				wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 				map[string]interface{}{
-					wski18n.KEY_OLD: parsers.YAML_KEY_PACKAGE,
-					wski18n.KEY_NEW: parsers.YAML_KEY_PACKAGES,
+					wski18n.KEY_OLD:       parsers.YAML_KEY_PACKAGE,
+					wski18n.KEY_NEW:       parsers.YAML_KEY_PACKAGES,
 					wski18n.KEY_FILE_TYPE: wski18n.DEPLOYMENT})
 			wskprint.PrintlnOpenWhiskWarning(warningString)
 		} else {
@@ -108,8 +108,8 @@ func (reader *DeploymentReader) bindPackageInputsAndAnnotations() error {
 			warningString := wski18n.T(
 				wski18n.ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X,
 				map[string]interface{}{
-					wski18n.KEY_KEY: wski18n.PACKAGE_NAME,
-					wski18n.KEY_NAME: packName })
+					wski18n.KEY_KEY:  wski18n.PACKAGE_NAME,
+					wski18n.KEY_NAME: packName})
 			wskprint.PrintlnOpenWhiskWarning(warningString)
 			break
 		}
@@ -161,8 +161,8 @@ func (reader *DeploymentReader) bindPackageInputsAndAnnotations() error {
 					warningString := wski18n.T(
 						wski18n.ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X,
 						map[string]interface{}{
-							wski18n.KEY_KEY: parsers.YAML_KEY_ANNOTATION,
-							wski18n.KEY_NAME: name })
+							wski18n.KEY_KEY:  parsers.YAML_KEY_ANNOTATION,
+							wski18n.KEY_NAME: name})
 					wskprint.PrintlnOpenWhiskWarning(warningString)
 					return wskderrors.NewYAMLFileFormatError(reader.DeploymentDescriptor.Filepath, warningString)
 				}
@@ -255,8 +255,8 @@ func (reader *DeploymentReader) bindActionInputsAndAnnotations() error {
 						errMsg := wski18n.T(
 							wski18n.ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X,
 							map[string]interface{}{
-								wski18n.KEY_KEY: parsers.YAML_KEY_ANNOTATION,
-								wski18n.KEY_NAME: name })
+								wski18n.KEY_KEY:  parsers.YAML_KEY_ANNOTATION,
+								wski18n.KEY_NAME: name})
 						return wskderrors.NewYAMLFileFormatError(reader.DeploymentDescriptor.Filepath, errMsg)
 					}
 				}
@@ -321,7 +321,7 @@ func (reader *DeploymentReader) bindTriggerInputsAndAnnotations() error {
 							wski18n.ID_DEBUG_KEY_VERIFY_X_name_X_key_X,
 							map[string]interface{}{
 								wski18n.KEY_NAME: parsers.YAML_KEY_ANNOTATION,
-								wski18n.KEY_KEY: keyVal.Key})
+								wski18n.KEY_KEY:  keyVal.Key})
 						wskprint.PrintOpenWhiskVerbose(utils.Flags.Verbose, traceMsg)
 
 						// TODO() verify logic and add Verbose/trace say "found" or "not found"
@@ -353,8 +353,8 @@ func (reader *DeploymentReader) bindTriggerInputsAndAnnotations() error {
 						errMsg := wski18n.T(
 							wski18n.ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X,
 							map[string]interface{}{
-								wski18n.KEY_KEY: parsers.YAML_KEY_ANNOTATION,
-								wski18n.KEY_NAME: name })
+								wski18n.KEY_KEY:  parsers.YAML_KEY_ANNOTATION,
+								wski18n.KEY_NAME: name})
 						return wskderrors.NewYAMLFileFormatError(reader.DeploymentDescriptor.Filepath, errMsg)
 					}
 				}
diff --git a/deployers/deploymentreader_test.go b/deployers/deploymentreader_test.go
index 2c2aeb1..ff58544 100644
--- a/deployers/deploymentreader_test.go
+++ b/deployers/deploymentreader_test.go
@@ -22,8 +22,8 @@ package deployers
 import (
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/stretchr/testify/assert"
-	"testing"
 	"reflect"
+	"testing"
 )
 
 var sd *ServiceDeployer
@@ -171,10 +171,10 @@ func TestDeploymentReader_BindAssets_ActionAnnotations(t *testing.T) {
 
 	pkg_name := "packageActionAnnotations"
 	pkg := dReader.DeploymentDescriptor.Packages[pkg_name]
-	assert.NotNil(t, pkg, "Could not find package with name " + pkg_name)
+	assert.NotNil(t, pkg, "Could not find package with name "+pkg_name)
 	action_name := "helloworld"
 	action := dReader.DeploymentDescriptor.GetProject().Packages[pkg_name].Actions[action_name]
-	assert.NotNil(t, action, "Could not find action with name " + action_name)
+	assert.NotNil(t, action, "Could not find action with name "+action_name)
 	actual_annotations := action.Annotations
 	expected_annotations := map[string]interface{}{
 		"action_annotation_1": "this is annotation 1",
@@ -186,9 +186,9 @@ func TestDeploymentReader_BindAssets_ActionAnnotations(t *testing.T) {
 
 	pkg_name = "packageActionAnnotationsWithWebAction"
 	pkg = dReader.DeploymentDescriptor.Packages[pkg_name]
-	assert.NotNil(t, pkg, "Could not find package with name " + pkg_name)
+	assert.NotNil(t, pkg, "Could not find package with name "+pkg_name)
 	action = dReader.DeploymentDescriptor.GetProject().Packages[pkg_name].Actions[action_name]
-	assert.NotNil(t, action, "Could not find action with name " + action_name)
+	assert.NotNil(t, action, "Could not find action with name "+action_name)
 	actual_annotations = action.Annotations
 	expected_annotations["web-export"] = true
 	assert.Equal(t, len(actual_annotations), len(expected_annotations), "Could not find expected number of annotations specified in manifest file")
@@ -197,9 +197,9 @@ func TestDeploymentReader_BindAssets_ActionAnnotations(t *testing.T) {
 
 	pkg_name = "packageActionAnnotationsFromDeployment"
 	pkg = dReader.DeploymentDescriptor.Packages[pkg_name]
-	assert.NotNil(t, pkg, "Could not find package with name " + pkg_name)
+	assert.NotNil(t, pkg, "Could not find package with name "+pkg_name)
 	action = dReader.DeploymentDescriptor.GetProject().Packages[pkg_name].Actions[action_name]
-	assert.NotNil(t, action, "Could not find action with name " + action_name)
+	assert.NotNil(t, action, "Could not find action with name "+action_name)
 	actual_annotations = action.Annotations
 	expected_annotations = map[string]interface{}{
 		"action_annotation_1": "this is annotation 1 from deployment",
@@ -209,4 +209,3 @@ func TestDeploymentReader_BindAssets_ActionAnnotations(t *testing.T) {
 	eq = reflect.DeepEqual(actual_annotations, expected_annotations)
 	assert.True(t, eq, "Expected list of annotations does not match with actual list, expected annotations: %v actual annotations: %v", expected_annotations, actual_annotations)
 }
-
diff --git a/deployers/filesystemreader.go b/deployers/filesystemreader.go
index 05d6137..646d34e 100644
--- a/deployers/filesystemreader.go
+++ b/deployers/filesystemreader.go
@@ -27,8 +27,8 @@ import (
 	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 )
 
 // name of directory that can contain source code
@@ -51,7 +51,7 @@ func (reader *FileSystemReader) ReadProjectDirectory(manifest *parsers.YAML) ([]
 	dbgMsg := wski18n.T(wski18n.ID_DEBUG_PROJECT_SEARCH_X_path_X_key_X,
 		map[string]interface{}{
 			wski18n.KEY_PATH: reader.serviceDeployer.ProjectPath,
-			wski18n.KEY_KEY: wski18n.ACTIONS})
+			wski18n.KEY_KEY:  wski18n.ACTIONS})
 	wskprint.PrintlnOpenWhiskVerbose(utils.Flags.Verbose, dbgMsg)
 
 	projectPathCount, err := reader.getFilePathCount(reader.serviceDeployer.ProjectPath)
@@ -69,7 +69,7 @@ func (reader *FileSystemReader) ReadProjectDirectory(manifest *parsers.YAML) ([]
 			}
 
 			if !f.IsDir() {
-				if pathCount - projectPathCount == 1 || strings.HasPrefix(fpath, reader.serviceDeployer.ProjectPath + "/" + FileSystemSourceDirectoryName) {
+				if pathCount-projectPathCount == 1 || strings.HasPrefix(fpath, reader.serviceDeployer.ProjectPath+"/"+FileSystemSourceDirectoryName) {
 					ext := filepath.Ext(fpath)
 
 					// TODO(#692) do not hardcoded known extensions here, create a util that associates
@@ -98,12 +98,12 @@ func (reader *FileSystemReader) ReadProjectDirectory(manifest *parsers.YAML) ([]
 						actions = append(actions, record)
 					}
 				}
-			} else if strings.HasPrefix(fpath, reader.serviceDeployer.ProjectPath + "/" + FileSystemSourceDirectoryName) {
+			} else if strings.HasPrefix(fpath, reader.serviceDeployer.ProjectPath+"/"+FileSystemSourceDirectoryName) {
 				// Inform user of what reader is doing
 				dbgMsg := wski18n.T(wski18n.ID_DEBUG_PROJECT_SEARCH_X_path_X_key_X,
 					map[string]interface{}{
 						wski18n.KEY_PATH: filepath.Base(fpath),
-						wski18n.KEY_KEY: wski18n.ACTION_CODE})
+						wski18n.KEY_KEY:  wski18n.ACTION_CODE})
 				wskprint.PrintlnOpenWhiskVerbose(utils.Flags.Verbose, dbgMsg)
 
 				// TODO(#694) It appears there is no code to do what the debug message suggests
diff --git a/deployers/manifestreader.go b/deployers/manifestreader.go
index a8df385..06fbdce 100644
--- a/deployers/manifestreader.go
+++ b/deployers/manifestreader.go
@@ -135,7 +135,7 @@ func (reader *ManifestReader) SetDependencies(deps map[string]utils.DependencyRe
 	for name, dep := range deps {
 		n := strings.Split(name, ":")
 		depName := n[1]
-		if (depName == "") {
+		if depName == "" {
 			return nil
 		}
 		if !dep.IsBinding && !reader.IsUndeploy {
diff --git a/deployers/manifestreader_test.go b/deployers/manifestreader_test.go
index 5e5851a..b4cc672 100644
--- a/deployers/manifestreader_test.go
+++ b/deployers/manifestreader_test.go
@@ -20,10 +20,10 @@
 package deployers
 
 import (
+	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
 	"github.com/stretchr/testify/assert"
 	"testing"
-	"github.com/apache/incubator-openwhisk-client-go/whisk"
 )
 
 var mr *ManifestReader
diff --git a/deployers/servicedeployer.go b/deployers/servicedeployer.go
index 72f3540..8861619 100644
--- a/deployers/servicedeployer.go
+++ b/deployers/servicedeployer.go
@@ -20,6 +20,13 @@ package deployers
 import (
 	"bufio"
 	"fmt"
+	"github.com/apache/incubator-openwhisk-client-go/whisk"
+	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"net/http"
 	"os"
 	"path"
 	"reflect"
@@ -27,13 +34,6 @@ import (
 	"strings"
 	"sync"
 	"time"
-	"net/http"
-	"github.com/apache/incubator-openwhisk-client-go/whisk"
-	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 )
 
 const (
@@ -181,8 +181,8 @@ func (deployer *ServiceDeployer) ConstructDeploymentPlan() error {
 	if manifest.Application.Name != "" {
 		wskprint.PrintOpenWhiskWarning(wski18n.T(wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 			map[string]interface{}{
-				wski18n.KEY_OLD: parsers.YAML_KEY_APPLICATION,
-				wski18n.KEY_NEW: parsers.YAML_KEY_PROJECT,
+				wski18n.KEY_OLD:       parsers.YAML_KEY_APPLICATION,
+				wski18n.KEY_NEW:       parsers.YAML_KEY_PROJECT,
 				wski18n.KEY_FILE_TYPE: wski18n.MANIFEST}))
 	}
 
@@ -199,8 +199,8 @@ func (deployer *ServiceDeployer) ConstructDeploymentPlan() error {
 		if deploymentReader.DeploymentDescriptor.Application.Name != "" {
 			wskprint.PrintOpenWhiskWarning(wski18n.T(wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 				map[string]interface{}{
-					wski18n.KEY_OLD: parsers.YAML_KEY_APPLICATION,
-					wski18n.KEY_NEW: parsers.YAML_KEY_PROJECT,
+					wski18n.KEY_OLD:       parsers.YAML_KEY_APPLICATION,
+					wski18n.KEY_NEW:       parsers.YAML_KEY_PROJECT,
 					wski18n.KEY_FILE_TYPE: wski18n.DEPLOYMENT}))
 		}
 
@@ -210,11 +210,11 @@ func (deployer *ServiceDeployer) ConstructDeploymentPlan() error {
 			if projectNameDeploy != projectName {
 				errorString := wski18n.T(wski18n.ID_ERR_NAME_MISMATCH_X_key_X_dname_X_dpath_X_mname_X_moath_X,
 					map[string]interface{}{
-						wski18n.KEY_KEY: parsers.YAML_KEY_PROJECT,
+						wski18n.KEY_KEY:             parsers.YAML_KEY_PROJECT,
 						wski18n.KEY_DEPLOYMENT_NAME: projectNameDeploy,
 						wski18n.KEY_DEPLOYMENT_PATH: deployer.DeploymentPath,
-						wski18n.KEY_MANIFEST_NAME: projectName,
-						wski18n.KEY_MANIFEST_PATH: deployer.ManifestPath})
+						wski18n.KEY_MANIFEST_NAME:   projectName,
+						wski18n.KEY_MANIFEST_PATH:   deployer.ManifestPath})
 				return wskderrors.NewYAMLFileFormatError(manifest.Filepath, errorString)
 			}
 		}
@@ -269,8 +269,8 @@ func (deployer *ServiceDeployer) ConstructUnDeploymentPlan() (*DeploymentProject
 	if manifest.Application.Name != "" {
 		wskprint.PrintOpenWhiskWarning(wski18n.T(wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 			map[string]interface{}{
-				wski18n.KEY_OLD: parsers.YAML_KEY_APPLICATION,
-				wski18n.KEY_NEW: parsers.YAML_KEY_PROJECT,
+				wski18n.KEY_OLD:       parsers.YAML_KEY_APPLICATION,
+				wski18n.KEY_NEW:       parsers.YAML_KEY_PROJECT,
 				wski18n.KEY_FILE_TYPE: wski18n.MANIFEST}))
 	}
 
@@ -286,8 +286,8 @@ func (deployer *ServiceDeployer) ConstructUnDeploymentPlan() (*DeploymentProject
 		if deploymentReader.DeploymentDescriptor.Application.Name != "" {
 			wskprint.PrintOpenWhiskWarning(wski18n.T(wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 				map[string]interface{}{
-					wski18n.KEY_OLD: parsers.YAML_KEY_APPLICATION,
-					wski18n.KEY_NEW: parsers.YAML_KEY_PROJECT,
+					wski18n.KEY_OLD:       parsers.YAML_KEY_APPLICATION,
+					wski18n.KEY_NEW:       parsers.YAML_KEY_PROJECT,
 					wski18n.KEY_FILE_TYPE: wski18n.DEPLOYMENT}))
 		}
 
@@ -297,11 +297,11 @@ func (deployer *ServiceDeployer) ConstructUnDeploymentPlan() (*DeploymentProject
 			if projectNameDeploy != projectName {
 				errorString := wski18n.T(wski18n.ID_ERR_NAME_MISMATCH_X_key_X_dname_X_dpath_X_mname_X_moath_X,
 					map[string]interface{}{
-						wski18n.KEY_KEY: parsers.YAML_KEY_PROJECT,
+						wski18n.KEY_KEY:             parsers.YAML_KEY_PROJECT,
 						wski18n.KEY_DEPLOYMENT_NAME: projectNameDeploy,
 						wski18n.KEY_DEPLOYMENT_PATH: deployer.DeploymentPath,
-						wski18n.KEY_MANIFEST_NAME: projectName,
-						wski18n.KEY_MANIFEST_PATH: deployer.ManifestPath})
+						wski18n.KEY_MANIFEST_NAME:   projectName,
+						wski18n.KEY_MANIFEST_PATH:   deployer.ManifestPath})
 				return deployer.Deployment, wskderrors.NewYAMLFileFormatError(manifest.Filepath, errorString)
 			}
 		}
@@ -542,8 +542,8 @@ func (deployer *ServiceDeployer) RefreshManagedActions(packageName string, ma ma
 
 				output := wski18n.T(wski18n.ID_MSG_MANAGED_FOUND_DELETED_X_key_X_name_X_project_X,
 					map[string]interface{}{
-						wski18n.KEY_KEY: parsers.YAML_KEY_ACTION,
-						wski18n.KEY_NAME: actionName,
+						wski18n.KEY_KEY:     parsers.YAML_KEY_ACTION,
+						wski18n.KEY_NAME:    actionName,
 						wski18n.KEY_PROJECT: aa[utils.OW_PROJECT_NAME]})
 				wskprint.PrintOpenWhiskWarning(output)
 
@@ -583,8 +583,8 @@ func (deployer *ServiceDeployer) RefreshManagedTriggers(ma map[string]interface{
 				// we have found a trigger which was earlier part of the current project
 				output := wski18n.T(wski18n.ID_MSG_MANAGED_FOUND_DELETED_X_key_X_name_X_project_X,
 					map[string]interface{}{
-						wski18n.KEY_KEY: parsers.YAML_KEY_TRIGGER,
-						wski18n.KEY_NAME: trigger.Name,
+						wski18n.KEY_KEY:     parsers.YAML_KEY_TRIGGER,
+						wski18n.KEY_NAME:    trigger.Name,
 						wski18n.KEY_PROJECT: ma[utils.OW_PROJECT_NAME]})
 				wskprint.PrintOpenWhiskWarning(output)
 
@@ -635,8 +635,8 @@ func (deployer *ServiceDeployer) RefreshManagedPackages(ma map[string]interface{
 			if pa[utils.OW_PROJECT_NAME] == ma[utils.OW_PROJECT_NAME] && pa[utils.OW_PROJECT_HASH] != ma[utils.OW_PROJECT_HASH] {
 				output := wski18n.T(wski18n.ID_MSG_MANAGED_FOUND_DELETED_X_key_X_name_X_project_X,
 					map[string]interface{}{
-						wski18n.KEY_KEY: parsers.YAML_KEY_PACKAGE,
-						wski18n.KEY_NAME: pkg.Name,
+						wski18n.KEY_KEY:     parsers.YAML_KEY_PACKAGE,
+						wski18n.KEY_NAME:    pkg.Name,
 						wski18n.KEY_PROJECT: pa[utils.OW_PROJECT_NAME]})
 				wskprint.PrintOpenWhiskWarning(output)
 
@@ -1295,7 +1295,7 @@ func retry(attempts int, sleep time.Duration, callback func() error) error {
 				time.Sleep(sleep)
 				warningMsg := wski18n.T(wski18n.ID_WARN_COMMAND_RETRY,
 					map[string]interface{}{
-						wski18n.KEY_CMD: strconv.Itoa(i+1),
+						wski18n.KEY_CMD: strconv.Itoa(i + 1),
 						wski18n.KEY_ERR: err.Error()})
 				wskprint.PrintlnOpenWhiskWarning(warningMsg)
 			} else {
@@ -1453,48 +1453,48 @@ func (deployer *ServiceDeployer) getDependentDeployer(depName string, depRecord
 	return depServiceDeployer, nil
 }
 
-func displayPreprocessingInfo(entity string, name string, onDeploy bool){
+func displayPreprocessingInfo(entity string, name string, onDeploy bool) {
 
 	var msgKey string
-	if onDeploy{
+	if onDeploy {
 		msgKey = wski18n.ID_MSG_ENTITY_DEPLOYING_X_key_X_name_X
 	} else {
 		msgKey = wski18n.ID_MSG_ENTITY_UNDEPLOYING_X_key_X_name_X
 	}
 	msg := wski18n.T(msgKey,
 		map[string]interface{}{
-			wski18n.KEY_KEY: entity,
+			wski18n.KEY_KEY:  entity,
 			wski18n.KEY_NAME: name})
 	wskprint.PrintlnOpenWhiskInfo(msg)
 }
 
-func displayPostprocessingInfo(entity string, name string, onDeploy bool){
+func displayPostprocessingInfo(entity string, name string, onDeploy bool) {
 
 	var msgKey string
-	if onDeploy{
+	if onDeploy {
 		msgKey = wski18n.ID_MSG_ENTITY_DEPLOYED_SUCCESS_X_key_X_name_X
 	} else {
 		msgKey = wski18n.ID_MSG_ENTITY_UNDEPLOYED_SUCCESS_X_key_X_name_X
 	}
 	msg := wski18n.T(msgKey,
 		map[string]interface{}{
-			wski18n.KEY_KEY: entity,
+			wski18n.KEY_KEY:  entity,
 			wski18n.KEY_NAME: name})
 	wskprint.PrintlnOpenWhiskInfo(msg)
 }
 
-func createWhiskClientError(err *whisk.WskError, response *http.Response, entity string, onCreate bool)(*wskderrors.WhiskClientError){
+func createWhiskClientError(err *whisk.WskError, response *http.Response, entity string, onCreate bool) *wskderrors.WhiskClientError {
 
 	var msgKey string
-	if onCreate{
+	if onCreate {
 		msgKey = wski18n.ID_ERR_ENTITY_CREATE_X_key_X_err_X_code_X
 	} else {
 		msgKey = wski18n.ID_ERR_ENTITY_DELETE_X_key_X_err_X_code_X
 	}
 	errString := wski18n.T(msgKey,
 		map[string]interface{}{
-			wski18n.KEY_KEY: entity,
-			wski18n.KEY_ERR: err.Error(),
+			wski18n.KEY_KEY:  entity,
+			wski18n.KEY_ERR:  err.Error(),
 			wski18n.KEY_CODE: strconv.Itoa(err.ExitCode)})
 	wskprint.PrintOpenWhiskVerbose(utils.Flags.Verbose, errString)
 
diff --git a/deployers/whiskclient.go b/deployers/whiskclient.go
index 715750c..83d2380 100644
--- a/deployers/whiskclient.go
+++ b/deployers/whiskclient.go
@@ -29,17 +29,17 @@ import (
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/parsers"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
 )
 
 // Possible sources for config info (e.g., API Host, Auth Key, Namespace)
 const (
-	SOURCE_WSKPROPS			= ".wskprops"
-	SOURCE_WHISK_PROPERTIES		= "whisk.properties"
-	SOURCE_INTERACTIVE_INPUT	= "interactve input"	// TODO() i18n?
-	SOURCE_DEFAULT_VALUE		= "wskdeploy default"	// TODO() i18n?
+	SOURCE_WSKPROPS          = ".wskprops"
+	SOURCE_WHISK_PROPERTIES  = "whisk.properties"
+	SOURCE_INTERACTIVE_INPUT = "interactve input"  // TODO() i18n?
+	SOURCE_DEFAULT_VALUE     = "wskdeploy default" // TODO() i18n?
 )
 
 type PropertyValue struct {
@@ -97,8 +97,8 @@ func NewWhiskConfig(proppath string, deploymentPath string, manifestPath string,
 	cert = GetPropertyValue(cert, certfile, wski18n.COMMAND_LINE)
 
 	// TODO() i18n
-        // Print all flags / values if verbose
-	wskprint.PrintlnOpenWhiskVerbose(utils.Flags.Verbose, wski18n.CONFIGURATION + ":\n" + utils.Flags.Format())
+	// Print all flags / values if verbose
+	wskprint.PrintlnOpenWhiskVerbose(utils.Flags.Verbose, wski18n.CONFIGURATION+":\n"+utils.Flags.Format())
 
 	// TODO() split this logic into its own function
 	// TODO() merge with the same logic used against manifest file (below)
@@ -236,15 +236,15 @@ func NewWhiskConfig(proppath string, deploymentPath string, manifestPath string,
 	}
 
 	mode := true
-	if (len(cert.Value) != 0 && len(key.Value) != 0) {
+	if len(cert.Value) != 0 && len(key.Value) != 0 {
 		mode = false
 	}
 
 	clientConfig = &whisk.Config{
 		AuthToken: credential.Value, //Authtoken
-		Namespace: namespace.Value, //Namespace
+		Namespace: namespace.Value,  //Namespace
 		Host:      apiHost.Value,
-		Version:   "v1",  // TODO() should not be hardcoded, should prompt/warn user of default
+		Version:   "v1", // TODO() should not be hardcoded, should prompt/warn user of default
 		Cert:      cert.Value,
 		Key:       key.Value,
 		Insecure:  mode, // true if you want to ignore certificate signing
@@ -255,7 +255,7 @@ func NewWhiskConfig(proppath string, deploymentPath string, manifestPath string,
 	return clientConfig, err
 }
 
-func validateClientConfig(credential PropertyValue, apiHost PropertyValue, namespace PropertyValue) (error) {
+func validateClientConfig(credential PropertyValue, apiHost PropertyValue, namespace PropertyValue) error {
 
 	// Display error message based upon which config value was missing
 	if len(credential.Value) == 0 || len(apiHost.Value) == 0 || len(namespace.Value) == 0 {
@@ -292,7 +292,7 @@ func validateClientConfig(credential PropertyValue, apiHost PropertyValue, names
 }
 
 // TODO() perhaps move into its own package "wskread" and add support for passing in default value
-var promptForValue = func(msg string) (string) {
+var promptForValue = func(msg string) string {
 	reader := bufio.NewReader(os.Stdin)
 	fmt.Print(msg)
 
diff --git a/deployers/whiskclient_test.go b/deployers/whiskclient_test.go
index 5f81e03..1de6d2b 100644
--- a/deployers/whiskclient_test.go
+++ b/deployers/whiskclient_test.go
@@ -20,30 +20,30 @@
 package deployers
 
 import (
-	"testing"
-	"github.com/stretchr/testify/assert"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/stretchr/testify/assert"
+	"testing"
 )
 
 const (
-	DEPLOYMENT_HOST = "sample.deployment.openwhisk.org"
-	DEPLOYMENT_AUTH = "sample-deployment-credential"
+	DEPLOYMENT_HOST      = "sample.deployment.openwhisk.org"
+	DEPLOYMENT_AUTH      = "sample-deployment-credential"
 	DEPLOYMENT_NAMESPACE = "sample-deployment-namespace"
 
-	MANIFEST_HOST = "sample.manifest.openwhisk.org"
-	MANIFEST_AUTH = "sample-manifest-credential"
+	MANIFEST_HOST      = "sample.manifest.openwhisk.org"
+	MANIFEST_AUTH      = "sample-manifest-credential"
 	MANIFEST_NAMESPACE = "sample-manifest-namespace"
 
-	CLI_HOST = "sample.cli.openwhisk.org"
-	CLI_AUTH = "sample-cli-credential"
+	CLI_HOST      = "sample.cli.openwhisk.org"
+	CLI_AUTH      = "sample-cli-credential"
 	CLI_NAMESPACE = "sample-cli-namespace"
 
-	WSKPROPS_HOST = "openwhisk.ng.bluemix.net"
-	WSKPROPS_AUTH = "a4f8c502:123zO3xZCLrMN6v2BKK"
+	WSKPROPS_HOST      = "openwhisk.ng.bluemix.net"
+	WSKPROPS_AUTH      = "a4f8c502:123zO3xZCLrMN6v2BKK"
 	WSKPROPS_NAMESPACE = "guest"
 
-	WSKPROPS_KEY = "test_key_file"
+	WSKPROPS_KEY  = "test_key_file"
 	WSKPROPS_CERT = "test_cert_file"
 )
 
diff --git a/parsers/deploy_parser.go b/parsers/deploy_parser.go
index 88c5265..8f985fe 100644
--- a/parsers/deploy_parser.go
+++ b/parsers/deploy_parser.go
@@ -19,8 +19,8 @@ package parsers
 
 import (
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
-	"gopkg.in/yaml.v2"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
+	"gopkg.in/yaml.v2"
 )
 
 func (dm *YAMLParser) unmarshalDeployment(input []byte, deploy *YAML) error {
@@ -35,22 +35,21 @@ func (dm *YAMLParser) ParseDeployment(deploymentPath string) (*YAML, error) {
 	dplyyaml := YAML{}
 	content, err := new(utils.ContentReader).LocalReader.ReadLocal(deploymentPath)
 
-   	 if err != nil {
-        	return &dplyyaml, wskderrors.NewFileReadError(deploymentPath, err.Error())
-    	}
+	if err != nil {
+		return &dplyyaml, wskderrors.NewFileReadError(deploymentPath, err.Error())
+	}
 
 	err = dm.unmarshalDeployment(content, &dplyyaml)
 
 	if err != nil {
-        	return &dplyyaml, wskderrors.NewYAMLParserErr(deploymentPath, err)
-    	}
+		return &dplyyaml, wskderrors.NewYAMLParserErr(deploymentPath, err)
+	}
 
 	dplyyaml.Filepath = deploymentPath
-    	dplyyamlEnvVar := ReadEnvVariable(&dplyyaml)
+	dplyyamlEnvVar := ReadEnvVariable(&dplyyaml)
 	return dplyyamlEnvVar, nil
 }
 
-
 //********************Project functions*************************//
 //This is for parse the deployment yaml file.
 func (app *Project) GetPackageList() []Package {
diff --git a/parsers/manifest_parser.go b/parsers/manifest_parser.go
index 37d318e..d913c1c 100644
--- a/parsers/manifest_parser.go
+++ b/parsers/manifest_parser.go
@@ -18,20 +18,20 @@
 package parsers
 
 import (
+	"encoding/base64"
 	"errors"
+	"fmt"
+	"gopkg.in/yaml.v2"
 	"io/ioutil"
 	"os"
 	"path"
 	"strings"
-	"encoding/base64"
-	"fmt"
-	"gopkg.in/yaml.v2"
 
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskenv"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 )
 
@@ -245,7 +245,7 @@ func (dm *YAMLParser) ComposePackage(pkg Package, packageName string, filePath s
 		warningString := wski18n.T(
 			wski18n.ID_WARN_KEY_MISSING_X_key_X_value_X,
 			map[string]interface{}{
-				wski18n.KEY_KEY: wski18n.PACKAGE_VERSION,
+				wski18n.KEY_KEY:   wski18n.PACKAGE_VERSION,
 				wski18n.KEY_VALUE: DEFAULT_PACKAGE_VERSION})
 		wskprint.PrintOpenWhiskWarning(warningString)
 
@@ -265,7 +265,7 @@ func (dm *YAMLParser) ComposePackage(pkg Package, packageName string, filePath s
 		warningString := wski18n.T(
 			wski18n.ID_WARN_KEY_MISSING_X_key_X_value_X,
 			map[string]interface{}{
-				wski18n.KEY_KEY: wski18n.PACKAGE_LICENSE,
+				wski18n.KEY_KEY:   wski18n.PACKAGE_LICENSE,
 				wski18n.KEY_VALUE: DEFAULT_PACKAGE_LICENSE})
 		wskprint.PrintOpenWhiskWarning(warningString)
 
@@ -359,7 +359,7 @@ func (dm *YAMLParser) ComposeSequences(namespace string, sequences map[string]Se
 		var components []string
 		for _, a := range actionList {
 			act := strings.TrimSpace(a)
-			if !strings.ContainsRune(act, '/') && !strings.HasPrefix(act, packageName +"/") {
+			if !strings.ContainsRune(act, '/') && !strings.HasPrefix(act, packageName+"/") {
 				act = path.Join(packageName, act)
 			}
 			components = append(components, path.Join("/"+namespace, act))
@@ -435,8 +435,8 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		wskaction.Exec = new(whisk.Exec)
 
 		/*
-   		 *  Action.Function
-   		 */
+		 *  Action.Function
+		 */
 		//set action.Function to action.Location
 		//because Location is deprecated in Action entity
 		if action.Function == "" && action.Location != "" {
@@ -480,9 +480,9 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 				if len(kind) == 0 && len(action.Runtime) == 0 && ext != utils.ZIP_FILE_EXTENSION {
 					errMessage := wski18n.T(wski18n.ID_ERR_RUNTIME_MISMATCH_X_runtime_X_ext_X_action_X,
 						map[string]interface{}{
-							wski18n.KEY_RUNTIME: action.Runtime,
+							wski18n.KEY_RUNTIME:   action.Runtime,
 							wski18n.KEY_EXTENTION: ext,
-							wski18n.KEY_ACTION: action.Name})
+							wski18n.KEY_ACTION:    action.Name})
 					return nil, wskderrors.NewInvalidRuntimeError(errMessage,
 						splitFilePath[len(splitFilePath)-1], action.Name,
 						action.Runtime,
@@ -504,7 +504,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 					errMessage := wski18n.T(wski18n.ID_ERR_RUNTIME_INVALID_X_runtime_X_action_X,
 						map[string]interface{}{
 							wski18n.KEY_RUNTIME: action.Runtime,
-							wski18n.KEY_ACTION: action.Name})
+							wski18n.KEY_ACTION:  action.Name})
 					return nil, wskderrors.NewInvalidRuntimeError(errMessage,
 						splitFilePath[len(splitFilePath)-1],
 						action.Name,
@@ -517,12 +517,12 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		}
 
 		/*
- 		 *  Action.Runtime
-		 *  Perform few checks if action runtime is specified in manifest YAML file
-		 *  (1) Check if specified runtime is one of the supported runtimes by OpenWhisk server
-		 *  (2) Check if specified runtime is consistent with action source file extensions
-		 *  Set the action runtime to match with the source file extension, if wskdeploy is not invoked in strict mode
- 		 */
+			 		 *  Action.Runtime
+					 *  Perform few checks if action runtime is specified in manifest YAML file
+					 *  (1) Check if specified runtime is one of the supported runtimes by OpenWhisk server
+					 *  (2) Check if specified runtime is consistent with action source file extensions
+					 *  Set the action runtime to match with the source file extension, if wskdeploy is not invoked in strict mode
+		*/
 		if action.Runtime != "" {
 			if utils.CheckExistRuntime(action.Runtime, utils.SupportedRunTimes) {
 				// for zip actions, rely on the runtimes from the manifest file as it can not be derived from the action source file extension
@@ -535,9 +535,9 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 					} else {
 						warnStr := wski18n.T(wski18n.ID_ERR_RUNTIME_MISMATCH_X_runtime_X_ext_X_action_X,
 							map[string]interface{}{
-								wski18n.KEY_RUNTIME: action.Runtime,
+								wski18n.KEY_RUNTIME:   action.Runtime,
 								wski18n.KEY_EXTENTION: ext,
-								wski18n.KEY_ACTION: action.Name})
+								wski18n.KEY_ACTION:    action.Name})
 						wskprint.PrintOpenWhiskWarning(warnStr)
 
 						// even if runtime is not consistent with file extension, deploy action with specified runtime in strict mode
@@ -547,7 +547,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 							warnStr := wski18n.T(wski18n.ID_WARN_RUNTIME_CHANGED_X_runtime_X_action_X,
 								map[string]interface{}{
 									wski18n.KEY_RUNTIME: wskaction.Exec.Kind,
-									wski18n.KEY_ACTION: action.Name})
+									wski18n.KEY_ACTION:  action.Name})
 							wskprint.PrintOpenWhiskWarning(warnStr)
 						}
 					}
@@ -556,7 +556,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 				warnStr := wski18n.T(wski18n.ID_ERR_RUNTIME_INVALID_X_runtime_X_action_X,
 					map[string]interface{}{
 						wski18n.KEY_RUNTIME: action.Runtime,
-						wski18n.KEY_ACTION: action.Name})
+						wski18n.KEY_ACTION:  action.Name})
 				wskprint.PrintOpenWhiskWarning(warnStr)
 
 				if ext == utils.ZIP_FILE_EXTENSION {
@@ -571,7 +571,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 					warnStr := wski18n.T(wski18n.ID_WARN_RUNTIME_CHANGED_X_runtime_X_action_X,
 						map[string]interface{}{
 							wski18n.KEY_RUNTIME: wskaction.Exec.Kind,
-							wski18n.KEY_ACTION: action.Name})
+							wski18n.KEY_ACTION:  action.Name})
 					wskprint.PrintOpenWhiskWarning(warnStr)
 				}
 
@@ -607,7 +607,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		}
 
 		/*
- 		 *  Action.Outputs
+		 *  Action.Outputs
 		 */
 		keyValArr = make(whisk.KeyValueArr, 0)
 		for name, param := range action.Outputs {
@@ -632,8 +632,8 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		}
 
 		/*
- 		 *  Action.Annotations
- 		 */
+		 *  Action.Annotations
+		 */
 		listOfAnnotations := make(whisk.KeyValueArr, 0)
 		for name, value := range action.Annotations {
 			var keyVal whisk.KeyValue
@@ -650,8 +650,8 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		}
 
 		/*
-  		 *  Web Export
-  		 */
+		 *  Web Export
+		 */
 		// TODO() add boolean value const
 		if action.Webexport == "true" {
 			wskaction.Annotations, errorParser = utils.WebAction("yes", listOfAnnotations, false)
@@ -661,10 +661,10 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 		}
 
 		/*
- 		 *  Action.Limits
- 		 */
-		if action.Limits!=nil {
-			wsklimits :=  new(whisk.Limits)
+		 *  Action.Limits
+		 */
+		if action.Limits != nil {
+			wsklimits := new(whisk.Limits)
 
 			// TODO() use LIMITS_SUPPORTED in yamlparser to enumerata through instead of hardcoding
 			// perhaps change into a tuple
@@ -689,7 +689,7 @@ func (dm *YAMLParser) ComposeActions(filePath string, actions map[string]Action,
 					map[string]interface{}{wski18n.KEY_LIMIT: LIMIT_VALUE_LOG_SIZE})
 				wskprint.PrintOpenWhiskWarning(warningString)
 			}
-			if wsklimits.Timeout!=nil || wsklimits.Memory!=nil || wsklimits.Logsize!=nil {
+			if wsklimits.Timeout != nil || wsklimits.Memory != nil || wsklimits.Logsize != nil {
 				wskaction.Limits = wsklimits
 			}
 
@@ -753,8 +753,8 @@ func (dm *YAMLParser) ComposeTriggers(filePath string, pkg Package, ma whisk.Key
 			warningString := wski18n.T(
 				wski18n.ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X,
 				map[string]interface{}{
-					wski18n.KEY_OLD: YAML_KEY_SOURCE,
-					wski18n.KEY_NEW: YAML_KEY_FEED,
+					wski18n.KEY_OLD:       YAML_KEY_SOURCE,
+					wski18n.KEY_NEW:       YAML_KEY_FEED,
 					wski18n.KEY_FILE_TYPE: wski18n.MANIFEST})
 			wskprint.PrintOpenWhiskWarning(warningString)
 		}
@@ -840,7 +840,6 @@ func (dm *YAMLParser) ComposeRulesFromAllPackages(manifest *YAML) ([]*whisk.Rule
 	return rules, nil
 }
 
-
 func (dm *YAMLParser) ComposeRules(pkg Package, packageName string) ([]*whisk.Rule, error) {
 	var r1 []*whisk.Rule = make([]*whisk.Rule, 0)
 
diff --git a/parsers/manifest_parser_test.go b/parsers/manifest_parser_test.go
index dde8866..5b45dc1 100644
--- a/parsers/manifest_parser_test.go
+++ b/parsers/manifest_parser_test.go
@@ -20,195 +20,194 @@
 package parsers
 
 import (
-    "github.com/stretchr/testify/assert"
-    "io/ioutil"
-    "os"
-    "testing"
-    "fmt"
-    "path/filepath"
-    "reflect"
-    "strconv"
-    "strings"
-    "github.com/apache/incubator-openwhisk-client-go/whisk"
-    "github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
-    "github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"fmt"
+	"github.com/apache/incubator-openwhisk-client-go/whisk"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
+	"github.com/stretchr/testify/assert"
+	"io/ioutil"
+	"os"
+	"path/filepath"
+	"reflect"
+	"strconv"
+	"strings"
+	"testing"
 )
 
 const (
-    // local test assert messages
-    TEST_MSG_PACKAGE_NAME_MISSING = "Package named [%s] missing."
-    TEST_MSG_PACKAGE_NAME_MISMATCH = "Package name mismatched."
-    TEST_MSG_ACTION_NUMBER_MISMATCH = "Number of Actions mismatched."
-    TEST_MSG_ACTION_NAME_MISSING = "Action named [%s] does not exist."
-    TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH = "Action function path mismatched."
-    TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH = "Action function runtime mismatched."
-    TEST_MSG_ACTION_FUNCTION_MAIN_MISMATCH = "Action function main name mismatch."
-    TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH = "Action parameter [%s] had a type mismatch."
-    TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH = "Action parameter [%s] had a value mismatch."
-    TEST_MSG_PARAMETER_NUMBER_MISMATCH = "Number of Paramaters mismatched."
-    TEST_MSG_MANIFEST_UNMARSHALL_ERROR_EXPECTED = "Manifest [%s]: Expected Unmarshal error."
-    TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED = "Manifest [%s]: Expected runtime error."
-
-    // local error messages
-    TEST_ERROR_MANIFEST_PARSE_FAILURE = "Manifest [%s]: Failed to parse."
-    TEST_ERROR_MANIFEST_READ_FAILURE = "Manifest [%s]: Failed to ReadFile()."
-    TEST_ERROR_MANIFEST_DATA_UNMARSHALL = "Manifest [%s]: Failed to Unmarshall manifest."
+	// local test assert messages
+	TEST_MSG_PACKAGE_NAME_MISSING                   = "Package named [%s] missing."
+	TEST_MSG_PACKAGE_NAME_MISMATCH                  = "Package name mismatched."
+	TEST_MSG_ACTION_NUMBER_MISMATCH                 = "Number of Actions mismatched."
+	TEST_MSG_ACTION_NAME_MISSING                    = "Action named [%s] does not exist."
+	TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH          = "Action function path mismatched."
+	TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH       = "Action function runtime mismatched."
+	TEST_MSG_ACTION_FUNCTION_MAIN_MISMATCH          = "Action function main name mismatch."
+	TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH         = "Action parameter [%s] had a type mismatch."
+	TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH        = "Action parameter [%s] had a value mismatch."
+	TEST_MSG_PARAMETER_NUMBER_MISMATCH              = "Number of Paramaters mismatched."
+	TEST_MSG_MANIFEST_UNMARSHALL_ERROR_EXPECTED     = "Manifest [%s]: Expected Unmarshal error."
+	TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED = "Manifest [%s]: Expected runtime error."
+
+	// local error messages
+	TEST_ERROR_MANIFEST_PARSE_FAILURE   = "Manifest [%s]: Failed to parse."
+	TEST_ERROR_MANIFEST_READ_FAILURE    = "Manifest [%s]: Failed to ReadFile()."
+	TEST_ERROR_MANIFEST_DATA_UNMARSHALL = "Manifest [%s]: Failed to Unmarshall manifest."
 )
 
 func init() {
-    op, error := utils.ParseOpenWhisk("")
-    if error == nil {
-        utils.SupportedRunTimes = utils.ConvertToMap(op)
-        utils.DefaultRunTimes = utils.DefaultRuntimes(op)
-        utils.FileExtensionRuntimeKindMap = utils.FileExtensionRuntimes(op)
-    }
+	op, error := utils.ParseOpenWhisk("")
+	if error == nil {
+		utils.SupportedRunTimes = utils.ConvertToMap(op)
+		utils.DefaultRunTimes = utils.DefaultRuntimes(op)
+		utils.FileExtensionRuntimeKindMap = utils.FileExtensionRuntimes(op)
+	}
 }
 
-func testReadAndUnmarshalManifest(t *testing.T, pathManifest string)(YAML, error){
-    // Init YAML struct and attempt to Unmarshal YAML byte[] data
-    m := YAML{}
+func testReadAndUnmarshalManifest(t *testing.T, pathManifest string) (YAML, error) {
+	// Init YAML struct and attempt to Unmarshal YAML byte[] data
+	m := YAML{}
 
-    // read raw bytes of manifest.yaml file
-    data, err := ioutil.ReadFile(pathManifest)
+	// read raw bytes of manifest.yaml file
+	data, err := ioutil.ReadFile(pathManifest)
 
-    if err != nil{
-        t.Error(fmt.Sprintf(TEST_ERROR_MANIFEST_READ_FAILURE, pathManifest))
-        return m, err
-    }
+	if err != nil {
+		t.Error(fmt.Sprintf(TEST_ERROR_MANIFEST_READ_FAILURE, pathManifest))
+		return m, err
+	}
 
-    err = NewYAMLParser().Unmarshal([]byte(data), &m)
-    return m, err
+	err = NewYAMLParser().Unmarshal([]byte(data), &m)
+	return m, err
 }
 
-
 /*
-    testUnmarshalManifestAndActionBasic
+   testUnmarshalManifestAndActionBasic
 
-    This function validates basic Manifest Package and Action keys including
-    - Package name mismatch (single "package" only)
-    - Number of Actions mismatch
-    - Action Function path mismatch
-    - Action runtime (name) mismatch
+   This function validates basic Manifest Package and Action keys including
+   - Package name mismatch (single "package" only)
+   - Number of Actions mismatch
+   - Action Function path mismatch
+   - Action runtime (name) mismatch
 
-    and optionally,
-    = Action function "main" name mismatch
+   and optionally,
+   = Action function "main" name mismatch
 
-    Returns:
-    - N/A
- */
+   Returns:
+   - N/A
+*/
 func testUnmarshalManifestAndActionBasic(t *testing.T,
-        pathManifest string,
-        namePackage string,
-        numActions int,
-        nameAction string,
-        pathFunction string,
-        nameRuntime string,
-        nameMain string) (YAML, error){
-
-    // Test that we are able to read the manifest file and unmarshall into YAML struct
-    m, err := testReadAndUnmarshalManifest(t, pathManifest)
-
-    // nothing to test if Unmarshal returns an err
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_DATA_UNMARSHALL, pathManifest))
-    } else {
-        // test package name
-        actualResult := m.Package.Packagename
-        assert.Equal(t, namePackage, actualResult, TEST_MSG_PACKAGE_NAME_MISMATCH)
-
-        // test # of actions in manifest
-        if numActions >0 {
-            actualResult = string(len(m.Package.Actions))
-            assert.Equal(t, string(numActions), actualResult, TEST_MSG_ACTION_NUMBER_MISMATCH)
-        }
-
-        // get an action from map of actions where key is action name and value is Action struct
-        if action, ok := m.Package.Actions[nameAction]; ok {
-
-            // test action's function path
-            assert.Equal(t, pathFunction, action.Function, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
-
-            // test action's runtime
-            assert.Equal(t, nameRuntime, action.Runtime, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
-
-            // test action's "Main" function
-            if nameMain != "" {
-                assert.Equal(t, nameMain, action.Main, TEST_MSG_ACTION_FUNCTION_MAIN_MISMATCH)
-            }
-
-        } else {
-            t.Error(fmt.Sprintf(TEST_MSG_ACTION_NAME_MISSING, nameAction))
-        }
-    }
-    return m, nil
+	pathManifest string,
+	namePackage string,
+	numActions int,
+	nameAction string,
+	pathFunction string,
+	nameRuntime string,
+	nameMain string) (YAML, error) {
+
+	// Test that we are able to read the manifest file and unmarshall into YAML struct
+	m, err := testReadAndUnmarshalManifest(t, pathManifest)
+
+	// nothing to test if Unmarshal returns an err
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_DATA_UNMARSHALL, pathManifest))
+	} else {
+		// test package name
+		actualResult := m.Package.Packagename
+		assert.Equal(t, namePackage, actualResult, TEST_MSG_PACKAGE_NAME_MISMATCH)
+
+		// test # of actions in manifest
+		if numActions > 0 {
+			actualResult = string(len(m.Package.Actions))
+			assert.Equal(t, string(numActions), actualResult, TEST_MSG_ACTION_NUMBER_MISMATCH)
+		}
+
+		// get an action from map of actions where key is action name and value is Action struct
+		if action, ok := m.Package.Actions[nameAction]; ok {
+
+			// test action's function path
+			assert.Equal(t, pathFunction, action.Function, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
+
+			// test action's runtime
+			assert.Equal(t, nameRuntime, action.Runtime, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+
+			// test action's "Main" function
+			if nameMain != "" {
+				assert.Equal(t, nameMain, action.Main, TEST_MSG_ACTION_FUNCTION_MAIN_MISMATCH)
+			}
+
+		} else {
+			t.Error(fmt.Sprintf(TEST_MSG_ACTION_NAME_MISSING, nameAction))
+		}
+	}
+	return m, nil
 }
 
-func testUnmarshalTemporaryFile (data []byte, filename string) (p *YAMLParser, m *YAML, t string) {
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, filename)
-    if err == nil {
-        defer os.Remove(tmpfile.Name()) // clean up
-        if _, err := tmpfile.Write(data); err == nil {
-            // read and parse manifest.yaml file
-            p = NewYAMLParser()
-            m, _ = p.ParseManifest(tmpfile.Name())
-        }
-    }
-    t = tmpfile.Name()
-    tmpfile.Close()
-    return
+func testUnmarshalTemporaryFile(data []byte, filename string) (p *YAMLParser, m *YAML, t string) {
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, filename)
+	if err == nil {
+		defer os.Remove(tmpfile.Name()) // clean up
+		if _, err := tmpfile.Write(data); err == nil {
+			// read and parse manifest.yaml file
+			p = NewYAMLParser()
+			m, _ = p.ParseManifest(tmpfile.Name())
+		}
+	}
+	t = tmpfile.Name()
+	tmpfile.Close()
+	return
 }
 
 // Test 1: validate manifest_parser:Unmarshal() method with a sample manifest in NodeJS
 // validate that manifest_parser is able to read and parse the manifest data
 func TestUnmarshalForHelloNodeJS(t *testing.T) {
-    testUnmarshalManifestAndActionBasic(t,
-        "../tests/dat/manifest_hello_nodejs.yaml",  // Manifest path
-        "helloworld",           // Package name
-        1,                      // # of Actions
-        "helloNodejs",          // Action name
-        "actions/hello.js",     // Function path
-        "nodejs:6",             // "Runtime
-        "")                     // "Main" function name
+	testUnmarshalManifestAndActionBasic(t,
+		"../tests/dat/manifest_hello_nodejs.yaml", // Manifest path
+		"helloworld",                              // Package name
+		1,                                         // # of Actions
+		"helloNodejs",                             // Action name
+		"actions/hello.js",                        // Function path
+		"nodejs:6",                                // "Runtime
+		"")                                        // "Main" function name
 }
 
 // Test 2: validate manifest_parser:Unmarshal() method with a sample manifest in Java
 // validate that manifest_parser is able to read and parse the manifest data
 func TestUnmarshalForHelloJava(t *testing.T) {
-    testUnmarshalManifestAndActionBasic(t,
-        "../tests/dat/manifest_hello_java_jar.yaml",  // Manifest path
-        "helloworld",           // Package name
-        1,                      // # of Actions
-        "helloJava",            // Action name
-        "actions/hello.jar",    // Function path
-        "java",                 // "Runtime
-        "Hello")                // "Main" function name
+	testUnmarshalManifestAndActionBasic(t,
+		"../tests/dat/manifest_hello_java_jar.yaml", // Manifest path
+		"helloworld",                                // Package name
+		1,                                           // # of Actions
+		"helloJava",                                 // Action name
+		"actions/hello.jar",                         // Function path
+		"java",                                      // "Runtime
+		"Hello")                                     // "Main" function name
 }
 
 // Test 3: validate manifest_parser:Unmarshal() method with a sample manifest in Python
 // validate that manifest_parser is able to read and parse the manifest data
 func TestUnmarshalForHelloPython(t *testing.T) {
-    testUnmarshalManifestAndActionBasic(t,
-        "../tests/dat/manifest_hello_python.yaml",  // Manifest path
-        "helloworld",           // Package name
-        1,                      // # of Actions
-        "helloPython",          // Action name
-        "actions/hello.py",     // Function path
-        "python",               // "Runtime
-        "")                     // "Main" function name
+	testUnmarshalManifestAndActionBasic(t,
+		"../tests/dat/manifest_hello_python.yaml", // Manifest path
+		"helloworld",                              // Package name
+		1,                                         // # of Actions
+		"helloPython",                             // Action name
+		"actions/hello.py",                        // Function path
+		"python",                                  // "Runtime
+		"")                                        // "Main" function name
 }
 
 // Test 4: validate manifest_parser:Unmarshal() method with a sample manifest in Swift
 // validate that manifest_parser is able to read and parse the manifest data
 func TestUnmarshalForHelloSwift(t *testing.T) {
-    testUnmarshalManifestAndActionBasic(t,
-        "../tests/dat/manifest_hello_swift.yaml",  // Manifest path
-        "helloworld",           // Package name
-        1,                      // # of Actions
-        "helloSwift",           // Action name
-        "actions/hello.swift",  // Function path
-        "swift",                // "Runtime
-        "")                     // "Main" function name
+	testUnmarshalManifestAndActionBasic(t,
+		"../tests/dat/manifest_hello_swift.yaml", // Manifest path
+		"helloworld",                             // Package name
+		1,                                        // # of Actions
+		"helloSwift",                             // Action name
+		"actions/hello.swift",                    // Function path
+		"swift",                                  // "Runtime
+		"")                                       // "Main" function name
 }
 
 // Test 5: validate manifest_parser:Unmarshal() method for an action with parameters
@@ -216,44 +215,44 @@ func TestUnmarshalForHelloSwift(t *testing.T) {
 // validate two input parameters and their values
 func TestUnmarshalForHelloWithParams(t *testing.T) {
 
-    TEST_ACTION_NAME := "helloWithParams"
-    TEST_PARAM_NAME_1 := "name"
-    TEST_PARAM_VALUE_1 := "Amy"
-    TEST_PARAM_NAME_2 := "place"
-    TEST_PARAM_VALUE_2 := "Paris"
-
-    m, err := testUnmarshalManifestAndActionBasic(t,
-        "../tests/dat/manifest_hello_nodejs_with_params.yaml",  // Manifest path
-        "helloworld",                   // Package name
-        1,                              // # of Actions
-        TEST_ACTION_NAME,               // Action name
-        "actions/hello-with-params.js", // Function path
-        "nodejs:6",                     // "Runtime
-        "")                             // "Main" function name
-
-    if err != nil {
-        if action, ok := m.Package.Actions[TEST_ACTION_NAME]; ok {
-
-            // test action parameters
-            actualResult := action.Inputs[TEST_PARAM_NAME_1].Value.(string)
-            assert.Equal(t, TEST_PARAM_VALUE_1, actualResult,
-                fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, TEST_PARAM_NAME_1))
-
-            actualResult = action.Inputs[TEST_PARAM_NAME_2].Value.(string)
-            assert.Equal(t, TEST_PARAM_VALUE_2, actualResult,
-                fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, TEST_PARAM_NAME_2))
-
-        }
-    }
+	TEST_ACTION_NAME := "helloWithParams"
+	TEST_PARAM_NAME_1 := "name"
+	TEST_PARAM_VALUE_1 := "Amy"
+	TEST_PARAM_NAME_2 := "place"
+	TEST_PARAM_VALUE_2 := "Paris"
+
+	m, err := testUnmarshalManifestAndActionBasic(t,
+		"../tests/dat/manifest_hello_nodejs_with_params.yaml", // Manifest path
+		"helloworld",                   // Package name
+		1,                              // # of Actions
+		TEST_ACTION_NAME,               // Action name
+		"actions/hello-with-params.js", // Function path
+		"nodejs:6",                     // "Runtime
+		"")                             // "Main" function name
+
+	if err != nil {
+		if action, ok := m.Package.Actions[TEST_ACTION_NAME]; ok {
+
+			// test action parameters
+			actualResult := action.Inputs[TEST_PARAM_NAME_1].Value.(string)
+			assert.Equal(t, TEST_PARAM_VALUE_1, actualResult,
+				fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, TEST_PARAM_NAME_1))
+
+			actualResult = action.Inputs[TEST_PARAM_NAME_2].Value.(string)
+			assert.Equal(t, TEST_PARAM_VALUE_2, actualResult,
+				fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, TEST_PARAM_NAME_2))
+
+		}
+	}
 }
 
 // Test 6: validate manifest_parser:Unmarshal() method for an invalid manifest
 // manifest_parser should report an error when a package section is missing
 func TestUnmarshalForMissingPackage(t *testing.T) {
-    TEST_MANIFEST := "../tests/dat/manifest_invalid_package_missing.yaml"
+	TEST_MANIFEST := "../tests/dat/manifest_invalid_package_missing.yaml"
 
-    _, err := testReadAndUnmarshalManifest(t, TEST_MANIFEST)
-    assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_MANIFEST_UNMARSHALL_ERROR_EXPECTED, TEST_MANIFEST))
+	_, err := testReadAndUnmarshalManifest(t, TEST_MANIFEST)
+	assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_MANIFEST_UNMARSHALL_ERROR_EXPECTED, TEST_MANIFEST))
 }
 
 /*
@@ -262,237 +261,237 @@ func TestUnmarshalForMissingPackage(t *testing.T) {
  inputs section.
 */
 func TestParseManifestForMultiLineParams(t *testing.T) {
-    // manifest file is located under ../tests folder
-    manifestFile := "../tests/dat/manifest_validate_multiline_params.yaml"
-    // read and parse manifest.yaml file
-    m, err := NewYAMLParser().ParseManifest(manifestFile)
-
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
-    }
-
-    // validate package name should be "validate"
-    packageName := "validate"
-
-    // validate this package contains one action
-    expectedActionsCount := 1
-    actualActionsCount := len(m.Packages[packageName].Actions)
-    assert.Equal(t, expectedActionsCount, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
-
-    // here Package.Actions holds a map of map[string]Action
-    // where string is the action name so in case you create two actions with
-    // same name, will go unnoticed
-    // also, the Action struct does not have name field set it to action name
-    actionName := "validate_multiline_params"
-
-    if action, ok := m.Packages[packageName].Actions[actionName]; ok {
-        // test action function's path
-        expectedResult := "actions/dump_params.js"
-        actualResult := action.Function
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
-
-        // test action's runtime
-        expectedResult = "nodejs:6"
-        actualResult = action.Runtime
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
-
-        // test # input params
-        expectedResult = strconv.FormatInt(10, 10)
-        actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
-
-        // validate inputs to this action
-        for input, param := range action.Inputs {
-            switch input {
-            case "param_string_value_only":
-                expectedResult = "foo"
-                actualResult = param.Value.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_int_value_only":
-                expectedResult = strconv.FormatInt(123, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_float_value_only":
-                expectedResult = strconv.FormatFloat(3.14, 'f', -1, 64)
-                actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_string_type_and_value_only":
-                expectedResult = "foo"
-                actualResult = param.Value.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-                expectedResult = "string"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_string_type_only":
-                expectedResult = "string"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_integer_type_only":
-                expectedResult = "integer"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_float_type_only":
-                expectedResult = "float"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_string_with_default":
-                expectedResult = "string"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-                expectedResult = "bar"
-                actualResult = param.Default.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_integer_with_default":
-                expectedResult = "integer"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-                expectedResult = strconv.FormatInt(-1, 10)
-                actualResult = strconv.FormatInt(int64(param.Default.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_float_with_default":
-                expectedResult = "float"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
-                expectedResult = strconv.FormatFloat(2.9, 'f', -1, 64)
-                actualResult = strconv.FormatFloat(param.Default.(float64), 'f', -1, 64)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            }
-        }
-
-        // validate Outputs from this action
-        for output, param := range action.Outputs {
-            switch output {
-            case "payload":
-                expectedType := "string"
-                actualType := param.Type
-                assert.Equal(t, expectedType, actualType, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
-                expectedDesc := "parameter dump"
-                actualDesc := param.Description
-                assert.Equal(t, expectedDesc, actualDesc, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-
-            }
-        }
-    }
+	// manifest file is located under ../tests folder
+	manifestFile := "../tests/dat/manifest_validate_multiline_params.yaml"
+	// read and parse manifest.yaml file
+	m, err := NewYAMLParser().ParseManifest(manifestFile)
+
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
+	}
+
+	// validate package name should be "validate"
+	packageName := "validate"
+
+	// validate this package contains one action
+	expectedActionsCount := 1
+	actualActionsCount := len(m.Packages[packageName].Actions)
+	assert.Equal(t, expectedActionsCount, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
+
+	// here Package.Actions holds a map of map[string]Action
+	// where string is the action name so in case you create two actions with
+	// same name, will go unnoticed
+	// also, the Action struct does not have name field set it to action name
+	actionName := "validate_multiline_params"
+
+	if action, ok := m.Packages[packageName].Actions[actionName]; ok {
+		// test action function's path
+		expectedResult := "actions/dump_params.js"
+		actualResult := action.Function
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
+
+		// test action's runtime
+		expectedResult = "nodejs:6"
+		actualResult = action.Runtime
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+
+		// test # input params
+		expectedResult = strconv.FormatInt(10, 10)
+		actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
+
+		// validate inputs to this action
+		for input, param := range action.Inputs {
+			switch input {
+			case "param_string_value_only":
+				expectedResult = "foo"
+				actualResult = param.Value.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_int_value_only":
+				expectedResult = strconv.FormatInt(123, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_float_value_only":
+				expectedResult = strconv.FormatFloat(3.14, 'f', -1, 64)
+				actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_string_type_and_value_only":
+				expectedResult = "foo"
+				actualResult = param.Value.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+				expectedResult = "string"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_string_type_only":
+				expectedResult = "string"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_integer_type_only":
+				expectedResult = "integer"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_float_type_only":
+				expectedResult = "float"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_string_with_default":
+				expectedResult = "string"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+				expectedResult = "bar"
+				actualResult = param.Default.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_integer_with_default":
+				expectedResult = "integer"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+				expectedResult = strconv.FormatInt(-1, 10)
+				actualResult = strconv.FormatInt(int64(param.Default.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_float_with_default":
+				expectedResult = "float"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
+				expectedResult = strconv.FormatFloat(2.9, 'f', -1, 64)
+				actualResult = strconv.FormatFloat(param.Default.(float64), 'f', -1, 64)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			}
+		}
+
+		// validate Outputs from this action
+		for output, param := range action.Outputs {
+			switch output {
+			case "payload":
+				expectedType := "string"
+				actualType := param.Type
+				assert.Equal(t, expectedType, actualType, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
+				expectedDesc := "parameter dump"
+				actualDesc := param.Description
+				assert.Equal(t, expectedDesc, actualDesc, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+
+			}
+		}
+	}
 }
 
 // Test 8: validate manifest_parser:ParseManifest() method for single line parameters
 // manifest_parser should be able to parse input section with different types of values
 func TestParseManifestForSingleLineParams(t *testing.T) {
-    // manifest file is located under ../tests folder
-    manifestFile := "../tests/dat/manifest_validate_singleline_params.yaml"
-
-    // read and parse manifest.yaml file
-    m, err := NewYAMLParser().ParseManifest(manifestFile)
-
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
-    }
-
-    // validate package name should be "validate"
-    packageName := "validate"
-
-    // validate this package contains one action
-    expectedActionsCount := 1
-    actualActionsCount := len(m.Packages[packageName].Actions)
-    assert.Equal(t, expectedActionsCount, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
-
-    actionName := "validate_singleline_params"
-    if action, ok := m.Packages[packageName].Actions[actionName]; ok {
-        // test Action function's path
-        expectedResult := "actions/dump_params.js"
-        actualResult := action.Function
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
-
-        // test Action runtime
-        expectedResult = "nodejs:6"
-        actualResult = action.Runtime
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
-
-        // test # of inputs
-        expectedResult = strconv.FormatInt(22, 10)
-        actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
-
-        // validate Inputs to this action
-        for input, param := range action.Inputs {
-            switch input {
-            case "param_simple_string":
-                expectedResult = "foo"
-                actualResult = param.Value.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_integer_1":
-                expectedResult = strconv.FormatInt(1, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_integer_2":
-                expectedResult = strconv.FormatInt(0, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_integer_3":
-                expectedResult = strconv.FormatInt(-1, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_integer_4":
-                expectedResult = strconv.FormatInt(99999, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_integer_5":
-                expectedResult = strconv.FormatInt(-99999, 10)
-                actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_float_1":
-                expectedResult = strconv.FormatFloat(1.1, 'f', -1, 64)
-                actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_float_2":
-                expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
-                actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_float_3":
-                expectedResult = strconv.FormatFloat(-1.1, 'f', -1, 64)
-                actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_env_var_1":
-                expectedResult = "$GOPATH"
-                actualResult = param.Value.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_invalid_env_var":
-                expectedResult = "$DollarSignNotInEnv"
-                actualResult = param.Value.(string)
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            case "param_simple_implied_empty":
-                assert.Nil(t, param.Value, "Expected nil")
-            case "param_simple_explicit_empty_1":
-                actualResult = param.Value.(string)
-                assert.Empty(t, actualResult)
-            case "param_simple_explicit_empty_2":
-                actualResult = param.Value.(string)
-                assert.Empty(t, actualResult)
-            }
-        }
-
-        // validate Outputs from this action
-        for output, param := range action.Outputs {
-            switch output {
-            case "payload":
-                expectedResult = "string"
-                actualResult = param.Type
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
-
-                expectedResult = "parameter dump"
-                actualResult = param.Description
-                assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
-            }
-        }
-    }
+	// manifest file is located under ../tests folder
+	manifestFile := "../tests/dat/manifest_validate_singleline_params.yaml"
+
+	// read and parse manifest.yaml file
+	m, err := NewYAMLParser().ParseManifest(manifestFile)
+
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
+	}
+
+	// validate package name should be "validate"
+	packageName := "validate"
+
+	// validate this package contains one action
+	expectedActionsCount := 1
+	actualActionsCount := len(m.Packages[packageName].Actions)
+	assert.Equal(t, expectedActionsCount, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
+
+	actionName := "validate_singleline_params"
+	if action, ok := m.Packages[packageName].Actions[actionName]; ok {
+		// test Action function's path
+		expectedResult := "actions/dump_params.js"
+		actualResult := action.Function
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
+
+		// test Action runtime
+		expectedResult = "nodejs:6"
+		actualResult = action.Runtime
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+
+		// test # of inputs
+		expectedResult = strconv.FormatInt(22, 10)
+		actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
+
+		// validate Inputs to this action
+		for input, param := range action.Inputs {
+			switch input {
+			case "param_simple_string":
+				expectedResult = "foo"
+				actualResult = param.Value.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_integer_1":
+				expectedResult = strconv.FormatInt(1, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_integer_2":
+				expectedResult = strconv.FormatInt(0, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_integer_3":
+				expectedResult = strconv.FormatInt(-1, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_integer_4":
+				expectedResult = strconv.FormatInt(99999, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_integer_5":
+				expectedResult = strconv.FormatInt(-99999, 10)
+				actualResult = strconv.FormatInt(int64(param.Value.(int)), 10)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_float_1":
+				expectedResult = strconv.FormatFloat(1.1, 'f', -1, 64)
+				actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_float_2":
+				expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
+				actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_float_3":
+				expectedResult = strconv.FormatFloat(-1.1, 'f', -1, 64)
+				actualResult = strconv.FormatFloat(param.Value.(float64), 'f', -1, 64)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_env_var_1":
+				expectedResult = "$GOPATH"
+				actualResult = param.Value.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_invalid_env_var":
+				expectedResult = "$DollarSignNotInEnv"
+				actualResult = param.Value.(string)
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			case "param_simple_implied_empty":
+				assert.Nil(t, param.Value, "Expected nil")
+			case "param_simple_explicit_empty_1":
+				actualResult = param.Value.(string)
+				assert.Empty(t, actualResult)
+			case "param_simple_explicit_empty_2":
+				actualResult = param.Value.(string)
+				assert.Empty(t, actualResult)
+			}
+		}
+
+		// validate Outputs from this action
+		for output, param := range action.Outputs {
+			switch output {
+			case "payload":
+				expectedResult = "string"
+				actualResult = param.Type
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, param))
+
+				expectedResult = "parameter dump"
+				actualResult = param.Description
+				assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, param))
+			}
+		}
+	}
 }
 
 // Test 9: validate manifest_parser.ComposeActions() method for implicit runtimes
 // when a runtime of an action is not provided, manifest_parser determines the runtime
 // based on the file extension of an action file
 func TestComposeActionsForImplicitRuntimes(t *testing.T) {
-    data :=
-        `package:
+	data :=
+		`package:
   name: helloworld
   actions:
     helloNodejs:
@@ -504,403 +503,402 @@ func TestComposeActionsForImplicitRuntimes(t *testing.T) {
       function: ../tests/src/integration/helloworld/actions/hello.py
     helloSwift:
       function: ../tests/src/integration/helloworld/actions/hello.swift`
-    p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
-    actions, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
-    var expectedResult string
-    if err == nil {
-	for i := 0; i < len(actions); i++ {
-	    if actions[i].Action.Name == "helloNodejs" {
-		expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["js"]]
-	    } else if actions[i].Action.Name == "helloJava" {
-		expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["jar"]]
-	    } else if actions[i].Action.Name == "helloPython" {
-		expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["py"]]
-	    } else if actions[i].Action.Name == "helloSwift" {
-		expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["swift"]]
-	    }
-	    actualResult := actions[i].Action.Exec.Kind
-	    assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+	p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
+	actions, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
+	var expectedResult string
+	if err == nil {
+		for i := 0; i < len(actions); i++ {
+			if actions[i].Action.Name == "helloNodejs" {
+				expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["js"]]
+			} else if actions[i].Action.Name == "helloJava" {
+				expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["jar"]]
+			} else if actions[i].Action.Name == "helloPython" {
+				expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["py"]]
+			} else if actions[i].Action.Name == "helloSwift" {
+				expectedResult = utils.DefaultRunTimes[utils.FileExtensionRuntimeKindMap["swift"]]
+			}
+			actualResult := actions[i].Action.Exec.Kind
+			assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+		}
 	}
-    }
 
 }
 
-
 // Test 10(1): validate manifest_parser.ComposeActions() method for invalid runtimes
 // when the action has a source file written in unsupported runtimes, manifest_parser should
 // report an error for that action
 func TestComposeActionsForInvalidRuntime_1(t *testing.T) {
-    data := `packages:
+	data := `packages:
     helloworld:
         actions:
             helloInvalidRuntime:
                 function: ../tests/src/integration/common/wskdeploy.go`
-    p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
-    _, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
-    assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
+	p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
+	_, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
+	assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
 }
 
 // Test 10(2): validate manifest_parser.ComposeActions() method for invalid runtimes
 // when a runtime of an action is missing for zip action, manifest_parser should
 // report an error for that action
 func TestComposeActionsForInvalidRuntime_2(t *testing.T) {
-    data := `packages:
+	data := `packages:
     helloworld:
         actions:
             helloInvalidRuntime:
                 function: ../tests/src/integration/runtimetests/src/helloworld/`
-    p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
-    _, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
-    assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
+	p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
+	_, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
+	assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
 }
 
 // Test 10(3): validate manifest_parser.ComposeActions() method for invalid runtimes
 // when a runtime of an action is missing for zip action, manifest_parser should
 // report an error for that action
 func TestComposeActionsForInvalidRuntime_3(t *testing.T) {
-    data := `packages:
+	data := `packages:
     helloworld:
         actions:
             helloInvalidRuntime:
                 function: ../tests/src/integration/runtimetests/src/helloworld/helloworld.zip`
-    p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
-    _, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
-    assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
+	p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
+	_, err := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
+	assert.NotNil(t, err, fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_ERROR_EXPECTED, tmpfile))
 }
 
 // Test 10(3): validate manifest_parser.ComposeActions() method for valid runtimes with zip action
 // when a runtime of a zip action is set to one of the supported runtimes, manifest_parser should
 // return a valid actionRecord with specified runtime
 func TestComposeActionsForValidRuntime_ZipAction(t *testing.T) {
-    data := `packages:
+	data := `packages:
     helloworld:
         actions:
             hello:
                 function: ../tests/src/integration/runtimetests/src/helloworld/helloworld.zip
                 runtime: nodejs:6`
-    p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
-    actions, _ := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
-    for _, action := range actions {
-        if action.Action.Name == "hello" {
-            assert.Equal(t, action.Action.Exec.Kind, "nodejs:6", fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH, action))
-        }
-
-    }
+	p, m, tmpfile := testUnmarshalTemporaryFile([]byte(data), "manifest_parser_validate_runtime_")
+	actions, _ := p.ComposeActionsFromAllPackages(m, tmpfile, whisk.KeyValue{})
+	for _, action := range actions {
+		if action.Action.Name == "hello" {
+			assert.Equal(t, action.Action.Exec.Kind, "nodejs:6", fmt.Sprintf(TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH, action))
+		}
+
+	}
 }
 
 // Test 11: validate manifest_parser.ComposeActions() method for single line parameters
 // manifest_parser should be able to parse input section with different types of values
 func TestComposeActionsForSingleLineParams(t *testing.T) {
-    // manifest file is located under ../tests folder
-    manifestFile := "../tests/dat/manifest_validate_singleline_params.yaml"
-
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, err := p.ParseManifest(manifestFile)
-
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
-    }
-
-    // Call the method we are testing
-    actions, err := p.ComposeActionsFromAllPackages(m, manifestFile, whisk.KeyValue{})
-
-    if err == nil {
-        // test # actions
-        assert.Equal(t, 1, len(actions), TEST_MSG_ACTION_NUMBER_MISMATCH)
-
-        action := actions[0]
-
-        /*
-         * Simple 'string' value tests
-         */
-
-        // param_simple_string should value "foo"
-        paramName := "param_simple_string"
-        expectedResult := "foo"
-        actualResult := action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Simple 'integer' value tests
-         */
-
-        // param_simple_integer_1 should have value 1
-        paramName = "param_simple_integer_1"
-        expectedResult = strconv.FormatInt(1, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_integer_2 should have value 0
-        paramName = "param_simple_integer_2"
-        expectedResult = strconv.FormatInt(0, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_integer_3 should have value -1
-        paramName = "param_simple_integer_3"
-        expectedResult = strconv.FormatInt(-1, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_integer_4 should have value 99999
-        paramName = "param_simple_integer_4"
-        expectedResult = strconv.FormatInt(99999, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_integer_5 should have value -99999
-        paramName = "param_simple_integer_5"
-        expectedResult = strconv.FormatInt(-99999, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Simple 'float' value tests
-         */
-
-        // param_simple_float_1 should have value 1.1
-        paramName = "param_simple_float_1"
-        expectedResult = strconv.FormatFloat(1.1, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult,fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_float_2 should have value 0.0
-        paramName = "param_simple_float_2"
-        expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_float_3 should have value -1.1
-        paramName = "param_simple_float_3"
-        expectedResult = strconv.FormatFloat(-1.1, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Environment Variable / dollar ($) notation tests
-         */
-
-        // param_simple_env_var_1 should have value of env. variable $GOPATH
-        paramName = "param_simple_env_var_1"
-        expectedResult = os.Getenv("GOPATH")
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_env_var_2 should have value of env. variable $GOPATH
-        paramName = "param_simple_env_var_2"
-        expectedResult = os.Getenv("GOPATH")
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_env_var_3 should have value of env. variable "${}"
-        paramName = "param_simple_env_var_3"
-        expectedResult = "${}"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_invalid_env_var should have value of ""
-        paramName = "param_simple_invalid_env_var"
-        expectedResult = ""
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Environment Variable concatenation tests
-         */
-
-        // param_simple_env_var_concat_1 should have value of env. variable "$GOPTH/test" empty string
-        paramName = "param_simple_env_var_concat_1"
-        expectedResult = os.Getenv("GOPATH") + "/test"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_env_var_concat_2 should have value of env. variable "" empty string
-        // as the "/test" is treated as part of the environment var. and not concatenated.
-        paramName = "param_simple_env_var_concat_2"
-        expectedResult = ""
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_env_var_concat_3 should have value of env. variable "" empty string
-        paramName = "param_simple_env_var_concat_3"
-        expectedResult = "ddd.ccc." + os.Getenv("GOPATH")
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Empty string tests
-         */
-
-        // param_simple_implied_empty should be ""
-        paramName = "param_simple_implied_empty"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_explicit_empty_1 should be ""
-        paramName = "param_simple_explicit_empty_1"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_explicit_empty_2 should be ""
-        paramName = "param_simple_explicit_empty_2"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        /*
-         * Test values that contain "Type names" (e.g., "string", "integer", "float, etc.)
-         */
-
-        // param_simple_type_string should be "" when value set to "string"
-        paramName = "param_simple_type_string"
-        expectedResult = ""
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_type_integer should be 0.0 when value set to "integer"
-        paramName = "param_simple_type_integer"
-        expectedResult = strconv.FormatInt(0, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_simple_type_float should be 0 when value set to "float"
-        paramName = "param_simple_type_float"
-        expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-    }
+	// manifest file is located under ../tests folder
+	manifestFile := "../tests/dat/manifest_validate_singleline_params.yaml"
+
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, err := p.ParseManifest(manifestFile)
+
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
+	}
+
+	// Call the method we are testing
+	actions, err := p.ComposeActionsFromAllPackages(m, manifestFile, whisk.KeyValue{})
+
+	if err == nil {
+		// test # actions
+		assert.Equal(t, 1, len(actions), TEST_MSG_ACTION_NUMBER_MISMATCH)
+
+		action := actions[0]
+
+		/*
+		 * Simple 'string' value tests
+		 */
+
+		// param_simple_string should value "foo"
+		paramName := "param_simple_string"
+		expectedResult := "foo"
+		actualResult := action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Simple 'integer' value tests
+		 */
+
+		// param_simple_integer_1 should have value 1
+		paramName = "param_simple_integer_1"
+		expectedResult = strconv.FormatInt(1, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_integer_2 should have value 0
+		paramName = "param_simple_integer_2"
+		expectedResult = strconv.FormatInt(0, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_integer_3 should have value -1
+		paramName = "param_simple_integer_3"
+		expectedResult = strconv.FormatInt(-1, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_integer_4 should have value 99999
+		paramName = "param_simple_integer_4"
+		expectedResult = strconv.FormatInt(99999, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_integer_5 should have value -99999
+		paramName = "param_simple_integer_5"
+		expectedResult = strconv.FormatInt(-99999, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Simple 'float' value tests
+		 */
+
+		// param_simple_float_1 should have value 1.1
+		paramName = "param_simple_float_1"
+		expectedResult = strconv.FormatFloat(1.1, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_float_2 should have value 0.0
+		paramName = "param_simple_float_2"
+		expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_float_3 should have value -1.1
+		paramName = "param_simple_float_3"
+		expectedResult = strconv.FormatFloat(-1.1, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Environment Variable / dollar ($) notation tests
+		 */
+
+		// param_simple_env_var_1 should have value of env. variable $GOPATH
+		paramName = "param_simple_env_var_1"
+		expectedResult = os.Getenv("GOPATH")
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_env_var_2 should have value of env. variable $GOPATH
+		paramName = "param_simple_env_var_2"
+		expectedResult = os.Getenv("GOPATH")
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_env_var_3 should have value of env. variable "${}"
+		paramName = "param_simple_env_var_3"
+		expectedResult = "${}"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_invalid_env_var should have value of ""
+		paramName = "param_simple_invalid_env_var"
+		expectedResult = ""
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Environment Variable concatenation tests
+		 */
+
+		// param_simple_env_var_concat_1 should have value of env. variable "$GOPTH/test" empty string
+		paramName = "param_simple_env_var_concat_1"
+		expectedResult = os.Getenv("GOPATH") + "/test"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_env_var_concat_2 should have value of env. variable "" empty string
+		// as the "/test" is treated as part of the environment var. and not concatenated.
+		paramName = "param_simple_env_var_concat_2"
+		expectedResult = ""
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_env_var_concat_3 should have value of env. variable "" empty string
+		paramName = "param_simple_env_var_concat_3"
+		expectedResult = "ddd.ccc." + os.Getenv("GOPATH")
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Empty string tests
+		 */
+
+		// param_simple_implied_empty should be ""
+		paramName = "param_simple_implied_empty"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_explicit_empty_1 should be ""
+		paramName = "param_simple_explicit_empty_1"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_explicit_empty_2 should be ""
+		paramName = "param_simple_explicit_empty_2"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		/*
+		 * Test values that contain "Type names" (e.g., "string", "integer", "float, etc.)
+		 */
+
+		// param_simple_type_string should be "" when value set to "string"
+		paramName = "param_simple_type_string"
+		expectedResult = ""
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_type_integer should be 0.0 when value set to "integer"
+		paramName = "param_simple_type_integer"
+		expectedResult = strconv.FormatInt(0, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_simple_type_float should be 0 when value set to "float"
+		paramName = "param_simple_type_float"
+		expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+	}
 }
 
 // Test 12: validate manifest_parser.ComposeActions() method for multi line parameters
 // manifest_parser should be able to parse input section with different types of values
 func TestComposeActionsForMultiLineParams(t *testing.T) {
-    // manifest file is located under ../tests folder
-    manifestFile := "../tests/dat/manifest_validate_multiline_params.yaml"
-
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, err := p.ParseManifest(manifestFile)
-
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
-    }
-
-    // call the method we are testing
-    actions, err := p.ComposeActionsFromAllPackages(m, manifestFile, whisk.KeyValue{})
-
-    if err == nil {
-        // test # actions
-        assert.Equal(t, 1, len(actions), TEST_MSG_ACTION_NUMBER_MISMATCH)
-
-        action := actions[0]
-
-        // param_string_value_only should be "foo"
-        paramName := "param_string_value_only"
-        expectedResult := "foo"
-        actualResult := action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_int_value_only should be 123
-        paramName = "param_int_value_only"
-        expectedResult = strconv.FormatInt(123, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_float_value_only should be 3.14
-        paramName = "param_float_value_only"
-        expectedResult = strconv.FormatFloat(3.14, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_string_type_and_value_only should be foo
-        paramName = "param_string_type_and_value_only"
-        expectedResult = "foo"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_string_type_only should be ""
-        paramName = "param_string_type_only"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_integer_type_only should be 0
-        paramName = "param_integer_type_only"
-        expectedResult = strconv.FormatInt(0, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_float_type_only should be 0
-        paramName = "param_float_type_only"
-        expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_string_with_default should be "bar"
-        paramName = "param_string_with_default"
-        expectedResult = "bar"
-        actualResult = action.Action.Parameters.GetValue(paramName).(string)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_integer_with_default should be -1
-        paramName = "param_integer_with_default"
-        expectedResult = strconv.FormatInt(-1, 10)
-        actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-
-        // param_float_with_default should be 2.9
-        paramName = "param_float_with_default"
-        expectedResult = strconv.FormatFloat(2.9, 'f', -1, 64)
-        actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
-        assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
-    }
+	// manifest file is located under ../tests folder
+	manifestFile := "../tests/dat/manifest_validate_multiline_params.yaml"
+
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, err := p.ParseManifest(manifestFile)
+
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
+	}
+
+	// call the method we are testing
+	actions, err := p.ComposeActionsFromAllPackages(m, manifestFile, whisk.KeyValue{})
+
+	if err == nil {
+		// test # actions
+		assert.Equal(t, 1, len(actions), TEST_MSG_ACTION_NUMBER_MISMATCH)
+
+		action := actions[0]
+
+		// param_string_value_only should be "foo"
+		paramName := "param_string_value_only"
+		expectedResult := "foo"
+		actualResult := action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_int_value_only should be 123
+		paramName = "param_int_value_only"
+		expectedResult = strconv.FormatInt(123, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_float_value_only should be 3.14
+		paramName = "param_float_value_only"
+		expectedResult = strconv.FormatFloat(3.14, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_string_type_and_value_only should be foo
+		paramName = "param_string_type_and_value_only"
+		expectedResult = "foo"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_string_type_only should be ""
+		paramName = "param_string_type_only"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Empty(t, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_integer_type_only should be 0
+		paramName = "param_integer_type_only"
+		expectedResult = strconv.FormatInt(0, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_float_type_only should be 0
+		paramName = "param_float_type_only"
+		expectedResult = strconv.FormatFloat(0.0, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_string_with_default should be "bar"
+		paramName = "param_string_with_default"
+		expectedResult = "bar"
+		actualResult = action.Action.Parameters.GetValue(paramName).(string)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_integer_with_default should be -1
+		paramName = "param_integer_with_default"
+		expectedResult = strconv.FormatInt(-1, 10)
+		actualResult = strconv.FormatInt(int64(action.Action.Parameters.GetValue(paramName).(int)), 10)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+
+		// param_float_with_default should be 2.9
+		paramName = "param_float_with_default"
+		expectedResult = strconv.FormatFloat(2.9, 'f', -1, 64)
+		actualResult = strconv.FormatFloat(action.Action.Parameters.GetValue(paramName).(float64), 'f', -1, 64)
+		assert.Equal(t, expectedResult, actualResult, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+	}
 }
 
 // Test 13: validate manifest_parser.ComposeActions() method
 func TestComposeActionsForFunction(t *testing.T) {
-    data :=
-        `package:
+	data :=
+		`package:
   name: helloworld
   actions:
     hello1:
       function: ../tests/src/integration/helloworld/actions/hello.js`
-    // (TODO) uncomment this after we add support for action file content from URL
-    // hello2:
-    //  function: https://raw.githubusercontent.com/apache/incubator-openwhisk-wskdeploy/master/tests/isrc/integration/helloworld/manifest.yaml`
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_locations_")
-    if err == nil {
-        defer os.Remove(tmpfile.Name()) // clean up
-        if _, err := tmpfile.Write([]byte(data)); err == nil {
-            // read and parse manifest.yaml file
-            p := NewYAMLParser()
-            m, _ := p.ParseManifest(tmpfile.Name())
-            actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
-            var expectedResult, actualResult string
-            if err == nil {
-                for i := 0; i < len(actions); i++ {
-                    if actions[i].Action.Name == "hello1" {
-                        expectedResult, _ = filepath.Abs("../tests/src/integration/helloworld/actions/hello.js")
-                        actualResult, _ = filepath.Abs(actions[i].Filepath)
-                        assert.Equal(t, expectedResult, actualResult, "Expected " + expectedResult + " but got " + actualResult)
-                        // (TODO) Uncomment the following condition, hello2
-                        // (TODO) after issue # 311 is fixed
-                        //} else if actions[i].Action.Name == "hello2" {
-                        //  assert.NotNil(t, actions[i].Action.Exec.Code, "Expected source code from an action file but found it empty")
-                    }
-                }
-            }
-
-        }
-        tmpfile.Close()
-    }
+	// (TODO) uncomment this after we add support for action file content from URL
+	// hello2:
+	//  function: https://raw.githubusercontent.com/apache/incubator-openwhisk-wskdeploy/master/tests/isrc/integration/helloworld/manifest.yaml`
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_locations_")
+	if err == nil {
+		defer os.Remove(tmpfile.Name()) // clean up
+		if _, err := tmpfile.Write([]byte(data)); err == nil {
+			// read and parse manifest.yaml file
+			p := NewYAMLParser()
+			m, _ := p.ParseManifest(tmpfile.Name())
+			actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
+			var expectedResult, actualResult string
+			if err == nil {
+				for i := 0; i < len(actions); i++ {
+					if actions[i].Action.Name == "hello1" {
+						expectedResult, _ = filepath.Abs("../tests/src/integration/helloworld/actions/hello.js")
+						actualResult, _ = filepath.Abs(actions[i].Filepath)
+						assert.Equal(t, expectedResult, actualResult, "Expected "+expectedResult+" but got "+actualResult)
+						// (TODO) Uncomment the following condition, hello2
+						// (TODO) after issue # 311 is fixed
+						//} else if actions[i].Action.Name == "hello2" {
+						//  assert.NotNil(t, actions[i].Action.Exec.Code, "Expected source code from an action file but found it empty")
+					}
+				}
+			}
+
+		}
+		tmpfile.Close()
+	}
 
 }
 
 // Test 14: validate manifest_parser.ComposeActions() method
-func TestComposeActionsForLimits (t *testing.T) {
-  data :=
-`package:
+func TestComposeActionsForLimits(t *testing.T) {
+	data :=
+		`package:
   name: helloworld
   actions:
     hello1:
@@ -917,319 +915,319 @@ func TestComposeActionsForLimits (t *testing.T) {
         userInvocationRate: 50
         codeSize: 1024
         parameterSize: 128`
-  dir, _ := os.Getwd()
-  tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_limits_")
-  if err == nil {
-      defer os.Remove(tmpfile.Name()) // clean up
-      if _, err := tmpfile.Write([]byte(data)); err == nil {
-          // read and parse manifest.yaml file
-          p := NewYAMLParser()
-          m, _ := p.ParseManifest(tmpfile.Name())
-          actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
-          //var expectedResult, actualResult string
-          if err == nil {
-              for i:=0; i<len(actions); i++ {
-                  if actions[i].Action.Name == "hello1" {
-                      assert.Nil(t, actions[i].Action.Limits, "Expected limit section to be empty but got %s", actions[i].Action.Limits)
-                  } else if actions[i].Action.Name == "hello2" {
-                      assert.NotNil(t, actions[i].Action.Limits, "Expected limit section to be not empty but found it empty")
-                      assert.Equal(t, 180, *actions[i].Action.Limits.Timeout, "Failed to get Timeout")
-                      assert.Equal(t, 128, *actions[i].Action.Limits.Memory, "Failed to get Memory")
-                      assert.Equal(t, 1, *actions[i].Action.Limits.Logsize, "Failed to get Logsize")
-                  }
-              }
-          }
-
-      }
-      tmpfile.Close()
-  }
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_limits_")
+	if err == nil {
+		defer os.Remove(tmpfile.Name()) // clean up
+		if _, err := tmpfile.Write([]byte(data)); err == nil {
+			// read and parse manifest.yaml file
+			p := NewYAMLParser()
+			m, _ := p.ParseManifest(tmpfile.Name())
+			actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
+			//var expectedResult, actualResult string
+			if err == nil {
+				for i := 0; i < len(actions); i++ {
+					if actions[i].Action.Name == "hello1" {
+						assert.Nil(t, actions[i].Action.Limits, "Expected limit section to be empty but got %s", actions[i].Action.Limits)
+					} else if actions[i].Action.Name == "hello2" {
+						assert.NotNil(t, actions[i].Action.Limits, "Expected limit section to be not empty but found it empty")
+						assert.Equal(t, 180, *actions[i].Action.Limits.Timeout, "Failed to get Timeout")
+						assert.Equal(t, 128, *actions[i].Action.Limits.Memory, "Failed to get Memory")
+						assert.Equal(t, 1, *actions[i].Action.Limits.Logsize, "Failed to get Logsize")
+					}
+				}
+			}
+
+		}
+		tmpfile.Close()
+	}
 }
 
 // Test 15: validate manifest_parser.ComposeActions() method
 func TestComposeActionsForWebActions(t *testing.T) {
-    data :=
-        `package:
+	data :=
+		`package:
   name: helloworld
   actions:
     hello:
       function: ../tests/src/integration/helloworld/actions/hello.js
       web-export: true`
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_web_actions_")
-    if err == nil {
-        defer os.Remove(tmpfile.Name()) // clean up
-        if _, err := tmpfile.Write([]byte(data)); err == nil {
-            // read and parse manifest.yaml file
-            p := NewYAMLParser()
-            m, _ := p.ParseManifest(tmpfile.Name())
-            actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
-            if err == nil {
-                for i := 0; i < len(actions); i++ {
-                    if actions[i].Action.Name == "hello" {
-                        for _, a := range actions[i].Action.Annotations {
-                            switch a.Key {
-                            case "web-export":
-                                assert.Equal(t, true, a.Value, "Expected true for web-export but got " + strconv.FormatBool(a.Value.(bool)))
-                            case "raw-http":
-                                assert.Equal(t, false, a.Value, "Expected false for raw-http but got " + strconv.FormatBool(a.Value.(bool)))
-                            case "final":
-                                assert.Equal(t, true, a.Value, "Expected true for final but got " + strconv.FormatBool(a.Value.(bool)))
-                            }
-                        }
-                    }
-                }
-            }
-
-        }
-        tmpfile.Close()
-    }
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, "manifest_parser_validate_web_actions_")
+	if err == nil {
+		defer os.Remove(tmpfile.Name()) // clean up
+		if _, err := tmpfile.Write([]byte(data)); err == nil {
+			// read and parse manifest.yaml file
+			p := NewYAMLParser()
+			m, _ := p.ParseManifest(tmpfile.Name())
+			actions, err := p.ComposeActionsFromAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
+			if err == nil {
+				for i := 0; i < len(actions); i++ {
+					if actions[i].Action.Name == "hello" {
+						for _, a := range actions[i].Action.Annotations {
+							switch a.Key {
+							case "web-export":
+								assert.Equal(t, true, a.Value, "Expected true for web-export but got "+strconv.FormatBool(a.Value.(bool)))
+							case "raw-http":
+								assert.Equal(t, false, a.Value, "Expected false for raw-http but got "+strconv.FormatBool(a.Value.(bool)))
+							case "final":
+								assert.Equal(t, true, a.Value, "Expected true for final but got "+strconv.FormatBool(a.Value.(bool)))
+							}
+						}
+					}
+				}
+			}
+
+		}
+		tmpfile.Close()
+	}
 }
 
 // Test 16: validate manifest_parser.ResolveParameter() method
 func TestResolveParameterForMultiLineParams(t *testing.T) {
-    paramName := "name"
-    v := "foo"
-    y := reflect.TypeOf(v).Name() // y := string
-    d := "default_name"
-
-    // type string - value only param
-    param1 := Parameter{Value: v, multiline: true}
-    r1, _ := ResolveParameter(paramName, &param1, "")
-    assert.Equal(t, v, r1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH,paramName))
-    assert.IsType(t, v, r1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH,paramName))
-
-    // type string - type and value only param
-    param2 := Parameter{Type: y, Value: v, multiline: true}
-    r2, _ := ResolveParameter(paramName, &param2, "")
-    assert.Equal(t, v, r2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH,paramName))
-    assert.IsType(t, v, r2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH,paramName))
-
-    // type string - type, no value, but default value param
-    param3 := Parameter{Type: y, Default: d, multiline: true}
-    r3, _ := ResolveParameter(paramName, &param3, "")
-    assert.Equal(t, d, r3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH,paramName))
-    assert.IsType(t, d, r3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH,paramName))
-
-    // type string - type and value only param
-    // type is "string" and value is of type "int"
-    // ResolveParameter matches specified type with the type of the specified value
-    // it fails if both types don't match
-    // ResolveParameter determines type from the specified value
-    // in this case, ResolveParameter returns value of type int
-    v1 := 11
-    param4 := Parameter{Type: y, Value: v1, multiline: true}
-    r4, _ := ResolveParameter(paramName, &param4, "")
-    assert.Equal(t, v1, r4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH,paramName))
-    assert.IsType(t, v1, r4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH,paramName))
-
-    // type invalid - type only param
-    param5 := Parameter{Type: "invalid", multiline: true}
-    _, err := ResolveParameter(paramName, &param5, "")
-    assert.NotNil(t, err, "Expected error saying Invalid type for parameter")
-    switch errorType := err.(type) {
-    default:
-        assert.Fail(t, "Wrong error type received: We are expecting ParserErr.")
-    case *wskderrors.YAMLParserError:
-        assert.Equal(t, "Parameter [name] has an invalid Type. [invalid]", errorType.Message)
-    }
-
-    // type none - param without type, without value, and without default value
-    param6 := Parameter{multiline: true}
-    paramName = "none"
-    r6, _ := ResolveParameter(paramName, &param6, "")
-    assert.Empty(t, r6, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH,paramName))
+	paramName := "name"
+	v := "foo"
+	y := reflect.TypeOf(v).Name() // y := string
+	d := "default_name"
+
+	// type string - value only param
+	param1 := Parameter{Value: v, multiline: true}
+	r1, _ := ResolveParameter(paramName, &param1, "")
+	assert.Equal(t, v, r1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+	assert.IsType(t, v, r1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, paramName))
+
+	// type string - type and value only param
+	param2 := Parameter{Type: y, Value: v, multiline: true}
+	r2, _ := ResolveParameter(paramName, &param2, "")
+	assert.Equal(t, v, r2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+	assert.IsType(t, v, r2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, paramName))
+
+	// type string - type, no value, but default value param
+	param3 := Parameter{Type: y, Default: d, multiline: true}
+	r3, _ := ResolveParameter(paramName, &param3, "")
+	assert.Equal(t, d, r3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+	assert.IsType(t, d, r3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, paramName))
+
+	// type string - type and value only param
+	// type is "string" and value is of type "int"
+	// ResolveParameter matches specified type with the type of the specified value
+	// it fails if both types don't match
+	// ResolveParameter determines type from the specified value
+	// in this case, ResolveParameter returns value of type int
+	v1 := 11
+	param4 := Parameter{Type: y, Value: v1, multiline: true}
+	r4, _ := ResolveParameter(paramName, &param4, "")
+	assert.Equal(t, v1, r4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
+	assert.IsType(t, v1, r4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, paramName))
+
+	// type invalid - type only param
+	param5 := Parameter{Type: "invalid", multiline: true}
+	_, err := ResolveParameter(paramName, &param5, "")
+	assert.NotNil(t, err, "Expected error saying Invalid type for parameter")
+	switch errorType := err.(type) {
+	default:
+		assert.Fail(t, "Wrong error type received: We are expecting ParserErr.")
+	case *wskderrors.YAMLParserError:
+		assert.Equal(t, "Parameter [name] has an invalid Type. [invalid]", errorType.Message)
+	}
+
+	// type none - param without type, without value, and without default value
+	param6 := Parameter{multiline: true}
+	paramName = "none"
+	r6, _ := ResolveParameter(paramName, &param6, "")
+	assert.Empty(t, r6, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, paramName))
 
 }
 
 // Test 17: validate JSON parameters
 func TestParseManifestForJSONParams(t *testing.T) {
-    // manifest file is located under ../tests folder
-    manifestFile := "../tests/dat/manifest_validate_json_params.yaml"
-    // read and parse manifest.yaml file
-    m, err := NewYAMLParser().ParseManifest(manifestFile)
-
-    if err != nil {
-        assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
-    }
-
-    // validate package name should be "validate"
-    packageName := "validate_json"
-    actionName := "validate_json_params"
-
-    // validate this package contains one action
-    actualActionsCount := len(m.Packages[packageName].Actions)
-    assert.Equal(t, 1, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
-
-    if action, ok := m.Packages[packageName].Actions[actionName]; ok {
-        // test Action function's path
-        expectedResult := "actions/dump_params.js"
-        actualResult := action.Function
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
-
-        // validate runtime of an action to be "nodejs:6"
-        expectedResult = "nodejs:6"
-        actualResult = action.Runtime
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
-
-        // validate the number of inputs to this action
-        expectedResult = strconv.FormatInt(6, 10)
-        actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
-        assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
-
-        // validate inputs to this action
-        for input, param := range action.Inputs {
-            // Trace to help debug complex values:
-            // utils.PrintTypeInfo(input, param.Value)
-            switch input {
-            case "member1":
-                actualResult1 := param.Value.(string)
-                expectedResult1 := "{ \"name\": \"Sam\", \"place\": \"Shire\" }"
-                assert.Equal(t, expectedResult1, actualResult1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            case "member2":
-                actualResult2 := param.Value.(map[interface{}]interface{})
-                expectedResult2 := map[interface{}]interface{}{"name": "Sam", "place": "Shire"}
-                assert.Equal(t, expectedResult2, actualResult2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            case "member3":
-                actualResult3 := param.Value.(map[interface{}]interface{})
-                expectedResult3 := map[interface{}]interface{}{"name": "Elrond", "place": "Rivendell"}
-                assert.Equal(t, expectedResult3, actualResult3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            case "member4":
-                actualResult4 := param.Value.(map[interface{}]interface{})
-                expectedResult4 := map[interface{}]interface{}{"name": "Gimli", "place": "Gondor", "age": 139, "children": map[interface{}]interface{}{ "<none>": "<none>" }}
-                assert.Equal(t, expectedResult4, actualResult4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            case "member5":
-                actualResult5 := param.Value.(map[interface{}]interface{})
-                expectedResult5 := map[interface{}]interface{}{"name": "Gloin", "place": "Gondor", "age": 235, "children": map[interface{}]interface{}{ "Gimli": "Son" }}
-                assert.Equal(t, expectedResult5, actualResult5, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            case "member6":
-                actualResult6 := param.Value.(map[interface{}]interface{})
-                expectedResult6 := map[interface{}]interface{}{"name": "Frodo", "place": "Undying Lands", "items": []interface{}{"Sting", "Mithril mail"}}
-                assert.Equal(t, expectedResult6, actualResult6, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
-            }
-        }
-
-        // validate Outputs from this action
-        for output, param := range action.Outputs {
-            switch output {
-            case "fellowship":
-                expectedType := "json"
-                actualType := param.Type
-                assert.Equal(t, expectedType, actualType, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, output))
-            }
-        }
-    }
+	// manifest file is located under ../tests folder
+	manifestFile := "../tests/dat/manifest_validate_json_params.yaml"
+	// read and parse manifest.yaml file
+	m, err := NewYAMLParser().ParseManifest(manifestFile)
+
+	if err != nil {
+		assert.Fail(t, fmt.Sprintf(TEST_ERROR_MANIFEST_PARSE_FAILURE, manifestFile))
+	}
+
+	// validate package name should be "validate"
+	packageName := "validate_json"
+	actionName := "validate_json_params"
+
+	// validate this package contains one action
+	actualActionsCount := len(m.Packages[packageName].Actions)
+	assert.Equal(t, 1, actualActionsCount, TEST_MSG_ACTION_NUMBER_MISMATCH)
+
+	if action, ok := m.Packages[packageName].Actions[actionName]; ok {
+		// test Action function's path
+		expectedResult := "actions/dump_params.js"
+		actualResult := action.Function
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_PATH_MISMATCH)
+
+		// validate runtime of an action to be "nodejs:6"
+		expectedResult = "nodejs:6"
+		actualResult = action.Runtime
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_ACTION_FUNCTION_RUNTIME_MISMATCH)
+
+		// validate the number of inputs to this action
+		expectedResult = strconv.FormatInt(6, 10)
+		actualResult = strconv.FormatInt(int64(len(action.Inputs)), 10)
+		assert.Equal(t, expectedResult, actualResult, TEST_MSG_PARAMETER_NUMBER_MISMATCH)
+
+		// validate inputs to this action
+		for input, param := range action.Inputs {
+			// Trace to help debug complex values:
+			// utils.PrintTypeInfo(input, param.Value)
+			switch input {
+			case "member1":
+				actualResult1 := param.Value.(string)
+				expectedResult1 := "{ \"name\": \"Sam\", \"place\": \"Shire\" }"
+				assert.Equal(t, expectedResult1, actualResult1, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			case "member2":
+				actualResult2 := param.Value.(map[interface{}]interface{})
+				expectedResult2 := map[interface{}]interface{}{"name": "Sam", "place": "Shire"}
+				assert.Equal(t, expectedResult2, actualResult2, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			case "member3":
+				actualResult3 := param.Value.(map[interface{}]interface{})
+				expectedResult3 := map[interface{}]interface{}{"name": "Elrond", "place": "Rivendell"}
+				assert.Equal(t, expectedResult3, actualResult3, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			case "member4":
+				actualResult4 := param.Value.(map[interface{}]interface{})
+				expectedResult4 := map[interface{}]interface{}{"name": "Gimli", "place": "Gondor", "age": 139, "children": map[interface{}]interface{}{"<none>": "<none>"}}
+				assert.Equal(t, expectedResult4, actualResult4, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			case "member5":
+				actualResult5 := param.Value.(map[interface{}]interface{})
+				expectedResult5 := map[interface{}]interface{}{"name": "Gloin", "place": "Gondor", "age": 235, "children": map[interface{}]interface{}{"Gimli": "Son"}}
+				assert.Equal(t, expectedResult5, actualResult5, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			case "member6":
+				actualResult6 := param.Value.(map[interface{}]interface{})
+				expectedResult6 := map[interface{}]interface{}{"name": "Frodo", "place": "Undying Lands", "items": []interface{}{"Sting", "Mithril mail"}}
+				assert.Equal(t, expectedResult6, actualResult6, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_VALUE_MISMATCH, input))
+			}
+		}
+
+		// validate Outputs from this action
+		for output, param := range action.Outputs {
+			switch output {
+			case "fellowship":
+				expectedType := "json"
+				actualType := param.Type
+				assert.Equal(t, expectedType, actualType, fmt.Sprintf(TEST_MSG_ACTION_PARAMETER_TYPE_MISMATCH, output))
+			}
+		}
+	}
 }
 
 func _createTmpfile(data string, filename string) (f *os.File, err error) {
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, filename)
-    if err != nil {
-        return nil, err
-    }
-    _, err = tmpfile.Write([]byte(data))
-    if err != nil {
-        return tmpfile, err
-    }
-    return tmpfile, nil
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, filename)
+	if err != nil {
+		return nil, err
+	}
+	_, err = tmpfile.Write([]byte(data))
+	if err != nil {
+		return tmpfile, err
+	}
+	return tmpfile, nil
 }
 
 func TestComposePackage(t *testing.T) {
-    data := `package:
+	data := `package:
   name: helloworld
   namespace: default`
-    tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
-    if err != nil {
-        assert.Fail(t, "Failed to create temp file")
-    }
-    defer func() {
-        tmpfile.Close()
-        os.Remove(tmpfile.Name())
-    }()
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, _ := p.ParseManifest(tmpfile.Name())
-    pkg, err := p.ComposeAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
-    if err == nil {
-        n := "helloworld"
-        assert.NotNil(t, pkg[n], "Failed to get the whole package")
-        assert.Equal(t, n, pkg[n].Name, "Failed to get package name")
-        assert.Equal(t, "default", pkg[n].Namespace, "Failed to get package namespace")
-    } else {
-        assert.Fail(t, "Failed to compose package")
-    }
+	tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
+	if err != nil {
+		assert.Fail(t, "Failed to create temp file")
+	}
+	defer func() {
+		tmpfile.Close()
+		os.Remove(tmpfile.Name())
+	}()
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, _ := p.ParseManifest(tmpfile.Name())
+	pkg, err := p.ComposeAllPackages(m, tmpfile.Name(), whisk.KeyValue{})
+	if err == nil {
+		n := "helloworld"
+		assert.NotNil(t, pkg[n], "Failed to get the whole package")
+		assert.Equal(t, n, pkg[n].Name, "Failed to get package name")
+		assert.Equal(t, "default", pkg[n].Namespace, "Failed to get package namespace")
+	} else {
+		assert.Fail(t, "Failed to compose package")
+	}
 }
 
 func TestComposeSequences(t *testing.T) {
-    data := `package:
+	data := `package:
   name: helloworld
   sequences:
     sequence1:
       actions: action1, action2
     sequence2:
       actions: action3, action4, action5`
-    tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
-    if err != nil {
-        assert.Fail(t, "Failed to create temp file")
-    }
-    defer func() {
-        tmpfile.Close()
-        os.Remove(tmpfile.Name())
-    }()
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, _ := p.ParseManifest(tmpfile.Name())
-    seqList, err := p.ComposeSequencesFromAllPackages("", m, whisk.KeyValue{})
-    if err != nil {
-        assert.Fail(t, "Failed to compose sequences")
-    }
-    assert.Equal(t, 2, len(seqList), "Failed to get sequences")
-    for _, seq := range seqList {
-        wsk_action := seq.Action
-        switch wsk_action.Name {
-        case "sequence1":
-            assert.Equal(t, "sequence", wsk_action.Exec.Kind, "Failed to set sequence exec kind")
-            assert.Equal(t, 2, len(wsk_action.Exec.Components), "Failed to set sequence exec components")
-            assert.Equal(t, "/helloworld/action1", wsk_action.Exec.Components[0], "Failed to set sequence 1st exec components")
-            assert.Equal(t, "/helloworld/action2", wsk_action.Exec.Components[1], "Failed to set sequence 2nd exec components")
-        case "sequence2":
-            assert.Equal(t, "sequence", wsk_action.Exec.Kind, "Failed to set sequence exec kind")
-            assert.Equal(t, 3, len(wsk_action.Exec.Components), "Failed to set sequence exec components")
-            assert.Equal(t, "/helloworld/action3", wsk_action.Exec.Components[0], "Failed to set sequence 1st exec components")
-            assert.Equal(t, "/helloworld/action4", wsk_action.Exec.Components[1], "Failed to set sequence 2nd exec components")
-            assert.Equal(t, "/helloworld/action5", wsk_action.Exec.Components[2], "Failed to set sequence 3rd exec components")
-        }
-    }
+	tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
+	if err != nil {
+		assert.Fail(t, "Failed to create temp file")
+	}
+	defer func() {
+		tmpfile.Close()
+		os.Remove(tmpfile.Name())
+	}()
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, _ := p.ParseManifest(tmpfile.Name())
+	seqList, err := p.ComposeSequencesFromAllPackages("", m, whisk.KeyValue{})
+	if err != nil {
+		assert.Fail(t, "Failed to compose sequences")
+	}
+	assert.Equal(t, 2, len(seqList), "Failed to get sequences")
+	for _, seq := range seqList {
+		wsk_action := seq.Action
+		switch wsk_action.Name {
+		case "sequence1":
+			assert.Equal(t, "sequence", wsk_action.Exec.Kind, "Failed to set sequence exec kind")
+			assert.Equal(t, 2, len(wsk_action.Exec.Components), "Failed to set sequence exec components")
+			assert.Equal(t, "/helloworld/action1", wsk_action.Exec.Components[0], "Failed to set sequence 1st exec components")
+			assert.Equal(t, "/helloworld/action2", wsk_action.Exec.Components[1], "Failed to set sequence 2nd exec components")
+		case "sequence2":
+			assert.Equal(t, "sequence", wsk_action.Exec.Kind, "Failed to set sequence exec kind")
+			assert.Equal(t, 3, len(wsk_action.Exec.Components), "Failed to set sequence exec components")
+			assert.Equal(t, "/helloworld/action3", wsk_action.Exec.Components[0], "Failed to set sequence 1st exec components")
+			assert.Equal(t, "/helloworld/action4", wsk_action.Exec.Components[1], "Failed to set sequence 2nd exec components")
+			assert.Equal(t, "/helloworld/action5", wsk_action.Exec.Components[2], "Failed to set sequence 3rd exec components")
+		}
+	}
 }
 
 func TestComposeTriggers(t *testing.T) {
-    // read and parse manifest.yaml file located under ../tests folder
-    manifestFile := "../tests/dat/manifest_data_compose_triggers.yaml"
-    p := NewYAMLParser()
-    m, err := p.ParseManifest(manifestFile)
-    if err != nil {
-        assert.Fail(t, "Failed to parse manifest: " + manifestFile )
-    }
-
-    triggerList, err := p.ComposeTriggersFromAllPackages(m, manifestFile, whisk.KeyValue{})
-    if err != nil {
-        assert.Fail(t, "Failed to compose trigger")
-    }
-
-    assert.Equal(t, 2, len(triggerList), "Failed to get trigger list")
-    for _, trigger := range triggerList {
-        switch trigger.Name {
-        case "trigger1":
-            assert.Equal(t, 2, len(trigger.Parameters), "Failed to set trigger parameters")
-        case "trigger2":
-            assert.Equal(t, "feed", trigger.Annotations[0].Key, "Failed to set trigger annotation")
-            assert.Equal(t, "myfeed", trigger.Annotations[0].Value, "Failed to set trigger annotation")
-            assert.Equal(t, 2, len(trigger.Parameters), "Failed to set trigger parameters")
-        }
-    }
+	// read and parse manifest.yaml file located under ../tests folder
+	manifestFile := "../tests/dat/manifest_data_compose_triggers.yaml"
+	p := NewYAMLParser()
+	m, err := p.ParseManifest(manifestFile)
+	if err != nil {
+		assert.Fail(t, "Failed to parse manifest: "+manifestFile)
+	}
+
+	triggerList, err := p.ComposeTriggersFromAllPackages(m, manifestFile, whisk.KeyValue{})
+	if err != nil {
+		assert.Fail(t, "Failed to compose trigger")
+	}
+
+	assert.Equal(t, 2, len(triggerList), "Failed to get trigger list")
+	for _, trigger := range triggerList {
+		switch trigger.Name {
+		case "trigger1":
+			assert.Equal(t, 2, len(trigger.Parameters), "Failed to set trigger parameters")
+		case "trigger2":
+			assert.Equal(t, "feed", trigger.Annotations[0].Key, "Failed to set trigger annotation")
+			assert.Equal(t, "myfeed", trigger.Annotations[0].Value, "Failed to set trigger annotation")
+			assert.Equal(t, 2, len(trigger.Parameters), "Failed to set trigger parameters")
+		}
+	}
 }
 
 func TestComposeRules(t *testing.T) {
-    data := `package:
+	data := `package:
   name: helloworld
   rules:
     rule1:
@@ -1238,36 +1236,36 @@ func TestComposeRules(t *testing.T) {
     rule2:
       trigger: trigger1
       action: action1`
-    tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
-    if err != nil {
-        assert.Fail(t, "Failed to create temp file")
-    }
-    defer func() {
-        tmpfile.Close()
-        os.Remove(tmpfile.Name())
-    }()
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, _ := p.ParseManifest(tmpfile.Name())
-    ruleList, err := p.ComposeRulesFromAllPackages(m)
-    if err != nil {
-        assert.Fail(t, "Failed to compose rules")
-    }
-    assert.Equal(t, 2, len(ruleList), "Failed to get rules")
-    for _, rule := range ruleList {
-        switch rule.Name {
-        case "rule1":
-            assert.Equal(t, "locationUpdate", rule.Trigger, "Failed to set rule trigger")
-            assert.Equal(t, "helloworld/greeting", rule.Action, "Failed to set rule action")
-        case "rule2":
-            assert.Equal(t, "trigger1", rule.Trigger, "Failed to set rule trigger")
-            assert.Equal(t, "helloworld/action1", rule.Action, "Failed to set rule action")
-        }
-    }
+	tmpfile, err := _createTmpfile(data, "manifest_parser_test_compose_package_")
+	if err != nil {
+		assert.Fail(t, "Failed to create temp file")
+	}
+	defer func() {
+		tmpfile.Close()
+		os.Remove(tmpfile.Name())
+	}()
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, _ := p.ParseManifest(tmpfile.Name())
+	ruleList, err := p.ComposeRulesFromAllPackages(m)
+	if err != nil {
+		assert.Fail(t, "Failed to compose rules")
+	}
+	assert.Equal(t, 2, len(ruleList), "Failed to get rules")
+	for _, rule := range ruleList {
+		switch rule.Name {
+		case "rule1":
+			assert.Equal(t, "locationUpdate", rule.Trigger, "Failed to set rule trigger")
+			assert.Equal(t, "helloworld/greeting", rule.Action, "Failed to set rule action")
+		case "rule2":
+			assert.Equal(t, "trigger1", rule.Trigger, "Failed to set rule trigger")
+			assert.Equal(t, "helloworld/action1", rule.Action, "Failed to set rule action")
+		}
+	}
 }
 
 func TestComposeApiRecords(t *testing.T) {
-    data := `package:
+	data := `package:
   name: helloworld
   apis:
     book-club:
@@ -1284,64 +1282,64 @@ func TestComposeApiRecords(t *testing.T) {
            postBooks2: post
         members2:
            listMembers2: get`
-    tmpfile, err := _createTmpfile(data, "manifest_parser_test_")
-    if err != nil {
-        assert.Fail(t, "Failed to create temp file")
-    }
-    defer func() {
-        tmpfile.Close()
-        os.Remove(tmpfile.Name())
-    }()
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, _ := p.ParseManifest(tmpfile.Name())
-    apiList, err := p.ComposeApiRecordsFromAllPackages(m)
-    if err != nil {
-        assert.Fail(t, "Failed to compose api records")
-    }
-    assert.Equal(t, 6, len(apiList), "Failed to get api records")
-    for _, apiRecord := range apiList {
-        apiDoc := apiRecord.ApiDoc
-        action := apiDoc.Action
-        switch action.Name {
-        case "putBooks":
-            assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "books", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "put", action.BackendMethod, "Failed to set api backend method")
-        case "deleteBooks":
-            assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "books", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "delete", action.BackendMethod, "Failed to set api backend method")
-        case "listMembers":
-            assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "members", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
-        case "getBooks2":
-            assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "books2", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
-        case "postBooks2":
-            assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "books2", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "post", action.BackendMethod, "Failed to set api backend method")
-        case "listMembers2":
-            assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
-            assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
-            assert.Equal(t, "members2", apiDoc.GatewayRelPath, "Failed to set api rel path")
-            assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
-        default:
-            assert.Fail(t, "Failed to get api action name")
-        }
-    }
+	tmpfile, err := _createTmpfile(data, "manifest_parser_test_")
+	if err != nil {
+		assert.Fail(t, "Failed to create temp file")
+	}
+	defer func() {
+		tmpfile.Close()
+		os.Remove(tmpfile.Name())
+	}()
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, _ := p.ParseManifest(tmpfile.Name())
+	apiList, err := p.ComposeApiRecordsFromAllPackages(m)
+	if err != nil {
+		assert.Fail(t, "Failed to compose api records")
+	}
+	assert.Equal(t, 6, len(apiList), "Failed to get api records")
+	for _, apiRecord := range apiList {
+		apiDoc := apiRecord.ApiDoc
+		action := apiDoc.Action
+		switch action.Name {
+		case "putBooks":
+			assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "books", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "put", action.BackendMethod, "Failed to set api backend method")
+		case "deleteBooks":
+			assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "books", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "delete", action.BackendMethod, "Failed to set api backend method")
+		case "listMembers":
+			assert.Equal(t, "book-club", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "members", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
+		case "getBooks2":
+			assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "books2", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
+		case "postBooks2":
+			assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "books2", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "post", action.BackendMethod, "Failed to set api backend method")
+		case "listMembers2":
+			assert.Equal(t, "book-club2", apiDoc.ApiName, "Failed to set api name")
+			assert.Equal(t, "club2", apiDoc.GatewayBasePath, "Failed to set api base path")
+			assert.Equal(t, "members2", apiDoc.GatewayRelPath, "Failed to set api rel path")
+			assert.Equal(t, "get", action.BackendMethod, "Failed to set api backend method")
+		default:
+			assert.Fail(t, "Failed to get api action name")
+		}
+	}
 }
 
 func TestComposeDependencies(t *testing.T) {
-    data := `package:
+	data := `package:
   name: helloworld
   dependencies:
     myhelloworld:
@@ -1352,90 +1350,90 @@ func TestComposeDependencies(t *testing.T) {
         dbname: myGreatDB
       annotations:
         myAnnotation: Here it is`
-    tmpfile, err := _createTmpfile(data, "manifest_parser_test_")
-    if err != nil {
-        assert.Fail(t, "Failed to create temp file")
-    }
-    defer func() {
-        tmpfile.Close()
-        os.Remove(tmpfile.Name())
-    }()
-    // read and parse manifest.yaml file
-    p := NewYAMLParser()
-    m, _ := p.ParseManifest(tmpfile.Name())
-    depdList, err := p.ComposeDependenciesFromAllPackages(m, "/project_folder", tmpfile.Name())
-    if err != nil {
-        assert.Fail(t, "Failed to compose rules")
-    }
-    assert.Equal(t, 2, len(depdList), "Failed to get rules")
-    for depdy_name, depdy := range depdList {
-        assert.Equal(t, "helloworld", depdy.Packagename, "Failed to set dependecy isbinding")
-        assert.Equal(t, "/project_folder/Packages", depdy.ProjectPath, "Failed to set dependecy isbinding")
-        d := strings.Split(depdy_name, ":")
-        assert.NotEqual(t, d[1], "", "Failed to get dependency name")
-        switch d[1] {
-        case "myhelloworld":
-            assert.Equal(t, "https://github.com/user/repo/folder", depdy.Location, "Failed to set dependecy location")
-            assert.Equal(t, false, depdy.IsBinding, "Failed to set dependecy isbinding")
-            assert.Equal(t, "https://github.com/user/repo", depdy.BaseRepo, "Failed to set dependecy base repo url")
-            assert.Equal(t, "/folder", depdy.SubFolder, "Failed to set dependecy sub folder")
-        case "myCloudant":
-            assert.Equal(t, "/whisk.system/cloudant", depdy.Location, "Failed to set rule trigger")
-            assert.Equal(t, true, depdy.IsBinding, "Failed to set dependecy isbinding")
-            assert.Equal(t, 1, len(depdy.Parameters), "Failed to set dependecy parameter")
-            assert.Equal(t, 1, len(depdy.Annotations), "Failed to set dependecy annotation")
-            assert.Equal(t, "myAnnotation", depdy.Annotations[0].Key, "Failed to set dependecy parameter key")
-            assert.Equal(t, "Here it is", depdy.Annotations[0].Value, "Failed to set dependecy parameter value")
-            assert.Equal(t, "dbname", depdy.Parameters[0].Key, "Failed to set dependecy annotation key")
-            assert.Equal(t, "myGreatDB", depdy.Parameters[0].Value, "Failed to set dependecy annotation value")
-        default:
-            assert.Fail(t, "Failed to get dependency name")
-        }
-    }
+	tmpfile, err := _createTmpfile(data, "manifest_parser_test_")
+	if err != nil {
+		assert.Fail(t, "Failed to create temp file")
+	}
+	defer func() {
+		tmpfile.Close()
+		os.Remove(tmpfile.Name())
+	}()
+	// read and parse manifest.yaml file
+	p := NewYAMLParser()
+	m, _ := p.ParseManifest(tmpfile.Name())
+	depdList, err := p.ComposeDependenciesFromAllPackages(m, "/project_folder", tmpfile.Name())
+	if err != nil {
+		assert.Fail(t, "Failed to compose rules")
+	}
+	assert.Equal(t, 2, len(depdList), "Failed to get rules")
+	for depdy_name, depdy := range depdList {
+		assert.Equal(t, "helloworld", depdy.Packagename, "Failed to set dependecy isbinding")
+		assert.Equal(t, "/project_folder/Packages", depdy.ProjectPath, "Failed to set dependecy isbinding")
+		d := strings.Split(depdy_name, ":")
+		assert.NotEqual(t, d[1], "", "Failed to get dependency name")
+		switch d[1] {
+		case "myhelloworld":
+			assert.Equal(t, "https://github.com/user/repo/folder", depdy.Location, "Failed to set dependecy location")
+			assert.Equal(t, false, depdy.IsBinding, "Failed to set dependecy isbinding")
+			assert.Equal(t, "https://github.com/user/repo", depdy.BaseRepo, "Failed to set dependecy base repo url")
+			assert.Equal(t, "/folder", depdy.SubFolder, "Failed to set dependecy sub folder")
+		case "myCloudant":
+			assert.Equal(t, "/whisk.system/cloudant", depdy.Location, "Failed to set rule trigger")
+			assert.Equal(t, true, depdy.IsBinding, "Failed to set dependecy isbinding")
+			assert.Equal(t, 1, len(depdy.Parameters), "Failed to set dependecy parameter")
+			assert.Equal(t, 1, len(depdy.Annotations), "Failed to set dependecy annotation")
+			assert.Equal(t, "myAnnotation", depdy.Annotations[0].Key, "Failed to set dependecy parameter key")
+			assert.Equal(t, "Here it is", depdy.Annotations[0].Value, "Failed to set dependecy parameter value")
+			assert.Equal(t, "dbname", depdy.Parameters[0].Key, "Failed to set dependecy annotation key")
+			assert.Equal(t, "myGreatDB", depdy.Parameters[0].Value, "Failed to set dependecy annotation value")
+		default:
+			assert.Fail(t, "Failed to get dependency name")
+		}
+	}
 }
 
 func TestBadYAMLInvalidPackageKeyInManifest(t *testing.T) {
-    // read and parse manifest.yaml file located under ../tests folder
-    p := NewYAMLParser()
-    _, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_package_key.yaml")
+	// read and parse manifest.yaml file located under ../tests folder
+	p := NewYAMLParser()
+	_, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_package_key.yaml")
 
-    assert.NotNil(t, err)
-    // NOTE: go-yaml/yaml gets the line # wrong; testing only for the invalid key message
-    assert.Contains(t, err.Error(), "field invalidKey not found in struct parsers.Package")
+	assert.NotNil(t, err)
+	// NOTE: go-yaml/yaml gets the line # wrong; testing only for the invalid key message
+	assert.Contains(t, err.Error(), "field invalidKey not found in struct parsers.Package")
 }
 
 func TestBadYAMLInvalidKeyMappingValueInManifest(t *testing.T) {
-    // read and parse manifest.yaml file located under ../tests folder
-    p := NewYAMLParser()
-    _, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_key_mapping_value.yaml")
+	// read and parse manifest.yaml file located under ../tests folder
+	p := NewYAMLParser()
+	_, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_key_mapping_value.yaml")
 
-    assert.NotNil(t, err)
-    // go-yaml/yaml prints the wrong line number for mapping values. It should be 5.
-    assert.Contains(t, err.Error(), "line 4: mapping values are not allowed in this context")
+	assert.NotNil(t, err)
+	// go-yaml/yaml prints the wrong line number for mapping values. It should be 5.
+	assert.Contains(t, err.Error(), "line 4: mapping values are not allowed in this context")
 }
 
 func TestBadYAMLMissingRootKeyInManifest(t *testing.T) {
-    // read and parse manifest.yaml file located under ../tests folder
-    p := NewYAMLParser()
-    _, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_missing_root_key.yaml")
+	// read and parse manifest.yaml file located under ../tests folder
+	p := NewYAMLParser()
+	_, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_missing_root_key.yaml")
 
-    assert.NotNil(t, err)
-    assert.Contains(t, err.Error(), "line 1: field actions not found in struct parsers.YAML")
+	assert.NotNil(t, err)
+	assert.Contains(t, err.Error(), "line 1: field actions not found in struct parsers.YAML")
 }
 
 func TestBadYAMLInvalidCommentInManifest(t *testing.T) {
-    // read and parse manifest.yaml file located under ../tests folder
-    p := NewYAMLParser()
-    _, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_comment.yaml")
+	// read and parse manifest.yaml file located under ../tests folder
+	p := NewYAMLParser()
+	_, err := p.ParseManifest("../tests/dat/manifest_bad_yaml_invalid_comment.yaml")
 
-    assert.NotNil(t, err)
-    assert.Contains(t, err.Error(), "line 13: could not find expected ':'")
+	assert.NotNil(t, err)
+	assert.Contains(t, err.Error(), "line 13: could not find expected ':'")
 }
 
 // validate manifest_parser:Unmarshal() method for package in manifest YAML
 // validate that manifest_parser is able to read and parse the manifest data
 func TestUnmarshalForPackages(t *testing.T) {
-    data := `
+	data := `
 packages:
   package1:
     actions:
@@ -1447,62 +1445,62 @@ packages:
       helloPython:
         function: actions/hello.py
         runtime: python`
-    // set the zero value of struct YAML
-    m := YAML{}
-    // Unmarshal reads/parses manifest data and sets the values of YAML
-    // And returns an error if parsing a manifest data fails
-    err := NewYAMLParser().Unmarshal([]byte(data), &m)
-    if err == nil {
-        expectedResult := string(2)
-        actualResult := string(len(m.Packages))
-        assert.Equal(t, expectedResult, actualResult, "Expected 2 packages but got " + actualResult)
-        // we have two packages
-        // package name should be "helloNodejs" and "helloPython"
-        for k, v := range m.Packages {
-            switch k {
-            case "package1":
-                assert.Equal(t, "package1", k, "Expected package name package1 but got " + k)
-                expectedResult = string(1)
-                actualResult = string(len(v.Actions))
-                assert.Equal(t, expectedResult, actualResult, "Expected 1 but got " + actualResult)
-                // get the action payload from the map of actions which is stored in
-                // YAML.Package.Actions with the type of map[string]Action
-                actionName := "helloNodejs"
-                if action, ok := v.Actions[actionName]; ok {
-                    // location/function of an action should be "actions/hello.js"
-                    expectedResult = "actions/hello.js"
-                    actualResult = action.Function
-                    assert.Equal(t, expectedResult, actualResult, "Expected action function " + expectedResult + " but got " + actualResult)
-                    // runtime of an action should be "nodejs:6"
-                    expectedResult = "nodejs:6"
-                    actualResult = action.Runtime
-                    assert.Equal(t, expectedResult, actualResult, "Expected action runtime " + expectedResult + " but got " + actualResult)
-                } else {
-                    t.Error("Action named " + actionName + " does not exist.")
-                }
-            case "package2":
-                assert.Equal(t, "package2", k, "Expected package name package2 but got " + k)
-                expectedResult = string(1)
-                actualResult = string(len(v.Actions))
-                assert.Equal(t, expectedResult, actualResult, "Expected 1 but got " + actualResult)
-                // get the action payload from the map of actions which is stored in
-                // YAML.Package.Actions with the type of map[string]Action
-                actionName := "helloPython"
-                if action, ok := v.Actions[actionName]; ok {
-                    // location/function of an action should be "actions/hello.js"
-                    expectedResult = "actions/hello.py"
-                    actualResult = action.Function
-                    assert.Equal(t, expectedResult, actualResult, "Expected action function " + expectedResult + " but got " + actualResult)
-                    // runtime of an action should be "python"
-                    expectedResult = "python"
-                    actualResult = action.Runtime
-                    assert.Equal(t, expectedResult, actualResult, "Expected action runtime " + expectedResult + " but got " + actualResult)
-                } else {
-                    t.Error("Action named " + actionName + " does not exist.")
-                }
-            }
-        }
-    }
+	// set the zero value of struct YAML
+	m := YAML{}
+	// Unmarshal reads/parses manifest data and sets the values of YAML
+	// And returns an error if parsing a manifest data fails
+	err := NewYAMLParser().Unmarshal([]byte(data), &m)
+	if err == nil {
+		expectedResult := string(2)
+		actualResult := string(len(m.Packages))
+		assert.Equal(t, expectedResult, actualResult, "Expected 2 packages but got "+actualResult)
+		// we have two packages
+		// package name should be "helloNodejs" and "helloPython"
+		for k, v := range m.Packages {
+			switch k {
+			case "package1":
+				assert.Equal(t, "package1", k, "Expected package name package1 but got "+k)
+				expectedResult = string(1)
+				actualResult = string(len(v.Actions))
+				assert.Equal(t, expectedResult, actualResult, "Expected 1 but got "+actualResult)
+				// get the action payload from the map of actions which is stored in
+				// YAML.Package.Actions with the type of map[string]Action
+				actionName := "helloNodejs"
+				if action, ok := v.Actions[actionName]; ok {
+					// location/function of an action should be "actions/hello.js"
+					expectedResult = "actions/hello.js"
+					actualResult = action.Function
+					assert.Equal(t, expectedResult, actualResult, "Expected action function "+expectedResult+" but got "+actualResult)
+					// runtime of an action should be "nodejs:6"
+					expectedResult = "nodejs:6"
+					actualResult = action.Runtime
+					assert.Equal(t, expectedResult, actualResult, "Expected action runtime "+expectedResult+" but got "+actualResult)
+				} else {
+					t.Error("Action named " + actionName + " does not exist.")
+				}
+			case "package2":
+				assert.Equal(t, "package2", k, "Expected package name package2 but got "+k)
+				expectedResult = string(1)
+				actualResult = string(len(v.Actions))
+				assert.Equal(t, expectedResult, actualResult, "Expected 1 but got "+actualResult)
+				// get the action payload from the map of actions which is stored in
+				// YAML.Package.Actions with the type of map[string]Action
+				actionName := "helloPython"
+				if action, ok := v.Actions[actionName]; ok {
+					// location/function of an action should be "actions/hello.js"
+					expectedResult = "actions/hello.py"
+					actualResult = action.Function
+					assert.Equal(t, expectedResult, actualResult, "Expected action function "+expectedResult+" but got "+actualResult)
+					// runtime of an action should be "python"
+					expectedResult = "python"
+					actualResult = action.Runtime
+					assert.Equal(t, expectedResult, actualResult, "Expected action runtime "+expectedResult+" but got "+actualResult)
+				} else {
+					t.Error("Action named " + actionName + " does not exist.")
+				}
+			}
+		}
+	}
 }
 
 func TestParseYAML_trigger(t *testing.T) {
@@ -1517,7 +1515,7 @@ func TestParseYAML_trigger(t *testing.T) {
 		panic(err)
 	}
 
-        packageName := "manifest3"
+	packageName := "manifest3"
 
 	assert.Equal(t, 2, len(manifest.Packages[packageName].Triggers), "Get trigger list failed.")
 	for trigger_name := range manifest.Packages[packageName].Triggers {
@@ -1544,7 +1542,7 @@ func TestParseYAML_rule(t *testing.T) {
 		panic(err)
 	}
 
-        packageName := "manifest4"
+	packageName := "manifest4"
 
 	assert.Equal(t, 1, len(manifest.Packages[packageName].Rules), "Get trigger list failed.")
 	for rule_name := range manifest.Packages[packageName].Rules {
@@ -1572,7 +1570,7 @@ func TestParseYAML_feed(t *testing.T) {
 		panic(err)
 	}
 
-        packageName := "manifest5"
+	packageName := "manifest5"
 
 	assert.Equal(t, 1, len(manifest.Packages[packageName].Feeds), "Get feed list failed.")
 	for feed_name := range manifest.Packages[packageName].Feeds {
@@ -1608,7 +1606,7 @@ func TestParseYAML_param(t *testing.T) {
 		panic(err)
 	}
 
-        packageName := "validateParams"
+	packageName := "validateParams"
 
 	assert.Equal(t, 1, len(manifest.Packages[packageName].Actions), "Get action list failed.")
 	for action_name := range manifest.Packages[packageName].Actions {
@@ -1667,84 +1665,84 @@ func TestParseYAML_param(t *testing.T) {
 }
 
 func TestPackageName_Env_Var(t *testing.T) {
-    testPackage := "test_package"
-    os.Setenv("package_name", testPackage)
-    testPackageSec := "test_package_second"
-    os.Setenv("package_name_second", testPackageSec)
-    mm := NewYAMLParser()
-    manifestfile := "../tests/dat/manifest_validate_package_grammar_env_var.yaml"
-    manifest, _ := mm.ParseManifest(manifestfile)
-    assert.Equal(t, 4, len(manifest.Packages), "Get package list failed.")
-    expectedPackages := [4]string{testPackage, testPackageSec, testPackage + "suffix", testPackage+ "-" + testPackageSec}
-    for _, pkg_name := range expectedPackages {
-        var pkg = manifest.Packages[pkg_name]
-        assert.Equal(t, "1.0", pkg.Version, "Get the wrong package version.")
-        assert.Equal(t, "Apache-2.0", pkg.License, "Get the wrong license.")
-    }
+	testPackage := "test_package"
+	os.Setenv("package_name", testPackage)
+	testPackageSec := "test_package_second"
+	os.Setenv("package_name_second", testPackageSec)
+	mm := NewYAMLParser()
+	manifestfile := "../tests/dat/manifest_validate_package_grammar_env_var.yaml"
+	manifest, _ := mm.ParseManifest(manifestfile)
+	assert.Equal(t, 4, len(manifest.Packages), "Get package list failed.")
+	expectedPackages := [4]string{testPackage, testPackageSec, testPackage + "suffix", testPackage + "-" + testPackageSec}
+	for _, pkg_name := range expectedPackages {
+		var pkg = manifest.Packages[pkg_name]
+		assert.Equal(t, "1.0", pkg.Version, "Get the wrong package version.")
+		assert.Equal(t, "Apache-2.0", pkg.License, "Get the wrong license.")
+	}
 }
 
 func TestRuleName_Env_Var(t *testing.T) {
-    // read and parse manifest file with env var for rule name, and rule trigger and action
-    testRule := "test_rule"
-    os.Setenv("rule_name", testRule)
-    testTrigger := "test_trigger"
-    os.Setenv("trigger_name", testTrigger)
-    testAction := "test_actions"
-    os.Setenv("action_name", testAction);
-    mm := NewYAMLParser()
-    manifestfile := "../tests/dat/manifest_data_rule_env_var.yaml"
-    manifest, _ := mm.ParseManifest(manifestfile)
-    rules, err := mm.ComposeRulesFromAllPackages(manifest)
-    if err != nil {
-        assert.Fail(t, "Failed to compose rules")
-    }
-    packageName := "manifest1"
-
-    assert.Equal(t, 1, len(manifest.Packages[packageName].Rules), "Get rule list failed.")
-    for _, rule := range rules {
-      fmt.Print("ruleName:  ")
-      fmt.Print(rule)
-      //var rule = manifest.Packages[packageName].Rules[rule_name]
-      switch rule.Name {
-      case testRule:
-        assert.Equal(t, "test_trigger", rule.Trigger, "Get trigger name failed.")
-        assert.Equal(t, packageName + "/" + testAction, rule.Action, "Get action name failed.")
-        //assert.Equal(t, "true", rule.Rule, "Get rule expression failed.")
-      default:
-        t.Error("Get rule name failed")
-      }
-    }
+	// read and parse manifest file with env var for rule name, and rule trigger and action
+	testRule := "test_rule"
+	os.Setenv("rule_name", testRule)
+	testTrigger := "test_trigger"
+	os.Setenv("trigger_name", testTrigger)
+	testAction := "test_actions"
+	os.Setenv("action_name", testAction)
+	mm := NewYAMLParser()
+	manifestfile := "../tests/dat/manifest_data_rule_env_var.yaml"
+	manifest, _ := mm.ParseManifest(manifestfile)
+	rules, err := mm.ComposeRulesFromAllPackages(manifest)
+	if err != nil {
+		assert.Fail(t, "Failed to compose rules")
+	}
+	packageName := "manifest1"
+
+	assert.Equal(t, 1, len(manifest.Packages[packageName].Rules), "Get rule list failed.")
+	for _, rule := range rules {
+		fmt.Print("ruleName:  ")
+		fmt.Print(rule)
+		//var rule = manifest.Packages[packageName].Rules[rule_name]
+		switch rule.Name {
+		case testRule:
+			assert.Equal(t, "test_trigger", rule.Trigger, "Get trigger name failed.")
+			assert.Equal(t, packageName+"/"+testAction, rule.Action, "Get action name failed.")
+			//assert.Equal(t, "true", rule.Rule, "Get rule expression failed.")
+		default:
+			t.Error("Get rule name failed")
+		}
+	}
 }
 
 func TestComposeActionForAnnotations(t *testing.T) {
-    manifestFile := "../tests/dat/manifest_validate_action_annotations.yaml"
-    mm := NewYAMLParser()
-    manifest, _ := mm.ParseManifest(manifestFile)
-    pkg_name := "packageActionAnnotations"
-    pkg := manifest.Packages[pkg_name]
-    assert.NotNil(t, pkg, "Could not find package with name " + pkg_name)
-    action_name := "helloworld"
-    action := pkg.Actions[action_name]
-    assert.NotNil(t, action, "Could not find action with name " + action_name)
-    actual_annotations := action.Annotations
-    expected_annotations := map[string]interface{} {
-        "action_annotation_1": "this is annotation 1",
-        "action_annotation_2": "this is annotation 2",
-        "action_annotation_3": "this is annotation 3",
-        "action_annotation_4": "this is annotation 4",
-    }
-    assert.Equal(t, len(actual_annotations), len(expected_annotations), "Could not find expected number of annotations specified in manifest file")
-    eq := reflect.DeepEqual(actual_annotations, expected_annotations)
-    assert.True(t, eq, "Expected list of annotations does not match with actual list, expected annotations: %v actual annotations: %v", expected_annotations, actual_annotations)
-
-    pkg_name = "packageActionAnnotationsWithWebAction"
-    pkg = manifest.Packages[pkg_name]
-    assert.NotNil(t, pkg, "Could not find package with name " + pkg_name)
-    action = pkg.Actions[action_name]
-    assert.NotNil(t, action, "Could not find action with name " + action_name)
-    actual_annotations = action.Annotations
-    expected_annotations["web-export"] = true
-    assert.Equal(t, len(actual_annotations), len(expected_annotations), "Could not find expected number of annotations specified in manifest file")
-    eq = reflect.DeepEqual(actual_annotations, expected_annotations)
-    assert.True(t, eq, "Expected list of annotations does not match with actual list, expected annotations: %v actual annotations: %v", expected_annotations, actual_annotations)
+	manifestFile := "../tests/dat/manifest_validate_action_annotations.yaml"
+	mm := NewYAMLParser()
+	manifest, _ := mm.ParseManifest(manifestFile)
+	pkg_name := "packageActionAnnotations"
+	pkg := manifest.Packages[pkg_name]
+	assert.NotNil(t, pkg, "Could not find package with name "+pkg_name)
+	action_name := "helloworld"
+	action := pkg.Actions[action_name]
+	assert.NotNil(t, action, "Could not find action with name "+action_name)
+	actual_annotations := action.Annotations
+	expected_annotations := map[string]interface{}{
+		"action_annotation_1": "this is annotation 1",
+		"action_annotation_2": "this is annotation 2",
+		"action_annotation_3": "this is annotation 3",
+		"action_annotation_4": "this is annotation 4",
+	}
+	assert.Equal(t, len(actual_annotations), len(expected_annotations), "Could not find expected number of annotations specified in manifest file")
+	eq := reflect.DeepEqual(actual_annotations, expected_annotations)
+	assert.True(t, eq, "Expected list of annotations does not match with actual list, expected annotations: %v actual annotations: %v", expected_annotations, actual_annotations)
+
+	pkg_name = "packageActionAnnotationsWithWebAction"
+	pkg = manifest.Packages[pkg_name]
+	assert.NotNil(t, pkg, "Could not find package with name "+pkg_name)
+	action = pkg.Actions[action_name]
+	assert.NotNil(t, action, "Could not find action with name "+action_name)
+	actual_annotations = action.Annotations
+	expected_annotations["web-export"] = true
+	assert.Equal(t, len(actual_annotations), len(expected_annotations), "Could not find expected number of annotations specified in manifest file")
+	eq = reflect.DeepEqual(actual_annotations, expected_annotations)
+	assert.True(t, eq, "Expected list of annotations does not match with actual list, expected annotations: %v actual annotations: %v", expected_annotations, actual_annotations)
 }
diff --git a/parsers/parameters.go b/parsers/parameters.go
index 01d5fff..bd05201 100644
--- a/parsers/parameters.go
+++ b/parsers/parameters.go
@@ -17,12 +17,12 @@
 package parsers
 
 import (
-	"fmt"
-	"reflect"
 	"encoding/json"
+	"fmt"
 	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskenv"
+	"reflect"
 )
 
 // TODO(): Support other valid Package Manifest types
@@ -30,11 +30,11 @@ import (
 // TODO(): Support JSON schema validation for type: json
 // TODO(): Support OpenAPI schema validation
 const (
-	STRING	string = "string"
-	INTEGER	string = "integer"
-	FLOAT	string = "float"
-	BOOLEAN	string = "boolean"
-	JSON	string = "json"
+	STRING  string = "string"
+	INTEGER string = "integer"
+	FLOAT   string = "float"
+	BOOLEAN string = "boolean"
+	JSON    string = "json"
 )
 
 var validParameterNameMap = map[string]string{
@@ -50,7 +50,7 @@ var validParameterNameMap = map[string]string{
 	"int64":   INTEGER,
 	"float32": FLOAT,
 	"float64": FLOAT,
-	JSON:	   JSON,
+	JSON:      JSON,
 	"map":     JSON,
 }
 
@@ -88,18 +88,17 @@ func getTypeDefaultValue(typeName string) interface{} {
 	return nil
 }
 
-
 /*
-    ResolveParamTypeFromValue Resolves the Parameter's data type from its actual value.
+   ResolveParamTypeFromValue Resolves the Parameter's data type from its actual value.
 
-    Inputs:
-    - paramName: name of the parameter for error reporting
-    - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
-    - value: the parameter value to resolve
+   Inputs:
+   - paramName: name of the parameter for error reporting
+   - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
+   - value: the parameter value to resolve
 
-    Returns:
-    - (string) parameter type name as a string
- */
+   Returns:
+   - (string) parameter type name as a string
+*/
 func ResolveParamTypeFromValue(paramName string, value interface{}, filePath string) (string, error) {
 	// Note: 'string' is the default type if not specified and not resolvable.
 	var paramType string = "string"
@@ -121,24 +120,23 @@ func ResolveParamTypeFromValue(paramName string, value interface{}, filePath str
 	return paramType, err
 }
 
-
 /*
-    resolveSingleLineParameter assures that a Parameter's Type is correctly identified and set from its Value.
+   resolveSingleLineParameter assures that a Parameter's Type is correctly identified and set from its Value.
 
-    Additionally, this function:
+   Additionally, this function:
 
-    - detects if the parameter value contains the name of a valid OpenWhisk parameter types. if so, the
-      - param.Type is set to detected OpenWhisk parameter type.
-      - param.Value is set to the zero (default) value for that OpenWhisk parameter type.
+   - detects if the parameter value contains the name of a valid OpenWhisk parameter types. if so, the
+     - param.Type is set to detected OpenWhisk parameter type.
+     - param.Value is set to the zero (default) value for that OpenWhisk parameter type.
 
-    Inputs:
-    - filePath: the path, including name, of the YAML file which contained the parameter for error reporting
-    - paramName: name of the parameter for error reporting
-    - param: pointer to Parameter structure being resolved
+   Inputs:
+   - filePath: the path, including name, of the YAML file which contained the parameter for error reporting
+   - paramName: name of the parameter for error reporting
+   - param: pointer to Parameter structure being resolved
 
-    Returns:
-    - (interface{}) the parameter's resolved value
- */
+   Returns:
+   - (interface{}) the parameter's resolved value
+*/
 func resolveSingleLineParameter(filePath string, paramName string, param *Parameter) (interface{}, error) {
 	var errorParser error
 
@@ -162,28 +160,28 @@ func resolveSingleLineParameter(filePath string, paramName string, param *Parame
 	} else {
 		// TODO() - move string to i18n
 		return param.Value, wskderrors.NewYAMLParserErr(filePath,
-			"Parameter [" + paramName + "] is not single-line format.")
+			"Parameter ["+paramName+"] is not single-line format.")
 	}
 
 	return param.Value, errorParser
 }
 
 /*
-    resolveMultiLineParameter assures that the values for Parameter Type and Value are properly set and are valid.
+   resolveMultiLineParameter assures that the values for Parameter Type and Value are properly set and are valid.
 
-    Additionally, this function:
-    - uses param.Default as param.Value if param.Value is not provided
-    - uses the actual param.Value data type for param.type if param.Type is not provided
+   Additionally, this function:
+   - uses param.Default as param.Value if param.Value is not provided
+   - uses the actual param.Value data type for param.type if param.Type is not provided
 
-    Inputs:
-    - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
-    - paramName: name of the parameter for error reporting
-    - param: pointer to Parameter structure being resolved
+   Inputs:
+   - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
+   - paramName: name of the parameter for error reporting
+   - param: pointer to Parameter structure being resolved
 
-    Returns:
-    - (interface{}) the parameter's resolved value
+   Returns:
+   - (interface{}) the parameter's resolved value
 
- */
+*/
 func resolveMultiLineParameter(filePath string, paramName string, param *Parameter) (interface{}, error) {
 	var errorParser error
 
@@ -203,7 +201,7 @@ func resolveMultiLineParameter(filePath string, paramName string, param *Paramet
 			if !isValidParameterType(param.Type) {
 				// TODO() - move string to i18n
 				return param.Value, wskderrors.NewYAMLParserErr(filePath,
-					"Parameter [" + paramName + "] has an invalid Type. [" + param.Type + "]")
+					"Parameter ["+paramName+"] has an invalid Type. ["+param.Type+"]")
 			}
 		} else {
 			// if we do not have a value for the Parameter Type, use the Parameter Value's Type
@@ -217,30 +215,28 @@ func resolveMultiLineParameter(filePath string, paramName string, param *Paramet
 	} else {
 		// TODO() - move string to i18n
 		return param.Value, wskderrors.NewYAMLParserErr(filePath,
-			"Parameter [" + paramName + "] is not multiline format.")
+			"Parameter ["+paramName+"] is not multiline format.")
 	}
 
-
 	return param.Value, errorParser
 }
 
-
 /*
-    resolveJSONParameter assure JSON data is converted to a map[string]{interface*} type.
+   resolveJSONParameter assure JSON data is converted to a map[string]{interface*} type.
 
-    This function handles the forms JSON data appears in:
-    1) a string containing JSON, which needs to be parsed into map[string]interface{}
-    2) is a map of JSON (but not a map[string]interface{}
+   This function handles the forms JSON data appears in:
+   1) a string containing JSON, which needs to be parsed into map[string]interface{}
+   2) is a map of JSON (but not a map[string]interface{}
 
-    Inputs:
-    - paramName: name of the parameter for error reporting
-    - filePath: the path, including name, of the YAML file which contained the parameter for error reporting
-    - param: pointer to Parameter structure being resolved
-    - value: the current actual value of the parameter being resolved
+   Inputs:
+   - paramName: name of the parameter for error reporting
+   - filePath: the path, including name, of the YAML file which contained the parameter for error reporting
+   - param: pointer to Parameter structure being resolved
+   - value: the current actual value of the parameter being resolved
 
-    Returns:
-    - (interface{}) the parameter's resolved value
- */
+   Returns:
+   - (interface{}) the parameter's resolved value
+*/
 func resolveJSONParameter(filePath string, paramName string, param *Parameter, value interface{}) (interface{}, error) {
 	var errorParser error
 
@@ -259,46 +255,45 @@ func resolveJSONParameter(filePath string, paramName string, param *Parameter, v
 		// Case 2: value contains a map of JSON
 		// We must make sure the map type is map[string]interface{}; otherwise we cannot
 		// marshall it later on to serialize in the body of an HTTP request.
-		if( param.Value != nil && reflect.TypeOf(param.Value).Kind() == reflect.Map ) {
+		if param.Value != nil && reflect.TypeOf(param.Value).Kind() == reflect.Map {
 			if _, ok := param.Value.(map[interface{}]interface{}); ok {
-				var temp map[string]interface{} =
-					utils.ConvertInterfaceMap(param.Value.(map[interface{}]interface{}))
+				var temp map[string]interface{} = utils.ConvertInterfaceMap(param.Value.(map[interface{}]interface{}))
 				//fmt.Printf("EXIT: Parameter [%s] type=[%v] value=[%v]\n", paramName, param.Type, temp)
 				return temp, errorParser
 			}
-		} else{
+		} else {
 			errorParser = wskderrors.NewParameterTypeMismatchError(filePath, paramName, JSON, param.Type)
 		}
 
 	} else {
 		// TODO() - move string to i18n
-		errorParser = wskderrors.NewYAMLParserErr(filePath, "Parameter [" + paramName + "] is not JSON format.")
+		errorParser = wskderrors.NewYAMLParserErr(filePath, "Parameter ["+paramName+"] is not JSON format.")
 	}
 
 	return param.Value, errorParser
 }
 
 /*
-    ResolveParameter assures that the Parameter structure's values are correctly filled out for
-    further processing.  This includes special processing for
-
-    - single-line format parameters
-      - deriving missing param.Type from param.Value
-      - resolving case where param.Value contains a valid Parameter type name
-    - multi-line format parameters:
-      - assures that param.Value is set while taking into account param.Default
-      - validating param.Type
-
-    Note: parameter values may set later (overridden) by an (optional) Deployment file
-
-    Inputs:
-    - paramName: name of the parameter for error reporting
-    - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
-    - param: pointer to Parameter structure being resolved
-
-    Returns:
-    - (interface{}) the parameter's resolved value
- */
+   ResolveParameter assures that the Parameter structure's values are correctly filled out for
+   further processing.  This includes special processing for
+
+   - single-line format parameters
+     - deriving missing param.Type from param.Value
+     - resolving case where param.Value contains a valid Parameter type name
+   - multi-line format parameters:
+     - assures that param.Value is set while taking into account param.Default
+     - validating param.Type
+
+   Note: parameter values may set later (overridden) by an (optional) Deployment file
+
+   Inputs:
+   - paramName: name of the parameter for error reporting
+   - filepath: the path, including name, of the YAML file which contained the parameter for error reporting
+   - param: pointer to Parameter structure being resolved
+
+   Returns:
+   - (interface{}) the parameter's resolved value
+*/
 func ResolveParameter(paramName string, param *Parameter, filePath string) (interface{}, error) {
 
 	var errorParser error
@@ -321,7 +316,7 @@ func ResolveParameter(paramName string, param *Parameter, filePath string) (inte
 	// See if we have any Environment Variable replacement within the parameter's value
 
 	// Make sure the parameter's value is a valid, non-empty string
-	if ( param.Value != nil && param.Type == "string") {
+	if param.Value != nil && param.Type == "string" {
 		// perform $ notation replacement on string if any exist
 		value = wskenv.GetEnvVar(param.Value)
 	}
diff --git a/parsers/yamlparser.go b/parsers/yamlparser.go
index 6bcee66..b0b35fe 100644
--- a/parsers/yamlparser.go
+++ b/parsers/yamlparser.go
@@ -24,44 +24,44 @@ import (
 
 // YAML schema key names
 // DO NOT translate
-const(
-	YAML_KEY_ACTION 	= "action"
-	YAML_KEY_ANNOTATION 	= "annotoation"
-	YAML_KEY_API 		= "api"
-	YAML_KEY_FEED 		= "feed"
-	YAML_KEY_NAMESPACE 	= "namespace"
-	YAML_KEY_PACKAGES 	= "packages"
-	YAML_KEY_PROJECT 	= "project"
-	YAML_KEY_RULE 		= "rule"
-	YAML_KEY_SEQUENCE 	= "sequence"
-	YAML_KEY_TRIGGER 	= "trigger"
-	YAML_KEY_APPLICATION 	= "application"	// deprecated
-	YAML_KEY_PACKAGE 	= "package"	// deprecated
-	YAML_KEY_SOURCE		= "source"	// deprecated
+const (
+	YAML_KEY_ACTION      = "action"
+	YAML_KEY_ANNOTATION  = "annotoation"
+	YAML_KEY_API         = "api"
+	YAML_KEY_FEED        = "feed"
+	YAML_KEY_NAMESPACE   = "namespace"
+	YAML_KEY_PACKAGES    = "packages"
+	YAML_KEY_PROJECT     = "project"
+	YAML_KEY_RULE        = "rule"
+	YAML_KEY_SEQUENCE    = "sequence"
+	YAML_KEY_TRIGGER     = "trigger"
+	YAML_KEY_APPLICATION = "application" // deprecated
+	YAML_KEY_PACKAGE     = "package"     // deprecated
+	YAML_KEY_SOURCE      = "source"      // deprecated
 )
 
 // YAML schema key values
-const(
-	YAML_VALUE_BRANCH_MASTER	= "master"
+const (
+	YAML_VALUE_BRANCH_MASTER = "master"
 )
 
 // default values
-const(
-	DEFAULT_PACKAGE_LICENSE	= "unlicensed"
-	DEFAULT_PACKAGE_VERSION	= "0.0.1"
+const (
+	DEFAULT_PACKAGE_LICENSE = "unlicensed"
+	DEFAULT_PACKAGE_VERSION = "0.0.1"
 )
 
 // Known Limit values
-const(
+const (
 	// supported
-	LIMIT_VALUE_TIMEOUT			= "timeout"
-	LIMIT_VALUE_MEMORY_SIZE			= "memorySize"
-	LIMIT_VALUE_LOG_SIZE			= "logSize"
+	LIMIT_VALUE_TIMEOUT     = "timeout"
+	LIMIT_VALUE_MEMORY_SIZE = "memorySize"
+	LIMIT_VALUE_LOG_SIZE    = "logSize"
 	// unsupported
-	LIMIT_VALUE_CONCURRENT_ACTIVATIONS	= "concurrentActivations"
-	LIMIT_VALUE_USER_INVOCATION_RATE	= "userInvocationRate"
-	LIMIT_VALUE_CODE_SIZE			= "codeSize"
-	LIMIT_VALUE_PARAMETER_SIZE		= "parameterSize"
+	LIMIT_VALUE_CONCURRENT_ACTIVATIONS = "concurrentActivations"
+	LIMIT_VALUE_USER_INVOCATION_RATE   = "userInvocationRate"
+	LIMIT_VALUE_CODE_SIZE              = "codeSize"
+	LIMIT_VALUE_PARAMETER_SIZE         = "parameterSize"
 )
 
 var LIMITS_SUPPORTED = [](string){
diff --git a/tests/apps/owbp-cloudant-trigger/owbp-cloudant-trigger_test.go b/tests/apps/owbp-cloudant-trigger/owbp-cloudant-trigger_test.go
index 557ac85..b88062b 100644
--- a/tests/apps/owbp-cloudant-trigger/owbp-cloudant-trigger_test.go
+++ b/tests/apps/owbp-cloudant-trigger/owbp-cloudant-trigger_test.go
@@ -20,17 +20,17 @@
 package tests
 
 import (
-	"testing"
+	"fmt"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
 	"os"
-	"fmt"
+	"testing"
 )
 
 var projectPath = "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/apps/owbp-cloudant-trigger/runtimes/"
 
 func TestCloudantTriggerNode(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "node/manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "node/manifest.yaml"
 	deploymentPath := ""
 	os.Setenv("CLOUDANT_DATABASE", "testdb")
 	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
@@ -48,7 +48,7 @@ func TestCloudantTriggerNode(t *testing.T) {
 }
 
 func TestCloudantTriggerPhp(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "php/manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "php/manifest.yaml"
 	deploymentPath := ""
 	os.Setenv("CLOUDANT_DATABASE", "testdb")
 	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
@@ -66,7 +66,7 @@ func TestCloudantTriggerPhp(t *testing.T) {
 }
 
 func TestCloudantTriggerPython(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "python/manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "python/manifest.yaml"
 	deploymentPath := ""
 	os.Setenv("CLOUDANT_DATABASE", "testdb")
 	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
@@ -84,7 +84,7 @@ func TestCloudantTriggerPython(t *testing.T) {
 }
 
 func TestCloudantTriggerSwift(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "swift/manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "swift/manifest.yaml"
 	deploymentPath := ""
 	os.Setenv("CLOUDANT_DATABASE", "testdb")
 	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
@@ -100,4 +100,3 @@ func TestCloudantTriggerSwift(t *testing.T) {
 		assert.Equal(t, nil, err, "Failed to undeploy the manifest file.")
 	}
 }
-
diff --git a/tests/src/integration/alarmtrigger/alarmtrigger_test.go b/tests/src/integration/alarmtrigger/alarmtrigger_test.go
index ff4ba29..6bf080d 100644
--- a/tests/src/integration/alarmtrigger/alarmtrigger_test.go
+++ b/tests/src/integration/alarmtrigger/alarmtrigger_test.go
@@ -20,11 +20,11 @@
 package tests
 
 import (
+	"fmt"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
 	"os"
 	"testing"
-    "fmt"
 )
 
 /* *
@@ -32,18 +32,18 @@ import (
  * integration test.
  */
 func TestAlarmTrigger(t *testing.T) {
-    wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
-    err := common.ValidateWskprops(wskprops)
-    if err != nil {
-        fmt.Println(err.Error())
-        fmt.Println("Wsk properties are not properly configured, so tests are skipped.")
-    } else {
-        wskdeploy := common.NewWskdeploy()
-        _, err := wskdeploy.DeployWithCredentials(manifestPath, deploymentPath, wskprops)
-        assert.Equal(t, nil, err, "Failed to deploy the manifest file.")
-        _, err = wskdeploy.UndeployWithCredentials(manifestPath, deploymentPath, wskprops)
-        assert.Equal(t, nil, err, "Failed to undeploy the manifest file.")
-    }
+	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
+	err := common.ValidateWskprops(wskprops)
+	if err != nil {
+		fmt.Println(err.Error())
+		fmt.Println("Wsk properties are not properly configured, so tests are skipped.")
+	} else {
+		wskdeploy := common.NewWskdeploy()
+		_, err := wskdeploy.DeployWithCredentials(manifestPath, deploymentPath, wskprops)
+		assert.Equal(t, nil, err, "Failed to deploy the manifest file.")
+		_, err = wskdeploy.UndeployWithCredentials(manifestPath, deploymentPath, wskprops)
+		assert.Equal(t, nil, err, "Failed to undeploy the manifest file.")
+	}
 }
 
 var (
diff --git a/tests/src/integration/apigateway/apigateway_test.go b/tests/src/integration/apigateway/apigateway_test.go
index 7723b15..6bc3355 100644
--- a/tests/src/integration/apigateway/apigateway_test.go
+++ b/tests/src/integration/apigateway/apigateway_test.go
@@ -20,10 +20,10 @@
 package tests
 
 import (
-	"testing"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
 	"os"
+	"testing"
 )
 
 // TODO: write the integration against openwhisk
@@ -35,5 +35,3 @@ func TestTriggerRule(t *testing.T) {
 	_, err = wskdeploy.UndeployManifestPathOnly(manifestPath)
 	assert.Equal(t, nil, err, "Failed to undeploy based on the manifest file.")
 }
-
-
diff --git a/tests/src/integration/cloudant/cloudant_test.go b/tests/src/integration/cloudant/cloudant_test.go
index a9e0452..b8eeea1 100644
--- a/tests/src/integration/cloudant/cloudant_test.go
+++ b/tests/src/integration/cloudant/cloudant_test.go
@@ -20,17 +20,17 @@
 package tests
 
 import (
-	"testing"
+	"fmt"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
 	"os"
-	"fmt"
+	"testing"
 )
 
 func TestCloudant(t *testing.T) {
 	os.Setenv("CLOUDANT_DATABASE", "testdb")
 	wskprops := common.GetWskpropsFromEnvVars(common.BLUEMIX_APIHOST, common.BLUEMIX_NAMESPACE, common.BLUEMIX_AUTH)
-    err := common.ValidateWskprops(wskprops)
+	err := common.ValidateWskprops(wskprops)
 	if err != nil {
 		fmt.Println(err.Error())
 		fmt.Println("Wsk properties are not properly configured, so tests are skipped.")
@@ -44,7 +44,6 @@ func TestCloudant(t *testing.T) {
 }
 
 var (
-	manifestPath = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/cloudant/manifest.yaml"
+	manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/cloudant/manifest.yaml"
 	deploymentPath = ""
 )
-
diff --git a/tests/src/integration/common/wskdeploy.go b/tests/src/integration/common/wskdeploy.go
index 7551c27..eff1920 100644
--- a/tests/src/integration/common/wskdeploy.go
+++ b/tests/src/integration/common/wskdeploy.go
@@ -22,16 +22,16 @@ import (
 	"errors"
 	"fmt"
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
-	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
 	"github.com/apache/incubator-openwhisk-wskdeploy/deployers"
+	"github.com/apache/incubator-openwhisk-wskdeploy/utils"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
 	"github.com/fatih/color"
 	"github.com/mattn/go-colorable"
 	"os"
 	"os/exec"
-	"strings"
-	"path/filepath"
 	"path"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskderrors"
+	"path/filepath"
+	"strings"
 )
 
 const (
@@ -205,7 +205,7 @@ func (wskdeploy *Wskdeploy) GetDeploymentObjects(manifestPath string, deployment
 	//invoke ConstructDeploymentPlan to create the in memory objects for deployment
 	err = deployer.ConstructDeploymentPlan()
 	if err != nil {
-		return nil,err
+		return nil, err
 	}
 	//return the deployment objects
 	return deployer.Deployment, nil
diff --git a/tests/src/integration/dependency/dependency_test.go b/tests/src/integration/dependency/dependency_test.go
index e5ca7cc..eda7b1d 100644
--- a/tests/src/integration/dependency/dependency_test.go
+++ b/tests/src/integration/dependency/dependency_test.go
@@ -20,25 +20,24 @@
 package tests
 
 import (
-    "github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
-    "github.com/stretchr/testify/assert"
-    "os"
-    "testing"
+	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
+	"github.com/stretchr/testify/assert"
+	"os"
+	"testing"
 )
 
-
 var wskprops = common.GetWskprops()
 
 // TODO: write the integration against openwhisk
 func TestDependency(t *testing.T) {
-    wskdeploy := common.NewWskdeploy()
-    _, err := wskdeploy.Deploy(manifestPath, deploymentPath)
-    assert.Equal(t, nil, err, "Failed to deploy based on the manifest and deployment files.")
-    _, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files.")
+	wskdeploy := common.NewWskdeploy()
+	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to deploy based on the manifest and deployment files.")
+	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files.")
 }
 
 var (
-    manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/dependency/manifest.yaml"
-    deploymentPath = ""
+	manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/dependency/manifest.yaml"
+	deploymentPath = ""
 )
diff --git a/tests/src/integration/flagstests/flags_test.go b/tests/src/integration/flagstests/flags_test.go
index 675504e..3c492f0 100644
--- a/tests/src/integration/flagstests/flags_test.go
+++ b/tests/src/integration/flagstests/flags_test.go
@@ -34,8 +34,8 @@ func TestSupportProjectPath(t *testing.T) {
 	projectPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests"
 	_, err := wskdeploy.DeployProjectPathOnly(projectPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the projectpath")
-    _, err = wskdeploy.UndeployProjectPathOnly(projectPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the projectpath")
+	_, err = wskdeploy.UndeployProjectPathOnly(projectPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the projectpath")
 }
 
 // support only projectpath with trailing slash
@@ -44,8 +44,8 @@ func TestSupportProjectPathTrailingSlash(t *testing.T) {
 	projectPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests" + "/"
 	_, err := wskdeploy.DeployProjectPathOnly(projectPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the projectpath")
-    _, err = wskdeploy.UndeployProjectPathOnly(projectPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the projectpath")
+	_, err = wskdeploy.UndeployProjectPathOnly(projectPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the projectpath")
 }
 
 // only a yaml manifest
@@ -54,8 +54,8 @@ func TestSupportManifestYamlPath(t *testing.T) {
 	manifestPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/manifest.yaml"
 	_, err := wskdeploy.DeployManifestPathOnly(manifestPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the manifestpath")
-    _, err = wskdeploy.UndeployManifestPathOnly(manifestPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath")
+	_, err = wskdeploy.UndeployManifestPathOnly(manifestPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath")
 }
 
 // only a yml manifest
@@ -64,8 +64,8 @@ func TestSupportManifestYmlPath(t *testing.T) {
 	manifestPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/manifest.yml"
 	_, err := wskdeploy.DeployManifestPathOnly(manifestPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the manifestpath")
-    _, err = wskdeploy.UndeployManifestPathOnly(manifestPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath")
+	_, err = wskdeploy.UndeployManifestPathOnly(manifestPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath")
 }
 
 // manifest yaml and deployment yaml
@@ -73,10 +73,10 @@ func TestSupportManifestYamlDeployment(t *testing.T) {
 	wskdeploy := common.NewWskdeploy()
 	manifestPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/deployment.yml"
-	_, err := wskdeploy.Deploy(manifestPath,deploymentPath)
+	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the manifestpath and deploymentpath.")
-    _, err = wskdeploy.Undeploy(manifestPath,deploymentPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath and deploymentpath.")
+	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath and deploymentpath.")
 }
 
 // manifest yml and deployment yaml
@@ -84,8 +84,8 @@ func TestSupportManifestYmlDeployment(t *testing.T) {
 	wskdeploy := common.NewWskdeploy()
 	manifestPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/manifest.yml"
 	deploymentPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/flagstests/deployment.yml"
-	_, err := wskdeploy.Deploy(manifestPath,deploymentPath)
+	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the manifestpath and deploymentpath.")
-    _, err = wskdeploy.Undeploy(manifestPath,deploymentPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath and deploymentpath.")
+	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifestpath and deploymentpath.")
 }
diff --git a/tests/src/integration/managed-deployment/managed-deployment_test.go b/tests/src/integration/managed-deployment/managed-deployment_test.go
index 10e8aa8..c3bf5d6 100644
--- a/tests/src/integration/managed-deployment/managed-deployment_test.go
+++ b/tests/src/integration/managed-deployment/managed-deployment_test.go
@@ -59,4 +59,3 @@ func TestManagedDeployment(t *testing.T) {
 	_, err = wskdeploy.ManagedDeployment(manifestPath, deploymentPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the manifest and deployment files.")
 }
-
diff --git a/tests/src/integration/runtimetests/runtimes_test.go b/tests/src/integration/runtimetests/runtimes_test.go
index 340c992..c488eb0 100644
--- a/tests/src/integration/runtimetests/runtimes_test.go
+++ b/tests/src/integration/runtimetests/runtimes_test.go
@@ -28,10 +28,9 @@ import (
 
 func TestExplicitRuntimes(t *testing.T) {
 	wskdeploy := common.NewWskdeploy()
-    projectPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/runtimetests"
-    _, err := wskdeploy.DeployProjectPathOnly(projectPath)
+	projectPath := os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/runtimetests"
+	_, err := wskdeploy.DeployProjectPathOnly(projectPath)
 	assert.Equal(t, nil, err, "Failed to deploy based on the project path")
-    _, err = wskdeploy.UndeployProjectPathOnly(projectPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the project path")
+	_, err = wskdeploy.UndeployProjectPathOnly(projectPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the project path")
 }
-
diff --git a/tests/src/integration/triggerrule/triggerrule_test.go b/tests/src/integration/triggerrule/triggerrule_test.go
index b93b8e9..791dabc 100644
--- a/tests/src/integration/triggerrule/triggerrule_test.go
+++ b/tests/src/integration/triggerrule/triggerrule_test.go
@@ -20,10 +20,10 @@
 package tests
 
 import (
-	"testing"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
 	"os"
+	"testing"
 )
 
 var wskprops = common.GetWskprops()
@@ -38,7 +38,6 @@ func TestTriggerRule(t *testing.T) {
 }
 
 var (
-	manifestPath = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/triggerrule/manifest.yml"
+	manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/triggerrule/manifest.yml"
 	deploymentPath = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/triggerrule/deployment.yml"
 )
-
diff --git a/tests/src/integration/validate-action-annotations/validate-action-annotations_test.go b/tests/src/integration/validate-action-annotations/validate-action-annotations_test.go
index f48aa29..78f86fb 100644
--- a/tests/src/integration/validate-action-annotations/validate-action-annotations_test.go
+++ b/tests/src/integration/validate-action-annotations/validate-action-annotations_test.go
@@ -29,7 +29,7 @@ import (
 var path = "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/validate-action-annotations/"
 
 func TestActionAnnotations(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + path + "manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + path + "manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + path + "deployment.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -39,10 +39,9 @@ func TestActionAnnotations(t *testing.T) {
 }
 
 func TestInvalidActionAnnotations(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + path + "manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + path + "manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + path + "deployment-with-invalid-annotations.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
 	assert.NotNil(t, err, "Failed to validate invalid annotations in deployment file")
 }
-
diff --git a/tests/src/integration/validate-application-and-project/validate-application-and-project_test.go b/tests/src/integration/validate-application-and-project/validate-application-and-project_test.go
index a110ef2..f49e1c4 100644
--- a/tests/src/integration/validate-application-and-project/validate-application-and-project_test.go
+++ b/tests/src/integration/validate-application-and-project/validate-application-and-project_test.go
@@ -29,7 +29,7 @@ import (
 var path = "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/validate-application-and-project/"
 
 func TestApplicationInDeployment(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + path + "manifest-with-application.yaml"
+	manifestPath := os.Getenv("GOPATH") + path + "manifest-with-application.yaml"
 	deploymentPath := os.Getenv("GOPATH") + path + "deployment-with-application.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -39,7 +39,7 @@ func TestApplicationInDeployment(t *testing.T) {
 }
 
 func TestProjectInDeployment(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + path + "manifest-with-project.yaml"
+	manifestPath := os.Getenv("GOPATH") + path + "manifest-with-project.yaml"
 	deploymentPath := os.Getenv("GOPATH") + path + "deployment-with-project.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -47,4 +47,3 @@ func TestProjectInDeployment(t *testing.T) {
 	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
 	assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files.")
 }
-
diff --git a/tests/src/integration/validate-binding-inputs-annotations/validate-bind-inputs-anno_test.go b/tests/src/integration/validate-binding-inputs-annotations/validate-bind-inputs-anno_test.go
index 8e0d159..715af01 100644
--- a/tests/src/integration/validate-binding-inputs-annotations/validate-bind-inputs-anno_test.go
+++ b/tests/src/integration/validate-binding-inputs-annotations/validate-bind-inputs-anno_test.go
@@ -30,7 +30,7 @@ var PATH = "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integ
 
 func TestBindingInputsAnnotations(t *testing.T) {
 
-	manifestPath   := os.Getenv("GOPATH") + PATH + "manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + PATH + "manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + PATH + "deployment.yaml"
 
 	wskdeploy := common.NewWskdeploy()
@@ -146,11 +146,9 @@ func TestBindingInputsAnnotations(t *testing.T) {
 		}
 	}
 
-
 	// testing deploy and undeploy
 	_, err = wskdeploy.Deploy(manifestPath, deploymentPath)
 	assert.NoError(t, err, "Failed to deploy based on the manifest and deployment files.")
 	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
 	assert.NoError(t, err, "Failed to undeploy based on the manifest and deployment files.")
 }
-
diff --git a/tests/src/integration/validate-manifest-deployment-file-extensions/validate-file-extensions_test.go b/tests/src/integration/validate-manifest-deployment-file-extensions/validate-file-extensions_test.go
index 77c3e6e..0a1940c 100644
--- a/tests/src/integration/validate-manifest-deployment-file-extensions/validate-file-extensions_test.go
+++ b/tests/src/integration/validate-manifest-deployment-file-extensions/validate-file-extensions_test.go
@@ -29,7 +29,7 @@ import (
 var projectPath = "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/validate-manifest-deployment-file-extensions/"
 
 func TestYAMLExtension(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "deployment.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -39,7 +39,7 @@ func TestYAMLExtension(t *testing.T) {
 }
 
 func TestYMLExtension(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "manifest.yml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "manifest.yml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "deployment.yml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -49,7 +49,7 @@ func TestYMLExtension(t *testing.T) {
 }
 
 func TestNonStandardFileNames(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "not-standard-manifest.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "not-standard-manifest.yaml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "not-standard-deployment.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -59,7 +59,7 @@ func TestNonStandardFileNames(t *testing.T) {
 }
 
 func TestRandomFileNames(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "random-name-1.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "random-name-1.yaml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "random-name-2.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -69,7 +69,7 @@ func TestRandomFileNames(t *testing.T) {
 }
 
 func TestYAMLManifestWithYMLDeployment(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "yaml-manifest-with-yml-deployment.yaml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "yaml-manifest-with-yml-deployment.yaml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "yml-deployment-with-yaml-manifest.yml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -79,7 +79,7 @@ func TestYAMLManifestWithYMLDeployment(t *testing.T) {
 }
 
 func TestYMLManifestWithYAMLDeployment(t *testing.T) {
-	manifestPath   := os.Getenv("GOPATH") + projectPath + "yml-manifest-with-yaml-deployment.yml"
+	manifestPath := os.Getenv("GOPATH") + projectPath + "yml-manifest-with-yaml-deployment.yml"
 	deploymentPath := os.Getenv("GOPATH") + projectPath + "yaml-deployment-with-yml-manifest.yaml"
 	wskdeploy := common.NewWskdeploy()
 	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
@@ -87,4 +87,3 @@ func TestYMLManifestWithYAMLDeployment(t *testing.T) {
 	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
 	assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files with .yml manifest and .yaml deployment file.")
 }
-
diff --git a/tests/src/integration/validateSequencesCreation/validateSequencesCreation_test.go b/tests/src/integration/validateSequencesCreation/validateSequencesCreation_test.go
index 0bc6679..bb3e7a2 100644
--- a/tests/src/integration/validateSequencesCreation/validateSequencesCreation_test.go
+++ b/tests/src/integration/validateSequencesCreation/validateSequencesCreation_test.go
@@ -20,12 +20,12 @@
 package tests
 
 import (
+	"fmt"
 	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
 	"github.com/stretchr/testify/assert"
-	"os"
 	"io/ioutil"
+	"os"
 	"strconv"
-	"fmt"
 	"strings"
 	"testing"
 )
@@ -43,13 +43,13 @@ func composeDeployFiles(count int) (manifestStr string, deploymentStr string) {
     TestSequencesCreation:
       actions:
 `
-	sequenceStr :=`  sequences:
+	sequenceStr := `  sequences:
     validate-sequence:
       actions: `
 
 	for i := 1; i < count+1; i++ {
-        	manifestStr = manifestStr + "    func"+strconv.Itoa(i)+":"+
-`
+		manifestStr = manifestStr + "    func" + strconv.Itoa(i) + ":" +
+			`
       function: actions/function.js
       runtime: nodejs:6
       inputs:
@@ -58,44 +58,44 @@ func composeDeployFiles(count int) (manifestStr string, deploymentStr string) {
       outputs:
         visited: string
 `
-		sequenceStr = sequenceStr + "func"+strconv.Itoa(i)+","
-		deploymentStr = deploymentStr + "        func"+strconv.Itoa(i)+":"+
-`
+		sequenceStr = sequenceStr + "func" + strconv.Itoa(i) + ","
+		deploymentStr = deploymentStr + "        func" + strconv.Itoa(i) + ":" +
+			`
           inputs:
-            functionID: `+strconv.Itoa(i)+
-`
+            functionID: ` + strconv.Itoa(i) +
+			`
             visited:
 `
-    	}
-	manifestStr = manifestStr + strings.TrimRight(sequenceStr,",")
+	}
+	manifestStr = manifestStr + strings.TrimRight(sequenceStr, ",")
 	return
 }
 
 func _createTmpfile(data string, filename string) (f *os.File, err error) {
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, filename)
-    if err != nil {
-        return nil, err
-    }
-    _, err = tmpfile.Write([]byte(data))
-    if err != nil {
-        return tmpfile, err
-    }
-    return tmpfile, nil
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, filename)
+	if err != nil {
+		return nil, err
+	}
+	_, err = tmpfile.Write([]byte(data))
+	if err != nil {
+		return tmpfile, err
+	}
+	return tmpfile, nil
 }
 
 func TestValidateSequenceCreation(t *testing.T) {
 	count := 10
 	wskdeploy := common.NewWskdeploy()
 	for i := 1; i < count+1; i++ {
-		maniData,deplyData := composeDeployFiles(i+1)
+		maniData, deplyData := composeDeployFiles(i + 1)
 		tmpManifile, err := _createTmpfile(maniData, "sequence_test_mani_")
 		tmpDeplyfile, err := _createTmpfile(deplyData, "sequence_test_deply_")
 		if err != nil {
 			assert.Fail(t, "Failed to create temp file")
 		}
 
-		fmt.Printf("Deploying sequence %d\n:",i)
+		fmt.Printf("Deploying sequence %d\n:", i)
 		_, err = wskdeploy.Deploy(tmpManifile.Name(), tmpDeplyfile.Name())
 		assert.Equal(t, nil, err, "Failed to deploy sequence.")
 		_, err = wskdeploy.Undeploy(tmpManifile.Name(), tmpDeplyfile.Name())
@@ -107,4 +107,3 @@ func TestValidateSequenceCreation(t *testing.T) {
 		os.Remove(tmpDeplyfile.Name())
 	}
 }
-
diff --git a/tests/src/integration/webaction/webaction_test.go b/tests/src/integration/webaction/webaction_test.go
index 5ec81ca..43aba14 100644
--- a/tests/src/integration/webaction/webaction_test.go
+++ b/tests/src/integration/webaction/webaction_test.go
@@ -26,7 +26,6 @@ import (
 	"testing"
 )
 
-
 var wskprops = common.GetWskprops()
 
 // TODO: write the integration against openwhisk
diff --git a/tests/src/integration/zipaction/zipaction_test.go b/tests/src/integration/zipaction/zipaction_test.go
index e39ddd6..bf9243b 100644
--- a/tests/src/integration/zipaction/zipaction_test.go
+++ b/tests/src/integration/zipaction/zipaction_test.go
@@ -20,21 +20,21 @@
 package tests
 
 import (
-    "github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
-    "github.com/stretchr/testify/assert"
-    "os"
-    "testing"
+	"github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/common"
+	"github.com/stretchr/testify/assert"
+	"os"
+	"testing"
 )
 
 func TestZipAction(t *testing.T) {
-    wskdeploy := common.NewWskdeploy()
-    _, err := wskdeploy.Deploy(manifestPath, deploymentPath)
-    assert.Equal(t, nil, err, "Failed to deploy based on the manifest and deployment files.")
-    _, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
-    assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files.")
+	wskdeploy := common.NewWskdeploy()
+	_, err := wskdeploy.Deploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to deploy based on the manifest and deployment files.")
+	_, err = wskdeploy.Undeploy(manifestPath, deploymentPath)
+	assert.Equal(t, nil, err, "Failed to undeploy based on the manifest and deployment files.")
 }
 
 var (
-    manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/zipaction/manifest.yml"
-    deploymentPath = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/zipaction/deployment.yml"
+	manifestPath   = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/zipaction/manifest.yml"
+	deploymentPath = os.Getenv("GOPATH") + "/src/github.com/apache/incubator-openwhisk-wskdeploy/tests/src/integration/zipaction/deployment.yml"
 )
diff --git a/utils/conversion.go b/utils/conversion.go
index 411cf9c..23dae1c 100644
--- a/utils/conversion.go
+++ b/utils/conversion.go
@@ -48,7 +48,7 @@ func convertMapValue(value interface{}) interface{} {
 	}
 }
 
-func PrintTypeInfo(name string, value interface{})  {
-	info := fmt.Sprintf("Name=[%s], Value=[%v], Type=[%T]\n",name,value,value)
+func PrintTypeInfo(name string, value interface{}) {
+	info := fmt.Sprintf("Name=[%s], Value=[%v], Type=[%T]\n", name, value, value)
 	fmt.Print(info)
 }
diff --git a/utils/dependencies.go b/utils/dependencies.go
index 5ece712..92c19d9 100644
--- a/utils/dependencies.go
+++ b/utils/dependencies.go
@@ -24,10 +24,10 @@ import (
 )
 
 type DependencyRecord struct {
-	ProjectPath string	//root of the source codes of dependent projects, e.g. src_project_path/Packages
-	Packagename string	//name of the package
-	Location    string	//location
-	Version     string	//version
+	ProjectPath string //root of the source codes of dependent projects, e.g. src_project_path/Packages
+	Packagename string //name of the package
+	Location    string //location
+	Version     string //version
 	Parameters  whisk.KeyValueArr
 	Annotations whisk.KeyValueArr
 	IsBinding   bool
@@ -36,12 +36,12 @@ type DependencyRecord struct {
 }
 
 func NewDependencyRecord(projectPath string,
-			packagename string,
-			location string,
-			version string,
-			parameters whisk.KeyValueArr,
-			annotations whisk.KeyValueArr,
-			isBinding bool) DependencyRecord {
+	packagename string,
+	location string,
+	version string,
+	parameters whisk.KeyValueArr,
+	annotations whisk.KeyValueArr,
+	isBinding bool) DependencyRecord {
 	var record DependencyRecord
 	record.ProjectPath = projectPath
 	record.Packagename = packagename
@@ -53,9 +53,9 @@ func NewDependencyRecord(projectPath string,
 	//split url to BaseUrl and SubFolder
 	if !record.IsBinding {
 		paths := strings.Split(location, "/")
-		record.BaseRepo = strings.Join([]string{paths[0],paths[1],paths[2],paths[3],paths[4]},"/")
-		if len(paths)>5 {
-			record.SubFolder = strings.TrimPrefix(record.Location,record.BaseRepo)
+		record.BaseRepo = strings.Join([]string{paths[0], paths[1], paths[2], paths[3], paths[4]}, "/")
+		if len(paths) > 5 {
+			record.SubFolder = strings.TrimPrefix(record.Location, record.BaseRepo)
 		} else {
 			record.SubFolder = ""
 		}
diff --git a/utils/fileoperations.go b/utils/fileoperations.go
index 3d01ee4..7838641 100644
--- a/utils/fileoperations.go
+++ b/utils/fileoperations.go
@@ -44,15 +44,15 @@ func FileExists(file string) bool {
 func IsDirectory(filePath string) bool {
 	f, err := os.Open(filePath)
 	if err != nil {
-        return false
-    } else {
-        defer f.Close()
-    }
+		return false
+	} else {
+		defer f.Close()
+	}
 
 	fi, err := f.Stat()
-    if err != nil {
-        return false
-    }
+	if err != nil {
+		return false
+	}
 
 	switch mode := fi.Mode(); {
 	case mode.IsDir():
@@ -106,24 +106,24 @@ func WriteProps(path string, props map[string]string) error {
 
 	for k, v := range props {
 		_, err := file.WriteString(k)
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		_, err = file.WriteString("=")
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		_, err = file.WriteString(v)
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 
 		_, err = file.WriteString("\n")
-        if err != nil {
-            return err
-        }
+		if err != nil {
+			return err
+		}
 	}
 	return nil
 }
diff --git a/utils/fileoperations_test.go b/utils/fileoperations_test.go
index a816a9c..7bb59b0 100644
--- a/utils/fileoperations_test.go
+++ b/utils/fileoperations_test.go
@@ -20,125 +20,125 @@
 package utils
 
 import (
-    "testing"
-    "github.com/stretchr/testify/assert"
-    "os"
-    "io/ioutil"
-    "bufio"
-    "fmt"
+	"bufio"
+	"fmt"
+	"github.com/stretchr/testify/assert"
+	"io/ioutil"
+	"os"
+	"testing"
 )
 
 func CreateTmpfile(filename string) (f *os.File, err error) {
-    dir, _ := os.Getwd()
-    tmpfile, err := ioutil.TempFile(dir, filename)
-    if err != nil {
-        return nil, err
-    }
-    return tmpfile, nil
+	dir, _ := os.Getwd()
+	tmpfile, err := ioutil.TempFile(dir, filename)
+	if err != nil {
+		return nil, err
+	}
+	return tmpfile, nil
 }
 
 func CreateTmpDir(dir string) error {
-    return os.Mkdir(dir, 0777)
+	return os.Mkdir(dir, 0777)
 }
 
 func CreateFile(lines []string, path string) error {
-    file, err := os.Create(path)
-    if err != nil {
-        return err
-    }
-    defer file.Close()
-
-    w := bufio.NewWriter(file)
-    for _, line := range lines {
-        fmt.Fprintln(w, line)
-    }
-    return w.Flush()
+	file, err := os.Create(path)
+	if err != nil {
+		return err
+	}
+	defer file.Close()
+
+	w := bufio.NewWriter(file)
+	for _, line := range lines {
+		fmt.Fprintln(w, line)
+	}
+	return w.Flush()
 }
 
 func TestFileExists(t *testing.T) {
-    testfile := "testFile"
-    tmpFile, err := CreateTmpfile(testfile)
-    assert.Nil(t, err, "Failed to create the temporary file.")
-
-    // The file exists.
-    fileName := tmpFile.Name()
-    result := FileExists(fileName)
-    assert.True(t, result)
-
-    // After the file is removed, the file does not exist.
-    tmpFile.Close()
-    os.Remove(tmpFile.Name())
-    result = FileExists(fileName)
-    assert.False(t, result)
+	testfile := "testFile"
+	tmpFile, err := CreateTmpfile(testfile)
+	assert.Nil(t, err, "Failed to create the temporary file.")
+
+	// The file exists.
+	fileName := tmpFile.Name()
+	result := FileExists(fileName)
+	assert.True(t, result)
+
+	// After the file is removed, the file does not exist.
+	tmpFile.Close()
+	os.Remove(tmpFile.Name())
+	result = FileExists(fileName)
+	assert.False(t, result)
 }
 
 func TestIsDirectory(t *testing.T) {
-    testDir := "testFile"
-    err := CreateTmpDir(testDir)
-    assert.Nil(t, err, "Failed to create the temporary file.")
-
-    // The directory exists.
-    result := IsDirectory(testDir)
-    assert.True(t, result)
-
-    // After the file is removed, the file does not exist.
-    os.Remove(testDir)
-    result = IsDirectory(testDir)
-    assert.False(t, result)
-
-    // If this function is tested against a valid file, we will get false.
-    testfile := "testFile"
-    tmpFile, err := CreateTmpfile(testfile)
-    assert.Nil(t, err, "Failed to create the temporary file.")
-    fileName := tmpFile.Name()
-    result = IsDirectory(fileName)
-    assert.False(t, result)
-    tmpFile.Close()
-    os.Remove(tmpFile.Name())
-
-    // If this function is tested against an invalid path, we will get false.
-    result = IsDirectory("NonExistent")
-    assert.False(t, result)
+	testDir := "testFile"
+	err := CreateTmpDir(testDir)
+	assert.Nil(t, err, "Failed to create the temporary file.")
+
+	// The directory exists.
+	result := IsDirectory(testDir)
+	assert.True(t, result)
+
+	// After the file is removed, the file does not exist.
+	os.Remove(testDir)
+	result = IsDirectory(testDir)
+	assert.False(t, result)
+
+	// If this function is tested against a valid file, we will get false.
+	testfile := "testFile"
+	tmpFile, err := CreateTmpfile(testfile)
+	assert.Nil(t, err, "Failed to create the temporary file.")
+	fileName := tmpFile.Name()
+	result = IsDirectory(fileName)
+	assert.False(t, result)
+	tmpFile.Close()
+	os.Remove(tmpFile.Name())
+
+	// If this function is tested against an invalid path, we will get false.
+	result = IsDirectory("NonExistent")
+	assert.False(t, result)
 }
 
 func TestReadProps(t *testing.T) {
-    testfile := "testWskPropsRead"
-    testKey := "testKey"
-    testValue := "testValue"
-    testKeySec := "testKeySec"
-    testValueSec := "testValueSec"
-    lines := []string{ testKey + "=" + testValue, testKeySec + "=" + testValueSec }
-    CreateFile(lines, testfile)
-    props, err := ReadProps(testfile)
-    assert.Nil(t, err, "Failed to read the test prop file.")
-    assert.Equal(t, testValue, props[testKey])
-    assert.Equal(t, testValueSec, props[testKeySec])
-    err = os.Remove(testfile)
-    assert.Nil(t, err, "Failed to delete the test prop file.")
-
-    // Failed to read wskprops file if it does not exist.
-    props, err = ReadProps(testfile)
-    assert.NotNil(t, err)
-    assert.Equal(t, 0, len(props))
+	testfile := "testWskPropsRead"
+	testKey := "testKey"
+	testValue := "testValue"
+	testKeySec := "testKeySec"
+	testValueSec := "testValueSec"
+	lines := []string{testKey + "=" + testValue, testKeySec + "=" + testValueSec}
+	CreateFile(lines, testfile)
+	props, err := ReadProps(testfile)
+	assert.Nil(t, err, "Failed to read the test prop file.")
+	assert.Equal(t, testValue, props[testKey])
+	assert.Equal(t, testValueSec, props[testKeySec])
+	err = os.Remove(testfile)
+	assert.Nil(t, err, "Failed to delete the test prop file.")
+
+	// Failed to read wskprops file if it does not exist.
+	props, err = ReadProps(testfile)
+	assert.NotNil(t, err)
+	assert.Equal(t, 0, len(props))
 }
 
 func TestWriteProps(t *testing.T) {
-    testfile := "testWskPropsWrite"
-    testKey := "testKeyWrite"
-    testValue := "testValueWrite"
-    testKeySec := "testKeyWriteSec"
-    testValueSec := "testValueWriteSec"
-    props := map[string]string{
-        testKey: testValue,
-        testKeySec:   testValueSec,
-    }
-    err := WriteProps(testfile, props)
-    assert.Nil(t, err, "Failed to write the test prop file.")
-
-    propsResult, error := ReadProps(testfile)
-    assert.Nil(t, error, "Failed to read the test prop file.")
-    assert.Equal(t, testValue, propsResult[testKey])
-    assert.Equal(t, testValueSec, propsResult[testKeySec])
-    err = os.Remove(testfile)
-    assert.Nil(t, err, "Failed to delete the test prop file.")
+	testfile := "testWskPropsWrite"
+	testKey := "testKeyWrite"
+	testValue := "testValueWrite"
+	testKeySec := "testKeyWriteSec"
+	testValueSec := "testValueWriteSec"
+	props := map[string]string{
+		testKey:    testValue,
+		testKeySec: testValueSec,
+	}
+	err := WriteProps(testfile, props)
+	assert.Nil(t, err, "Failed to write the test prop file.")
+
+	propsResult, error := ReadProps(testfile)
+	assert.Nil(t, error, "Failed to read the test prop file.")
+	assert.Equal(t, testValue, propsResult[testKey])
+	assert.Equal(t, testValueSec, propsResult[testKeySec])
+	err = os.Remove(testfile)
+	assert.Nil(t, err, "Failed to delete the test prop file.")
 }
diff --git a/utils/flags.go b/utils/flags.go
index 6cbc0d9..1f61cbb 100644
--- a/utils/flags.go
+++ b/utils/flags.go
@@ -37,10 +37,10 @@ type WskDeployFlags struct {
 	ManifestPath    string
 	UseDefaults     bool
 	UseInteractive  bool
-	Strict          bool   // strict flag to support user defined runtime version.
-	Key		string
-	Cert		string
-	Managed 	bool   // OpenWhisk Managed Deployments
+	Strict          bool // strict flag to support user defined runtime version.
+	Key             string
+	Cert            string
+	Managed         bool // OpenWhisk Managed Deployments
 }
 
 func (flags *WskDeployFlags) Format() string {
@@ -53,7 +53,7 @@ func (flags *WskDeployFlags) Format() string {
 	//var t interface{}
 	var result string
 
-	for i := 0; i < flagValues.NumField(); i++  {
+	for i := 0; i < flagValues.NumField(); i++ {
 		name = flagNames.Field(i).Name
 		value = flagValues.Field(i)
 		// NOTE: if you need to see the Type, add this line to output
diff --git a/utils/managedannotations.go b/utils/managedannotations.go
index f550193..fa0781e 100644
--- a/utils/managedannotations.go
+++ b/utils/managedannotations.go
@@ -21,8 +21,8 @@ import (
 	"crypto/sha1"
 	"encoding/json"
 	"fmt"
-	"os"
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
+	"os"
 )
 
 /*
@@ -32,15 +32,14 @@ import (
  * 	__OW__PROJECT__NAME: MyProject
  *	__OW__PROJECT_HASH: SHA1("OpenWhisk " + <size_of_manifest_file> + "\0" + <contents_of_manifest_file>)
  *	__OW__FILE: Absolute path of manifest file on file system
-*/
+ */
 
 const (
-	MANAGED   = "managed"
-	OPENWHISK = "OpenWhisk"
-	NULL      = "golang\000"
+	MANAGED         = "managed"
+	OPENWHISK       = "OpenWhisk"
+	NULL            = "golang\000"
 	OW_PROJECT_NAME = "__OW_PROJECT_NAME"
 	OW_PROJECT_HASH = "__OW_PROJECT_HASH"
-
 )
 
 type ManagedAnnotation struct {
@@ -108,6 +107,6 @@ func GenerateManagedAnnotation(projectName string, filePath string) (whisk.KeyVa
 	}
 	var a interface{}
 	err = json.Unmarshal(ma, &a)
-	managedAnnotation = whisk.KeyValue{Key:MANAGED, Value:a.(map[string]interface{})}
+	managedAnnotation = whisk.KeyValue{Key: MANAGED, Value: a.(map[string]interface{})}
 	return managedAnnotation, nil
 }
diff --git a/utils/misc_test.go b/utils/misc_test.go
index 9430823..d4841e2 100644
--- a/utils/misc_test.go
+++ b/utils/misc_test.go
@@ -20,9 +20,9 @@
 package utils
 
 import (
-	"testing"
 	"github.com/stretchr/testify/assert"
 	"os"
+	"testing"
 )
 
 var contentReader = new(ContentReader)
@@ -44,14 +44,14 @@ func TestURLReader_ReadUrl(t *testing.T) {
 }
 
 func TestDependencies(t *testing.T) {
-	var record = NewDependencyRecord("projectPath","packageName","http://github.com/user/repo","master",nil,nil,false)
-	assert.Equal(t, "projectPath", record.ProjectPath,"ProjectPath is wrong")
+	var record = NewDependencyRecord("projectPath", "packageName", "http://github.com/user/repo", "master", nil, nil, false)
+	assert.Equal(t, "projectPath", record.ProjectPath, "ProjectPath is wrong")
 	assert.Equal(t, "http://github.com/user/repo", record.Location, "URL is wrong")
 	assert.Equal(t, "http://github.com/user/repo", record.BaseRepo, "BaseRepo is wrong")
 	assert.Equal(t, "", record.SubFolder, "SubFolder is wrong")
 
-	record = NewDependencyRecord("projectPath","packageName","http://github.com/user/repo/subfolder1/subfolder2","master",nil,nil,false)
-	assert.Equal(t, "projectPath", record.ProjectPath,"ProjectPath is wrong")
+	record = NewDependencyRecord("projectPath", "packageName", "http://github.com/user/repo/subfolder1/subfolder2", "master", nil, nil, false)
+	assert.Equal(t, "projectPath", record.ProjectPath, "ProjectPath is wrong")
 	assert.Equal(t, "http://github.com/user/repo/subfolder1/subfolder2", record.Location, "URL is wrong")
 	assert.Equal(t, "http://github.com/user/repo", record.BaseRepo, "BaseRepo is wrong")
 	assert.Equal(t, "/subfolder1/subfolder2", record.SubFolder, "SubFolder is wrong")
@@ -63,7 +63,7 @@ func TestParseOpenWhisk(t *testing.T) {
 	assert.Equal(t, nil, err, "parse openwhisk info error happened.")
 	converted := ConvertToMap(openwhisk)
 	assert.Equal(t, 2, len(converted["nodejs"]), "not expected length")
-	assert.Equal(t, 1, len(converted["php"]),  "not expected length")
+	assert.Equal(t, 1, len(converted["php"]), "not expected length")
 	assert.Equal(t, 1, len(converted["java"]), "not expected length")
 	assert.Equal(t, 3, len(converted["python"]), "not expected length")
 	assert.Equal(t, 1, len(converted["swift"]), "not expected length")
diff --git a/utils/qualifiedname.go b/utils/qualifiedname.go
index 9a25bd5..e16c122 100644
--- a/utils/qualifiedname.go
+++ b/utils/qualifiedname.go
@@ -72,7 +72,7 @@ func ParseQualifiedName(name string, defaultNamespace string) (QualifiedName, er
 		}
 
 		qualifiedName.EntityName = name
-		if (defaultNamespace == "") {
+		if defaultNamespace == "" {
 			defaultNamespace = "_"
 		}
 		qualifiedName.Namespace = defaultNamespace
diff --git a/utils/runtimes.go b/utils/runtimes.go
index ed22fa0..dc2721c 100644
--- a/utils/runtimes.go
+++ b/utils/runtimes.go
@@ -69,7 +69,6 @@ var FileExtensionRuntimeKindMap map[string]string
 var SupportedRunTimes map[string][]string
 var DefaultRunTimes map[string]string
 
-
 // We could get the openwhisk info from bluemix through running the command
 // `curl -k https://openwhisk.ng.bluemix.net`
 // hard coding it here in case of network unavailable or failure.
@@ -166,10 +165,10 @@ func FileExtensionRuntimes(op OpenWhiskInfo) (ext map[string]string) {
 	return
 }
 
-func CheckRuntimeConsistencyWithFileExtension (ext string, runtime string) bool {
+func CheckRuntimeConsistencyWithFileExtension(ext string, runtime string) bool {
 	rt := FileExtensionRuntimeKindMap[ext]
 	for _, v := range SupportedRunTimes[rt] {
-		if (runtime == v) {
+		if runtime == v {
 			return true
 		}
 	}
diff --git a/utils/validation.go b/utils/validation.go
index 2f926af..b59c5d2 100644
--- a/utils/validation.go
+++ b/utils/validation.go
@@ -19,11 +19,11 @@
 package utils
 
 import (
-	"strings"
 	"encoding/json"
 	"github.com/apache/incubator-openwhisk-client-go/whisk"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wski18n"
 	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"strings"
 )
 
 var LocalLicenseRecords = map[string][]string{
diff --git a/wskderrors/wskdeployerror.go b/wskderrors/wskdeployerror.go
index c7d5e83..fa375f8 100644
--- a/wskderrors/wskdeployerror.go
+++ b/wskderrors/wskdeployerror.go
@@ -19,55 +19,55 @@ package wskderrors
 
 import (
 	"fmt"
+	"io/ioutil"
+	"net/http"
+	"path/filepath"
 	"runtime"
 	"strings"
-	"path/filepath"
-	"net/http"
-	"io/ioutil"
 )
 
 const (
 	// Error message compositional strings
-	STR_UNKNOWN_VALUE = "Unknown value"
-	STR_COMMAND = "Command"
-	STR_ERROR_CODE = "Error code"
-	STR_FILE = "File"
-	STR_PARAMETER = "Parameter"
-	STR_TYPE = "Type"
-	STR_EXPECTED = "Expected"
-	STR_ACTUAL = "Actual"
-	STR_NEWLINE = "\n"
-	STR_ACTION = "Action"
-	STR_RUNTIME = "Runtime"
+	STR_UNKNOWN_VALUE      = "Unknown value"
+	STR_COMMAND            = "Command"
+	STR_ERROR_CODE         = "Error code"
+	STR_FILE               = "File"
+	STR_PARAMETER          = "Parameter"
+	STR_TYPE               = "Type"
+	STR_EXPECTED           = "Expected"
+	STR_ACTUAL             = "Actual"
+	STR_NEWLINE            = "\n"
+	STR_ACTION             = "Action"
+	STR_RUNTIME            = "Runtime"
 	STR_SUPPORTED_RUNTIMES = "Supported Runtimes"
-	STR_HTTP_STATUS = "HTTP Response Status"
-	STR_HTTP_BODY = "HTTP Response Body"
+	STR_HTTP_STATUS        = "HTTP Response Status"
+	STR_HTTP_BODY          = "HTTP Response Body"
 
 	// Formatting
 	STR_INDENT_1 = "==>"
 
 	// Error Types
-	ERROR_COMMAND_FAILED = "ERROR_COMMAND_FAILED"
-	ERROR_WHISK_CLIENT_ERROR = "ERROR_WHISK_CLIENT_ERROR"
-	ERROR_WHISK_CLIENT_INVALID_CONFIG = "ERROR_WHISK_CLIENT_INVALID_CONFIG"
-	ERROR_FILE_READ_ERROR = "ERROR_FILE_READ_ERROR"
-	ERROR_MANIFEST_FILE_NOT_FOUND = "ERROR_MANIFEST_FILE_NOT_FOUND"
-	ERROR_YAML_FILE_FORMAT_ERROR = "ERROR_YAML_FILE_FORMAT_ERROR"
-	ERROR_YAML_PARSER_ERROR = "ERROR_YAML_PARSER_ERROR"
+	ERROR_COMMAND_FAILED               = "ERROR_COMMAND_FAILED"
+	ERROR_WHISK_CLIENT_ERROR           = "ERROR_WHISK_CLIENT_ERROR"
+	ERROR_WHISK_CLIENT_INVALID_CONFIG  = "ERROR_WHISK_CLIENT_INVALID_CONFIG"
+	ERROR_FILE_READ_ERROR              = "ERROR_FILE_READ_ERROR"
+	ERROR_MANIFEST_FILE_NOT_FOUND      = "ERROR_MANIFEST_FILE_NOT_FOUND"
+	ERROR_YAML_FILE_FORMAT_ERROR       = "ERROR_YAML_FILE_FORMAT_ERROR"
+	ERROR_YAML_PARSER_ERROR            = "ERROR_YAML_PARSER_ERROR"
 	ERROR_YAML_PARAMETER_TYPE_MISMATCH = "ERROR_YAML_PARAMETER_TYPE_MISMATCH"
-	ERROR_YAML_INVALID_PARAMETER_TYPE = "ERROR_YAML_INVALID_PARAMETER_TYPE"
-	ERROR_YAML_INVALID_RUNTIME = "ERROR_YAML_INVALID_RUNTIME"
+	ERROR_YAML_INVALID_PARAMETER_TYPE  = "ERROR_YAML_INVALID_PARAMETER_TYPE"
+	ERROR_YAML_INVALID_RUNTIME         = "ERROR_YAML_INVALID_RUNTIME"
 )
 
 /*
  * BaseError
  */
 type WskDeployBaseErr struct {
-	ErrorType 	string
-	FileName  	string
-	LineNum   	int
-	Message   	string
-	MessageFormat	string
+	ErrorType     string
+	FileName      string
+	LineNum       int
+	Message       string
+	MessageFormat string
 }
 
 func NewWskDeployBaseError(typ string, fn string, ln int, msg string) *WskDeployBaseErr {
@@ -100,17 +100,17 @@ func (e *WskDeployBaseErr) SetMessageFormat(fmt string) {
 	e.MessageFormat = fmt
 }
 
-func (e *WskDeployBaseErr) GetMessage()(string) {
+func (e *WskDeployBaseErr) GetMessage() string {
 	return e.Message
 }
 
-func (e *WskDeployBaseErr) GetMessageFormat()(string) {
+func (e *WskDeployBaseErr) GetMessageFormat() string {
 	return e.MessageFormat
 }
 
 func (e *WskDeployBaseErr) SetMessage(message interface{}) {
 
-	if message != nil{
+	if message != nil {
 		switch message.(type) {
 		case string:
 			e.Message = message.(string)
@@ -121,16 +121,16 @@ func (e *WskDeployBaseErr) SetMessage(message interface{}) {
 	}
 }
 
-func (e *WskDeployBaseErr) AppendDetail(detail string){
+func (e *WskDeployBaseErr) AppendDetail(detail string) {
 	e.appendDetail(detail)
 }
 
-func (e *WskDeployBaseErr) appendDetail(detail string){
+func (e *WskDeployBaseErr) appendDetail(detail string) {
 	fmt := fmt.Sprintf("\n%s %s", STR_INDENT_1, detail)
 	e.Message = e.Message + fmt
 }
 
-func (e *WskDeployBaseErr) appendErrorDetails(err error){
+func (e *WskDeployBaseErr) appendErrorDetails(err error) {
 	if err != nil {
 		errorMsg := err.Error()
 		var detailMsg string
@@ -202,8 +202,7 @@ type WhiskClientInvalidConfigError struct {
 }
 
 func NewWhiskClientInvalidConfigError(errorMessage string) *WhiskClientInvalidConfigError {
-	var err = &WhiskClientInvalidConfigError{
-	}
+	var err = &WhiskClientInvalidConfigError{}
 	err.SetErrorType(ERROR_WHISK_CLIENT_INVALID_CONFIG)
 	err.SetCallerByStackFrameSkip(2)
 	err.SetMessage(errorMessage)
@@ -229,7 +228,7 @@ func (e *FileError) SetErrorFileName(fname string) {
 }
 
 func (e *FileError) Error() string {
-	return fmt.Sprintf("%s [%d]: [%s]: " + STR_FILE + ": [%s]: %s\n",
+	return fmt.Sprintf("%s [%d]: [%s]: "+STR_FILE+": [%s]: %s\n",
 		e.FileName,
 		e.LineNum,
 		e.ErrorType,
@@ -246,8 +245,7 @@ type FileReadError struct {
 }
 
 func NewFileReadError(fpath string, errMessage interface{}) *FileReadError {
-	var err = &FileReadError{
-	}
+	var err = &FileReadError{}
 	err.SetErrorType(ERROR_FILE_READ_ERROR)
 	err.SetCallerByStackFrameSkip(2)
 	err.SetErrorFilePath(fpath)
@@ -255,7 +253,6 @@ func NewFileReadError(fpath string, errMessage interface{}) *FileReadError {
 	return err
 }
 
-
 /*
  * ManifestFileNotFoundError
  */
@@ -264,8 +261,7 @@ type ErrorManifestFileNotFound struct {
 }
 
 func NewErrorManifestFileNotFound(fpath string, errMessage interface{}) *ErrorManifestFileNotFound {
-	var err = &ErrorManifestFileNotFound{
-	}
+	var err = &ErrorManifestFileNotFound{}
 	err.SetErrorType(ERROR_MANIFEST_FILE_NOT_FOUND)
 	err.SetCallerByStackFrameSkip(2)
 	err.SetErrorFilePath(fpath)
@@ -281,8 +277,7 @@ type YAMLFileFormatError struct {
 }
 
 func NewYAMLFileFormatError(fpath string, errorMessage interface{}) *YAMLFileFormatError {
-	var err = &YAMLFileFormatError{
-	}
+	var err = &YAMLFileFormatError{}
 	err.SetErrorType(ERROR_YAML_FILE_FORMAT_ERROR)
 	err.SetCallerByStackFrameSkip(2)
 	err.SetErrorFilePath(fpath)
@@ -303,7 +298,7 @@ type ParameterTypeMismatchError struct {
 func NewParameterTypeMismatchError(fpath string, param string, expectedType string, actualType string) *ParameterTypeMismatchError {
 	var err = &ParameterTypeMismatchError{
 		ExpectedType: expectedType,
-		ActualType: actualType,
+		ActualType:   actualType,
 	}
 
 	err.SetErrorType(ERROR_YAML_PARAMETER_TYPE_MISMATCH)
@@ -324,8 +319,8 @@ func NewParameterTypeMismatchError(fpath string, param string, expectedType stri
  */
 type InvalidParameterTypeError struct {
 	FileError
-	Parameter    string
-	ActualType   string
+	Parameter  string
+	ActualType string
 }
 
 func NewInvalidParameterTypeError(fpath string, param string, actualType string) *ParameterTypeMismatchError {
@@ -348,29 +343,26 @@ func NewInvalidParameterTypeError(fpath string, param string, actualType string)
  */
 type YAMLParserError struct {
 	FileError
-	lines    []string
-	msgs     []string
+	lines []string
+	msgs  []string
 }
 
 func NewYAMLParserErr(fpath string, msg interface{}) *YAMLParserError {
-	var err = &YAMLParserError{
-
-	}
+	var err = &YAMLParserError{}
 	err.SetErrorType(ERROR_YAML_PARSER_ERROR)
 	err.SetErrorFilePath(fpath)
 	err.SetCallerByStackFrameSkip(2)
-        err.SetMessage(msg)
+	err.SetMessage(msg)
 	return err
 }
 
-
 /*
  * InvalidRuntime
  */
 type InvalidRuntimeError struct {
 	FileError
-	Runtime    		string
-	SupportedRuntimes	[]string
+	Runtime           string
+	SupportedRuntimes []string
 }
 
 func NewInvalidRuntimeError(errMessage string, fpath string, action string, runtime string, supportedRuntimes []string) *InvalidRuntimeError {
@@ -389,7 +381,7 @@ func NewInvalidRuntimeError(errMessage string, fpath string, action string, runt
 	return err
 }
 
-func IsCustomError( err error ) bool {
+func IsCustomError(err error) bool {
 
 	switch err.(type) {
 
diff --git a/wskderrors/wskdeployerror_test.go b/wskderrors/wskdeployerror_test.go
index c4ba837..57b8d74 100644
--- a/wskderrors/wskdeployerror_test.go
+++ b/wskderrors/wskdeployerror_test.go
@@ -21,12 +21,12 @@ package wskderrors
 
 import (
 	"errors"
-	"testing"
-	"github.com/stretchr/testify/assert"
-	"strings"
 	"fmt"
-	"runtime"
+	"github.com/stretchr/testify/assert"
 	"path/filepath"
+	"runtime"
+	"strings"
+	"testing"
 )
 
 /*
@@ -38,7 +38,7 @@ func TestCustomErrorOutputFormat(t *testing.T) {
 	packageName := filepath.Base(fn)
 	const TEST_DEFAULT_ERROR_MESSAGE = "Some bad error"
 	const TEST_COMMAND string = "test"
-	const TEST_ERROR_CODE = 400  // Bad request
+	const TEST_ERROR_CODE = 400 // Bad request
 	const TEST_EXISTANT_MANIFEST_FILE = "tests/dat/manifest_validate_multiline_params.yaml"
 	const TEST_NONEXISTANT_MANIFEST_FILE = "tests/dat/missing_manifest.yaml"
 	const TEST_INVALID_YAML_MANIFEST_FILE = "tests/dat/manifest_bad_yaml_invalid_comment.yaml"
@@ -88,11 +88,11 @@ func TestCustomErrorOutputFormat(t *testing.T) {
 	assert.Equal(t, expectedResult, actualResult)
 
 	/*
- 	 * FileReadError
- 	 */
+	 * FileReadError
+	 */
 	err4 := NewFileReadError(TEST_NONEXISTANT_MANIFEST_FILE, TEST_DEFAULT_ERROR_MESSAGE)
 	actualResult = strings.TrimSpace(err4.Error())
-	expectedResult = fmt.Sprintf("%s [%d]: [%s]: " + STR_FILE + ": [%s]: %s",
+	expectedResult = fmt.Sprintf("%s [%d]: [%s]: "+STR_FILE+": [%s]: %s",
 		packageName,
 		err4.LineNum,
 		ERROR_FILE_READ_ERROR,
@@ -101,8 +101,8 @@ func TestCustomErrorOutputFormat(t *testing.T) {
 	assert.Equal(t, expectedResult, actualResult)
 
 	/*
- 	 * ManifestFileNotFoundError
- 	 */
+	 * ManifestFileNotFoundError
+	 */
 	err5 := NewErrorManifestFileNotFound(TEST_NONEXISTANT_MANIFEST_FILE, TEST_DEFAULT_ERROR_MESSAGE)
 	actualResult = strings.TrimSpace(err5.Error())
 	expectedResult = fmt.Sprintf("%s [%d]: [%s]: %s: [%s]: %s",
@@ -115,8 +115,8 @@ func TestCustomErrorOutputFormat(t *testing.T) {
 	assert.Equal(t, expectedResult, actualResult)
 
 	/*
-         * YAMLFileFormatError
-         */
+	 * YAMLFileFormatError
+	 */
 	err6 := NewYAMLFileFormatError(TEST_INVALID_YAML_MANIFEST_FILE, TEST_DEFAULT_ERROR_MESSAGE)
 	actualResult = strings.TrimSpace(err6.Error())
 	expectedResult = fmt.Sprintf("%s [%d]: [%s]: %s: [%s]: %s",
@@ -159,7 +159,7 @@ func TestCustomErrorOutputFormat(t *testing.T) {
 	msg9 := fmt.Sprintf("%s [%s]: %s [%s]",
 		STR_PARAMETER, TEST_PARAM_NAME,
 		STR_TYPE, TEST_PARAM_TYPE_FOO)
-	expectedResult = fmt.Sprintf("%s [%d]: [%s]: " + STR_FILE + ": [%s]: %s",
+	expectedResult = fmt.Sprintf("%s [%d]: [%s]: "+STR_FILE+": [%s]: %s",
 		packageName,
 		err9.LineNum,
 		ERROR_YAML_INVALID_PARAMETER_TYPE,
diff --git a/wskenv/environment.go b/wskenv/environment.go
index 50d935b..3a6cfec 100644
--- a/wskenv/environment.go
+++ b/wskenv/environment.go
@@ -18,10 +18,10 @@
 package wskenv
 
 import (
-	"strings"
+	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
 	"os"
 	"reflect"
-	"github.com/apache/incubator-openwhisk-wskdeploy/wskprint"
+	"strings"
 )
 
 // Test if a string
diff --git a/wskenv/environment_test.go b/wskenv/environment_test.go
index 80dda7f..7961a3a 100644
--- a/wskenv/environment_test.go
+++ b/wskenv/environment_test.go
@@ -18,29 +18,29 @@
 package wskenv
 
 import (
-	"testing"
-	"os"
 	"fmt"
 	"github.com/stretchr/testify/assert"
+	"os"
+	"testing"
 )
 
 // The dollar sign test cases.
 func TestGetEnvVar(t *testing.T) {
-os.Setenv("NoDollar", "NO dollar")
-os.Setenv("WithDollar", "oh, dollars!")
-os.Setenv("5000", "5000")
-fmt.Println(GetEnvVar("NoDollar"))
-fmt.Println(GetEnvVar("$WithDollar"))
-fmt.Println(GetEnvVar("$5000"))
-assert.Equal(t, "NoDollar", GetEnvVar("NoDollar"), "NoDollar should be no change.")
-assert.Equal(t, "oh, dollars!", GetEnvVar("$WithDollar"), "dollar sign should be handled.")
-assert.Equal(t, "5000", GetEnvVar("5000"), "Should be no difference between integer and string.")
-assert.Equal(t, "", GetEnvVar("$WithDollarAgain"), "if not found in environemnt, return empty string.")
-assert.Equal(t, "oh, dollars!.ccc.aaa", GetEnvVar("${WithDollar}.ccc.aaa"), "String concatenation fail")
-assert.Equal(t, "ddd.NO dollar.aaa", GetEnvVar("ddd.${NoDollar}.aaa"), "String concatenation fail")
-assert.Equal(t, "oh, dollars!.NO dollar.aaa", GetEnvVar("${WithDollar}.${NoDollar}.aaa"), "String concatenation fail")
-assert.Equal(t, "ddd.ccc.oh, dollars!", GetEnvVar("ddd.ccc.${WithDollar}"), "String concatenation fail")
-assert.Equal(t, "", GetEnvVar("$WithDollarAgain.ccc.aaa"), "String concatenation fail")
-assert.Equal(t, "ddd..aaa", GetEnvVar("ddd.${WithDollarAgain}.aaa"), "String concatenation fail")
-assert.Equal(t, "oh, dollars!NO dollar.NO dollar", GetEnvVar("${WithDollar}${NoDollar}.${NoDollar}"), "String concatenation fail")
+	os.Setenv("NoDollar", "NO dollar")
+	os.Setenv("WithDollar", "oh, dollars!")
+	os.Setenv("5000", "5000")
+	fmt.Println(GetEnvVar("NoDollar"))
+	fmt.Println(GetEnvVar("$WithDollar"))
+	fmt.Println(GetEnvVar("$5000"))
+	assert.Equal(t, "NoDollar", GetEnvVar("NoDollar"), "NoDollar should be no change.")
+	assert.Equal(t, "oh, dollars!", GetEnvVar("$WithDollar"), "dollar sign should be handled.")
+	assert.Equal(t, "5000", GetEnvVar("5000"), "Should be no difference between integer and string.")
+	assert.Equal(t, "", GetEnvVar("$WithDollarAgain"), "if not found in environemnt, return empty string.")
+	assert.Equal(t, "oh, dollars!.ccc.aaa", GetEnvVar("${WithDollar}.ccc.aaa"), "String concatenation fail")
+	assert.Equal(t, "ddd.NO dollar.aaa", GetEnvVar("ddd.${NoDollar}.aaa"), "String concatenation fail")
+	assert.Equal(t, "oh, dollars!.NO dollar.aaa", GetEnvVar("${WithDollar}.${NoDollar}.aaa"), "String concatenation fail")
+	assert.Equal(t, "ddd.ccc.oh, dollars!", GetEnvVar("ddd.ccc.${WithDollar}"), "String concatenation fail")
+	assert.Equal(t, "", GetEnvVar("$WithDollarAgain.ccc.aaa"), "String concatenation fail")
+	assert.Equal(t, "ddd..aaa", GetEnvVar("ddd.${WithDollarAgain}.aaa"), "String concatenation fail")
+	assert.Equal(t, "oh, dollars!NO dollar.NO dollar", GetEnvVar("${WithDollar}${NoDollar}.${NoDollar}"), "String concatenation fail")
 }
diff --git a/wski18n/detection.go b/wski18n/detection.go
index b442cc4..c3866dd 100644
--- a/wski18n/detection.go
+++ b/wski18n/detection.go
@@ -20,24 +20,24 @@ package wski18n
 import "github.com/cloudfoundry/jibber_jabber"
 
 type Detector interface {
-    DetectLocale() string
-    DetectLanguage() string
+	DetectLocale() string
+	DetectLanguage() string
 }
 
 type JibberJabberDetector struct{}
 
 func (d *JibberJabberDetector) DetectLocale() string {
-    userLocale, err := jibber_jabber.DetectIETF()
-    if err != nil {
-        userLocale = ""
-    }
-    return userLocale
+	userLocale, err := jibber_jabber.DetectIETF()
+	if err != nil {
+		userLocale = ""
+	}
+	return userLocale
 }
 
 func (d *JibberJabberDetector) DetectLanguage() string {
-    lang, err := jibber_jabber.DetectLanguage()
-    if err != nil {
-        lang = ""
-    }
-    return lang
+	lang, err := jibber_jabber.DetectLanguage()
+	if err != nil {
+		lang = ""
+	}
+	return lang
 }
diff --git a/wski18n/i18n.go b/wski18n/i18n.go
index 38c4172..e851d23 100644
--- a/wski18n/i18n.go
+++ b/wski18n/i18n.go
@@ -18,138 +18,138 @@
 package wski18n
 
 import (
-    "path/filepath"
-    "strings"
+	"path/filepath"
+	"strings"
 
-    goi18n "github.com/nicksnyder/go-i18n/i18n"
+	goi18n "github.com/nicksnyder/go-i18n/i18n"
 )
 
 const (
-    DEFAULT_LOCALE = "en_US"
+	DEFAULT_LOCALE = "en_US"
 )
 
 var SUPPORTED_LOCALES = []string{
-    "de_DE",
-    "en_US",
-    "es_ES",
-    "fr_FR",
-    "it_IT",
-    "ja_JA",
-    "ko_KR",
-    "pt_BR",
-    "zh_Hans",
-    "zh_Hant",
+	"de_DE",
+	"en_US",
+	"es_ES",
+	"fr_FR",
+	"it_IT",
+	"ja_JA",
+	"ko_KR",
+	"pt_BR",
+	"zh_Hans",
+	"zh_Hant",
 }
 
 var resourcePath = filepath.Join("wski18n", "resources")
 
 // TODO() when are these used?
 func GetResourcePath() string {
-    return resourcePath
+	return resourcePath
 }
 
 // TODO() when are these used?
 func SetResourcePath(path string) {
-    resourcePath = path
+	resourcePath = path
 }
 
 var T goi18n.TranslateFunc
 var curLocale string
 
 func init() {
-    curLocale = Init(new(JibberJabberDetector))
+	curLocale = Init(new(JibberJabberDetector))
 }
 
 // TODO() when are these used?
 func CurLocale() string {
-    return curLocale
+	return curLocale
 }
 
 // TODO() when are these used?
 func Locale(detector Detector) string {
 
-    // Use default locale until strings are translated
-    /*sysLocale := normalize(detector.DetectLocale())
-      if isSupported(sysLocale) {
-          return sysLocale
-      }
+	// Use default locale until strings are translated
+	/*sysLocale := normalize(detector.DetectLocale())
+	  if isSupported(sysLocale) {
+	      return sysLocale
+	  }
 
-      locale := defaultLocaleForLang(detector.DetectLanguage())
-      if locale != "" {
-          return locale
-      }*/
+	  locale := defaultLocaleForLang(detector.DetectLanguage())
+	  if locale != "" {
+	      return locale
+	  }*/
 
-    return DEFAULT_LOCALE
+	return DEFAULT_LOCALE
 }
 
 func Init(detector Detector) string {
-    l := Locale(detector)
-    InitWithLocale(l)
-    return l
+	l := Locale(detector)
+	InitWithLocale(l)
+	return l
 }
 
 func InitWithLocale(locale string) {
-    err := loadFromAsset(locale)
-    if err != nil {
-        panic(err)
-    }
-    T = goi18n.MustTfunc(locale)
+	err := loadFromAsset(locale)
+	if err != nil {
+		panic(err)
+	}
+	T = goi18n.MustTfunc(locale)
 }
 
 func loadFromAsset(locale string) (err error) {
-    assetName := locale + ".all.json"
-    assetKey := filepath.Join(resourcePath, assetName)
-    bytes, err := Asset(assetKey)
-    if err != nil {
-        return
-    }
-    err = goi18n.ParseTranslationFileBytes(assetName, bytes)
-    return
+	assetName := locale + ".all.json"
+	assetKey := filepath.Join(resourcePath, assetName)
+	bytes, err := Asset(assetKey)
+	if err != nil {
+		return
+	}
+	err = goi18n.ParseTranslationFileBytes(assetName, bytes)
+	return
 }
 
 // TODO() when are these used?
 func normalize(locale string) string {
-    locale = strings.ToLower(strings.Replace(locale, "-", "_", 1))
-    for _, l := range SUPPORTED_LOCALES {
-        if strings.EqualFold(locale, l) {
-            return l
-        }
-    }
-    switch locale {
-    case "zh_cn", "zh_sg":
-        return "zh_Hans"
-    case "zh_hk", "zh_tw":
-        return "zh_Hant"
-    }
-    return locale
+	locale = strings.ToLower(strings.Replace(locale, "-", "_", 1))
+	for _, l := range SUPPORTED_LOCALES {
+		if strings.EqualFold(locale, l) {
+			return l
+		}
+	}
+	switch locale {
+	case "zh_cn", "zh_sg":
+		return "zh_Hans"
+	case "zh_hk", "zh_tw":
+		return "zh_Hant"
+	}
+	return locale
 }
 
 // TODO() when are these used?
 func isSupported(locale string) bool {
-    for _, l := range SUPPORTED_LOCALES {
-        if strings.EqualFold(locale, l) {
-            return true
-        }
-    }
-    return false
+	for _, l := range SUPPORTED_LOCALES {
+		if strings.EqualFold(locale, l) {
+			return true
+		}
+	}
+	return false
 }
 
 // TODO() when are these used?
 func defaultLocaleForLang(lang string) string {
-    if lang != "" {
-        lang = strings.ToLower(lang)
-        for _, l := range SUPPORTED_LOCALES {
-            if lang == LangOfLocale(l) {
-                return l
-            }
-        }
-    }
-    return ""
+	if lang != "" {
+		lang = strings.ToLower(lang)
+		for _, l := range SUPPORTED_LOCALES {
+			if lang == LangOfLocale(l) {
+				return l
+			}
+		}
+	}
+	return ""
 }
 
 func LangOfLocale(locale string) string {
-    if len(locale) < 2 {
-        return ""
-    }
-    return locale[0:2]
+	if len(locale) < 2 {
+		return ""
+	}
+	return locale[0:2]
 }
diff --git a/wski18n/i18n_ids.go b/wski18n/i18n_ids.go
index 8f8b544..d2f4be3 100644
--- a/wski18n/i18n_ids.go
+++ b/wski18n/i18n_ids.go
@@ -20,192 +20,192 @@ package wski18n
 // descriptive key names
 // DO NOT TRANSLATE
 const (
-	ACTION_CODE		= "Action source"
-	ACTIONS			= "Actions"
-	ACTIVATIONS		= "Activations"
-	API_HOST		= "API host"
-	AUTH_KEY		= "authentication key"
-	COMMAND_LINE 		= "wskdeploy command line"
-	DEPLOYMENT		= "deployment"
-	CONFIGURATION		= "Configuration"
-	MANIFEST		= "manifest"
-	NAME_ACTION		= "Action Name"
-	NAME_FEED		= "Feed Name"
-	NAME_RULE		= "Rule Name"
-	NAME_RUNTIME		= "Runtime Name"
-	NAME_TRIGGER		= "Trigger Name"
-	NAMESPACES		= "Namespaces"
-	PACKAGE_BINDING 	= "package binding"
-	PACKAGE_LICENSE 	= "package license"
-	PACKAGE_NAME	 	= "package name"
-	PACKAGE_VERSION 	= "package version"
-	PACKAGES		= "Packages"
-	PROJECT_NAME		= "project name"
-	REGISTRY		= "registry"
-	REGISTRY_URL		= "registry URL"
-	REPOSITORY		= "repository"
-	RULES			= "Rules"
-	TRIGGER_FEED		= "trigger feed"
-	TRIGGERS		= "Triggers"
-	WHISK_PROPS		= "wskprops"
+	ACTION_CODE     = "Action source"
+	ACTIONS         = "Actions"
+	ACTIVATIONS     = "Activations"
+	API_HOST        = "API host"
+	AUTH_KEY        = "authentication key"
+	COMMAND_LINE    = "wskdeploy command line"
+	DEPLOYMENT      = "deployment"
+	CONFIGURATION   = "Configuration"
+	MANIFEST        = "manifest"
+	NAME_ACTION     = "Action Name"
+	NAME_FEED       = "Feed Name"
+	NAME_RULE       = "Rule Name"
+	NAME_RUNTIME    = "Runtime Name"
+	NAME_TRIGGER    = "Trigger Name"
+	NAMESPACES      = "Namespaces"
+	PACKAGE_BINDING = "package binding"
+	PACKAGE_LICENSE = "package license"
+	PACKAGE_NAME    = "package name"
+	PACKAGE_VERSION = "package version"
+	PACKAGES        = "Packages"
+	PROJECT_NAME    = "project name"
+	REGISTRY        = "registry"
+	REGISTRY_URL    = "registry URL"
+	REPOSITORY      = "repository"
+	RULES           = "Rules"
+	TRIGGER_FEED    = "trigger feed"
+	TRIGGERS        = "Triggers"
+	WHISK_PROPS     = "wskprops"
 )
 
 // i18n Identifiers
 // DO NOT TRANSLATE
-const(
+const (
 	// Debug / trace message prefixes
-	ID_MSG_PREFIX_ERROR	= "msg_prefix_error"	// "Error"
-	ID_MSG_PREFIX_INFO	= "msg_prefix_info"	// "Info"
-	ID_MSG_PREFIX_SUCCESS	= "msg_prefix_success"	// "Success"
-	ID_MSG_PREFIX_WARNING	= "msg_prefix_warning"	// "Warning"
+	ID_MSG_PREFIX_ERROR   = "msg_prefix_error"   // "Error"
+	ID_MSG_PREFIX_INFO    = "msg_prefix_info"    // "Info"
+	ID_MSG_PREFIX_SUCCESS = "msg_prefix_success" // "Success"
+	ID_MSG_PREFIX_WARNING = "msg_prefix_warning" // "Warning"
 
 	// Cobra command descriptions
-	ID_CMD_DESC_LONG_PUBLISH	= "msg_cmd_desc_long_publish"
-	ID_CMD_DESC_LONG_REPORT		= "msg_cmd_desc_long_report"
-	ID_CMD_DESC_LONG_ROOT		= "msg_cmd_desc_long_root"
-	ID_CMD_DESC_SHORT_ADD		= "msg_cmd_desc_short_add"
-	ID_CMD_DESC_SHORT_ADD_X_key_X	= "msg_cmd_desc_short_add_entity"
-	ID_CMD_DESC_SHORT_PUBLISH	= "msg_cmd_desc_short_publish"
-	ID_CMD_DESC_SHORT_REPORT	= "msg_cmd_desc_short_report"
-	ID_CMD_DESC_SHORT_ROOT		= "msg_cmd_desc_short_root"
-	ID_CMD_DESC_SHORT_VERSION	= "msg_cmd_desc_short_version"
+	ID_CMD_DESC_LONG_PUBLISH      = "msg_cmd_desc_long_publish"
+	ID_CMD_DESC_LONG_REPORT       = "msg_cmd_desc_long_report"
+	ID_CMD_DESC_LONG_ROOT         = "msg_cmd_desc_long_root"
+	ID_CMD_DESC_SHORT_ADD         = "msg_cmd_desc_short_add"
+	ID_CMD_DESC_SHORT_ADD_X_key_X = "msg_cmd_desc_short_add_entity"
+	ID_CMD_DESC_SHORT_PUBLISH     = "msg_cmd_desc_short_publish"
+	ID_CMD_DESC_SHORT_REPORT      = "msg_cmd_desc_short_report"
+	ID_CMD_DESC_SHORT_ROOT        = "msg_cmd_desc_short_root"
+	ID_CMD_DESC_SHORT_VERSION     = "msg_cmd_desc_short_version"
 
 	// Cobra Flag messages
-	ID_CMD_FLAG_API_HOST	= "msg_cmd_flag_api_host"
-	ID_CMD_FLAG_API_VERSION	= "msg_cmd_flag_api_version"
-	ID_CMD_FLAG_AUTH_KEY	= "msg_cmd_flag_auth_key"
-	ID_CMD_FLAG_CERT_FILE	= "msg_cmd_flag_cert_file"
-	ID_CMD_FLAG_CONFIG	= "msg_cmd_flag_config"
-	ID_CMD_FLAG_DEFAULTS	= "msg_cmd_flag_allow_defaults"
-	ID_CMD_FLAG_DEPLOYMENT	= "msg_cmd_flag_deployment"
-	ID_CMD_FLAG_INTERACTIVE	= "msg_cmd_flag_interactive"
-	ID_CMD_FLAG_KEY_FILE	= "msg_cmd_flag_key_file"
-	ID_CMD_FLAG_MANAGED	= "msg_cmd_flag_allow_managed"
-	ID_CMD_FLAG_MANIFEST	= "msg_cmd_flag_manifest"
-	ID_CMD_FLAG_NAMESPACE	= "msg_cmd_flag_namespace"
-	ID_CMD_FLAG_PROJECT	= "msg_cmd_flag_project"
-	ID_CMD_FLAG_STRICT	= "msg_cmd_flag_strict"
-	ID_CMD_FLAG_TOGGLE_HELP	= "msg_cmd_flag_toggle_help"
-	ID_CMD_FLAG_VERBOSE	= "msg_cmd_flag_allow_verbose"
+	ID_CMD_FLAG_API_HOST    = "msg_cmd_flag_api_host"
+	ID_CMD_FLAG_API_VERSION = "msg_cmd_flag_api_version"
+	ID_CMD_FLAG_AUTH_KEY    = "msg_cmd_flag_auth_key"
+	ID_CMD_FLAG_CERT_FILE   = "msg_cmd_flag_cert_file"
+	ID_CMD_FLAG_CONFIG      = "msg_cmd_flag_config"
+	ID_CMD_FLAG_DEFAULTS    = "msg_cmd_flag_allow_defaults"
+	ID_CMD_FLAG_DEPLOYMENT  = "msg_cmd_flag_deployment"
+	ID_CMD_FLAG_INTERACTIVE = "msg_cmd_flag_interactive"
+	ID_CMD_FLAG_KEY_FILE    = "msg_cmd_flag_key_file"
+	ID_CMD_FLAG_MANAGED     = "msg_cmd_flag_allow_managed"
+	ID_CMD_FLAG_MANIFEST    = "msg_cmd_flag_manifest"
+	ID_CMD_FLAG_NAMESPACE   = "msg_cmd_flag_namespace"
+	ID_CMD_FLAG_PROJECT     = "msg_cmd_flag_project"
+	ID_CMD_FLAG_STRICT      = "msg_cmd_flag_strict"
+	ID_CMD_FLAG_TOGGLE_HELP = "msg_cmd_flag_toggle_help"
+	ID_CMD_FLAG_VERBOSE     = "msg_cmd_flag_allow_verbose"
 
 	// Configuration messages
-	ID_MSG_CONFIG_MISSING_AUTHKEY				= "msg_config_missing_authkey"
-	ID_MSG_CONFIG_MISSING_APIHOST				= "msg_config_missing_apihost"
-	ID_MSG_CONFIG_MISSING_NAMESPACE				= "msg_config_missing_namespace"
-	ID_MSG_CONFIG_INFO_APIHOST_X_host_X_source_X		= "msg_config_apihost_info"
-	ID_MSG_CONFIG_INFO_AUTHKEY_X_source_X			= "msg_config_authkey_info"
-	ID_MSG_CONFIG_INFO_NAMESPACE_X_namespace_X_source_X	= "msg_config_namespace_info"
+	ID_MSG_CONFIG_MISSING_AUTHKEY                       = "msg_config_missing_authkey"
+	ID_MSG_CONFIG_MISSING_APIHOST                       = "msg_config_missing_apihost"
+	ID_MSG_CONFIG_MISSING_NAMESPACE                     = "msg_config_missing_namespace"
+	ID_MSG_CONFIG_INFO_APIHOST_X_host_X_source_X        = "msg_config_apihost_info"
+	ID_MSG_CONFIG_INFO_AUTHKEY_X_source_X               = "msg_config_authkey_info"
+	ID_MSG_CONFIG_INFO_NAMESPACE_X_namespace_X_source_X = "msg_config_namespace_info"
 
 	// YAML marshall / unmarshall
-	ID_MSG_UNMARSHAL_LOCAL					= "msg_unmarshall_local"
-	ID_MSG_UNMARSHAL_NETWORK				= "msg_unmarshall_network"
+	ID_MSG_UNMARSHAL_LOCAL   = "msg_unmarshall_local"
+	ID_MSG_UNMARSHAL_NETWORK = "msg_unmarshall_network"
 
 	// Informational
-	ID_MSG_DEPLOYMENT_CANCELLED				= "msg_deployment_cancelled"
-	ID_MSG_DEPLOYMENT_FAILED				= "msg_deployment_failed"
-	ID_MSG_DEPLOYMENT_REPORT				= "msg_deployment_report_status"
-	ID_MSG_DEPLOYMENT_SUCCEEDED				= "msg_deployment_succeeded"
+	ID_MSG_DEPLOYMENT_CANCELLED = "msg_deployment_cancelled"
+	ID_MSG_DEPLOYMENT_FAILED    = "msg_deployment_failed"
+	ID_MSG_DEPLOYMENT_REPORT    = "msg_deployment_report_status"
+	ID_MSG_DEPLOYMENT_SUCCEEDED = "msg_deployment_succeeded"
 
-	ID_MSG_UNDEPLOYMENT_CANCELLED				= "msg_undeployment_cancelled"
-	ID_MSG_UNDEPLOYMENT_FAILED				= "msg_undeployment_failed"
-	ID_MSG_UNDEPLOYMENT_SUCCEEDED				= "msg_undeployment_succeeded"
+	ID_MSG_UNDEPLOYMENT_CANCELLED = "msg_undeployment_cancelled"
+	ID_MSG_UNDEPLOYMENT_FAILED    = "msg_undeployment_failed"
+	ID_MSG_UNDEPLOYMENT_SUCCEEDED = "msg_undeployment_succeeded"
 
-	ID_MSG_MANIFEST_DEPLOY_X_path_X				= "msg_manifest_using_deployment"
-	ID_MSG_MANIFEST_UNDEPLOY_X_path_X			= "msg_manifest_using_undeployment"
+	ID_MSG_MANIFEST_DEPLOY_X_path_X   = "msg_manifest_using_deployment"
+	ID_MSG_MANIFEST_UNDEPLOY_X_path_X = "msg_manifest_using_undeployment"
 
-	ID_MSG_ENTITY_DEPLOYED_SUCCESS_X_key_X_name_X		= "msg_entity_deployed_success"
-	ID_MSG_ENTITY_DEPLOYING_X_key_X_name_X 			= "msg_entity_deploying"
-	ID_MSG_ENTITY_UNDEPLOYED_SUCCESS_X_key_X_name_X		= "msg_entity_undeployed_success"
-	ID_MSG_ENTITY_UNDEPLOYING_X_key_X_name_X		= "msg_entity_undeploying"
+	ID_MSG_ENTITY_DEPLOYED_SUCCESS_X_key_X_name_X   = "msg_entity_deployed_success"
+	ID_MSG_ENTITY_DEPLOYING_X_key_X_name_X          = "msg_entity_deploying"
+	ID_MSG_ENTITY_UNDEPLOYED_SUCCESS_X_key_X_name_X = "msg_entity_undeployed_success"
+	ID_MSG_ENTITY_UNDEPLOYING_X_key_X_name_X        = "msg_entity_undeploying"
 
-	ID_MSG_DEPENDENCY_DEPLOYING_X_name_X			= "msg_dependency_deploying"
-	ID_MSG_DEPENDENCY_DEPLOYMENT_FAILURE_X_name_X		= "msg_dependency_deployment_failure"
-	ID_MSG_DEPENDENCY_DEPLOYMENT_SUCCESS_X_name_X		= "msg_dependency_deployment_success"
-	ID_MSG_DEPENDENCY_UNDEPLOYING_X_name_X			= "msg_dependency_undeploying"
-	ID_MSG_DEPENDENCY_UNDEPLOYMENT_FAILURE_X_name_X		= "msg_dependency_undeployment_failure"
-	ID_MSG_DEPENDENCY_UNDEPLOYMENT_SUCCESS_X_name_X		= "msg_dependency_undeployment_success"
+	ID_MSG_DEPENDENCY_DEPLOYING_X_name_X            = "msg_dependency_deploying"
+	ID_MSG_DEPENDENCY_DEPLOYMENT_FAILURE_X_name_X   = "msg_dependency_deployment_failure"
+	ID_MSG_DEPENDENCY_DEPLOYMENT_SUCCESS_X_name_X   = "msg_dependency_deployment_success"
+	ID_MSG_DEPENDENCY_UNDEPLOYING_X_name_X          = "msg_dependency_undeploying"
+	ID_MSG_DEPENDENCY_UNDEPLOYMENT_FAILURE_X_name_X = "msg_dependency_undeployment_failure"
+	ID_MSG_DEPENDENCY_UNDEPLOYMENT_SUCCESS_X_name_X = "msg_dependency_undeployment_success"
 
 	// Managed deployments
-	ID_MSG_MANAGED_UNDEPLOYMENT_FAILED 			= "msg_managed_undeployment_failed"
-	ID_MSG_MANAGED_FOUND_DELETED_X_key_X_name_X_project_X	= "msg_managed_found_deleted_entity"
+	ID_MSG_MANAGED_UNDEPLOYMENT_FAILED                    = "msg_managed_undeployment_failed"
+	ID_MSG_MANAGED_FOUND_DELETED_X_key_X_name_X_project_X = "msg_managed_found_deleted_entity"
 
 	// Interactive (prompts)
-	ID_MSG_PROMPT_APIHOST					= "msg_prompt_apihost"
-	ID_MSG_PROMPT_AUTHKEY					= "msg_prompt_authkey"
-	ID_MSG_PROMPT_DEPLOY					= "msg_prompt_deploy"
-	ID_MSG_PROMPT_NAMESPACE					= "msg_prompt_namespace"
-	ID_MSG_PROMPT_UNDEPLOY					= "msg_prompt_undeploy"
+	ID_MSG_PROMPT_APIHOST   = "msg_prompt_apihost"
+	ID_MSG_PROMPT_AUTHKEY   = "msg_prompt_authkey"
+	ID_MSG_PROMPT_DEPLOY    = "msg_prompt_deploy"
+	ID_MSG_PROMPT_NAMESPACE = "msg_prompt_namespace"
+	ID_MSG_PROMPT_UNDEPLOY  = "msg_prompt_undeploy"
 
 	// Errors
-	ID_ERR_DEPENDENCY_UNKNOWN_TYPE				= "msg_err_dependency_unknown_type"
-	ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X		= "msg_err_deployment_name_not_found"
-	ID_ERR_ENTITY_CREATE_X_key_X_err_X_code_X 		= "msg_err_entity_create"
-	ID_ERR_ENTITY_DELETE_X_key_X_err_X_code_X 		= "msg_err_entity_delete"
-	ID_ERR_FEED_INVOKE_X_err_X_code_X			= "msg_err_feed_invoke"
-	ID_ERR_KEY_MISSING_X_key_X				= "msg_err_key_missing_mandatory"
-	ID_ERR_MANIFEST_FILE_NOT_FOUND_X_path_X			= "msg_err_manifest_not_found"
+	ID_ERR_DEPENDENCY_UNKNOWN_TYPE                               = "msg_err_dependency_unknown_type"
+	ID_ERR_DEPLOYMENT_NAME_NOT_FOUND_X_key_X_name_X              = "msg_err_deployment_name_not_found"
+	ID_ERR_ENTITY_CREATE_X_key_X_err_X_code_X                    = "msg_err_entity_create"
+	ID_ERR_ENTITY_DELETE_X_key_X_err_X_code_X                    = "msg_err_entity_delete"
+	ID_ERR_FEED_INVOKE_X_err_X_code_X                            = "msg_err_feed_invoke"
+	ID_ERR_KEY_MISSING_X_key_X                                   = "msg_err_key_missing_mandatory"
+	ID_ERR_MANIFEST_FILE_NOT_FOUND_X_path_X                      = "msg_err_manifest_not_found"
 	ID_ERR_NAME_MISMATCH_X_key_X_dname_X_dpath_X_mname_X_moath_X = "msg_err_name_mismatch"
-	ID_ERR_RUNTIME_INVALID_X_runtime_X_action_X		= "msg_err_runtime_invalid"
-	ID_ERR_RUNTIME_MISMATCH_X_runtime_X_ext_X_action_X	= "msg_err_runtime_mismatch"
-	ID_ERR_RUNTIMES_GET_X_err_X				= "msg_err_runtimes_get"
-	ID_ERR_URL_INVALID_X_urltype_X_url_X_filetype_X		= "msg_err_url_invalid"
-	ID_ERR_URL_MALFORMED_X_urltype_X_url_X			= "msg_err_url_malformed"
+	ID_ERR_RUNTIME_INVALID_X_runtime_X_action_X                  = "msg_err_runtime_invalid"
+	ID_ERR_RUNTIME_MISMATCH_X_runtime_X_ext_X_action_X           = "msg_err_runtime_mismatch"
+	ID_ERR_RUNTIMES_GET_X_err_X                                  = "msg_err_runtimes_get"
+	ID_ERR_URL_INVALID_X_urltype_X_url_X_filetype_X              = "msg_err_url_invalid"
+	ID_ERR_URL_MALFORMED_X_urltype_X_url_X                       = "msg_err_url_malformed"
 
 	// Server-side Errors (wskdeploy as an Action)
-	ID_ERR_JSON_MISSING_KEY_CMD 				= "msg_err_json_missing_cmd_key"
+	ID_ERR_JSON_MISSING_KEY_CMD = "msg_err_json_missing_cmd_key"
 
 	// warnings
-	ID_WARN_COMMAND_RETRY					= "msg_warn_command_retry"
-	ID_WARN_CONFIG_INVALID_X_path_X				= "msg_warn_config_invalid"
-	ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X	= "msg_warn_key_deprecated_replaced"
-	ID_WARN_KEY_MISSING_X_key_X_value_X			= "msg_warn_key_missing"
-	ID_WARN_KEYVALUE_INVALID				= "msg_warn_key_value_invalid"
-	ID_WARN_KEYVALUE_NOT_SAVED_X_key_X			= "msg_warn_key_value_not_saved"
-	ID_WARN_LIMIT_IGNORED_X_limit_X				= "msg_warn_limit_ignored"
-	ID_WARN_LIMIT_UNCHANGEABLE_X_name_X			= "msg_warn_limit_changeable"
-	ID_WARN_LIMITS_LOG_SIZE					= "msg_warn_limits_log_size" 		// TODO() remove for value range
-	ID_WARN_LIMITS_MEMORY_SIZE				= "msg_warn_limits_memory_size" 	// TODO() remove for value range
-	ID_WARN_LIMITS_TIMEOUT					= "msg_warn_limits_timeout"  		// TODO() remove for value range
-	ID_WARN_RUNTIME_CHANGED_X_runtime_X_action_X		= "msg_warn_runtime_changed"
-	ID_WARN_VALUE_RANGE_X_name_X_key_X_filetype_X_min_X_max_X = "msg_warn_value_range"		// TODO() not used, but should be used for limit ranges
-	ID_WARN_WHISK_PROPS_DEPRECATED				= "msg_warn_whisk_properties"
-	ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X		= "msg_warn_entity_name_exists"
+	ID_WARN_COMMAND_RETRY                                     = "msg_warn_command_retry"
+	ID_WARN_CONFIG_INVALID_X_path_X                           = "msg_warn_config_invalid"
+	ID_WARN_KEY_DEPRECATED_X_oldkey_X_filetype_X_newkey_X     = "msg_warn_key_deprecated_replaced"
+	ID_WARN_KEY_MISSING_X_key_X_value_X                       = "msg_warn_key_missing"
+	ID_WARN_KEYVALUE_INVALID                                  = "msg_warn_key_value_invalid"
+	ID_WARN_KEYVALUE_NOT_SAVED_X_key_X                        = "msg_warn_key_value_not_saved"
+	ID_WARN_LIMIT_IGNORED_X_limit_X                           = "msg_warn_limit_ignored"
+	ID_WARN_LIMIT_UNCHANGEABLE_X_name_X                       = "msg_warn_limit_changeable"
+	ID_WARN_LIMITS_LOG_SIZE                                   = "msg_warn_limits_log_size"    // TODO() remove for value range
+	ID_WARN_LIMITS_MEMORY_SIZE                                = "msg_warn_limits_memory_size" // TODO() remove for value range
+	ID_WARN_LIMITS_TIMEOUT                                    = "msg_warn_limits_timeout"     // TODO() remove for value range
+	ID_WARN_RUNTIME_CHANGED_X_runtime_X_action_X              = "msg_warn_runtime_changed"
+	ID_WARN_VALUE_RANGE_X_name_X_key_X_filetype_X_min_X_max_X = "msg_warn_value_range" // TODO() not used, but should be used for limit ranges
+	ID_WARN_WHISK_PROPS_DEPRECATED                            = "msg_warn_whisk_properties"
+	ID_WARN_ENTITY_NAME_EXISTS_X_key_X_name_X                 = "msg_warn_entity_name_exists"
 
 	// Verbose (Debug/Trace) messages
-	ID_DEBUG_KEY_VERIFY_X_name_X_key_X			= "msg_dbg_key_verify"
-	ID_DEBUG_DEPLOYING_USING				= "msg_dbg_deploying_using"
-	ID_DEBUG_UNDEPLOYING_USING				= "msg_dbg_undeploying_using"
-	ID_DEBUG_PROJECT_SEARCH_X_path_X_key_X			= "msg_dbg_searching_project_directory"
+	ID_DEBUG_KEY_VERIFY_X_name_X_key_X     = "msg_dbg_key_verify"
+	ID_DEBUG_DEPLOYING_USING               = "msg_dbg_deploying_using"
+	ID_DEBUG_UNDEPLOYING_USING             = "msg_dbg_undeploying_using"
+	ID_DEBUG_PROJECT_SEARCH_X_path_X_key_X = "msg_dbg_searching_project_directory"
 )
 
 // Known keys used for text replacement in i18n translated strings
-const(
-	KEY_ACTION		= "action"
-	KEY_CMD			= "cmd"
-	KEY_CODE		= "code"
-	KEY_DEPLOYMENT_NAME	= "dname"
-	KEY_DEPLOYMENT_PATH	= "dpath"
-	KEY_ERR			= "err"
-	KEY_EXTENTION		= "ext"
-	KEY_FILE_TYPE		= "filetype"
-	KEY_HOST		= "host"
-	KEY_KEY			= "key"
-	KEY_LIMIT		= "limit"
-	KEY_MANIFEST_NAME	= "mname"
-	KEY_MANIFEST_PATH	= "mpath"
-	KEY_NAME		= "name"
-	KEY_NAMESPACE		= "namespace"
-	KEY_NEW			= "newkey"
-	KEY_OLD			= "oldkey"
-	KEY_PATH		= "path"
-	KEY_PROJECT		= "project"
-	KEY_RUNTIME		= "runtime"
-	KEY_SOURCE		= "source"
-	KEY_URL			= "url"
-	KEY_URL_TYPE		= "urltype"
-	KEY_VALUE		= "value"
-	KEY_VALUE_MIN		= "min"		// TODO() attempt to use this for Limit value range errors
-	KEY_VALUE_MAX		= "max"		// TODO() attempt to use this for Limit value range errors
+const (
+	KEY_ACTION          = "action"
+	KEY_CMD             = "cmd"
+	KEY_CODE            = "code"
+	KEY_DEPLOYMENT_NAME = "dname"
+	KEY_DEPLOYMENT_PATH = "dpath"
+	KEY_ERR             = "err"
+	KEY_EXTENTION       = "ext"
+	KEY_FILE_TYPE       = "filetype"
+	KEY_HOST            = "host"
+	KEY_KEY             = "key"
+	KEY_LIMIT           = "limit"
+	KEY_MANIFEST_NAME   = "mname"
+	KEY_MANIFEST_PATH   = "mpath"
+	KEY_NAME            = "name"
+	KEY_NAMESPACE       = "namespace"
+	KEY_NEW             = "newkey"
+	KEY_OLD             = "oldkey"
+	KEY_PATH            = "path"
+	KEY_PROJECT         = "project"
+	KEY_RUNTIME         = "runtime"
+	KEY_SOURCE          = "source"
+	KEY_URL             = "url"
+	KEY_URL_TYPE        = "urltype"
+	KEY_VALUE           = "value"
+	KEY_VALUE_MIN       = "min" // TODO() attempt to use this for Limit value range errors
+	KEY_VALUE_MAX       = "max" // TODO() attempt to use this for Limit value range errors
 )
 
 // Used to unit test that translations exist with these IDs
diff --git a/wski18n/i18n_ids_test.go b/wski18n/i18n_ids_test.go
index ac8c828..cfd98b8 100644
--- a/wski18n/i18n_ids_test.go
+++ b/wski18n/i18n_ids_test.go
@@ -20,8 +20,8 @@
 package wski18n
 
 import (
-	"testing"
 	"github.com/stretchr/testify/assert"
+	"testing"
 )
 
 /*
diff --git a/wski18n/i18n_resources.go b/wski18n/i18n_resources.go
index 29d8528..f85928c 100644
--- a/wski18n/i18n_resources.go
+++ b/wski18n/i18n_resources.go
@@ -329,14 +329,14 @@ func AssetNames() []string {
 
 // _bindata is a table, holding each asset generator, mapped to its name.
 var _bindata = map[string]func() (*asset, error){
-	"wski18n/resources/de_DE.all.json": wski18nResourcesDe_deAllJson,
-	"wski18n/resources/en_US.all.json": wski18nResourcesEn_usAllJson,
-	"wski18n/resources/es_ES.all.json": wski18nResourcesEs_esAllJson,
-	"wski18n/resources/fr_FR.all.json": wski18nResourcesFr_frAllJson,
-	"wski18n/resources/it_IT.all.json": wski18nResourcesIt_itAllJson,
-	"wski18n/resources/ja_JA.all.json": wski18nResourcesJa_jaAllJson,
-	"wski18n/resources/ko_KR.all.json": wski18nResourcesKo_krAllJson,
-	"wski18n/resources/pt_BR.all.json": wski18nResourcesPt_brAllJson,
+	"wski18n/resources/de_DE.all.json":   wski18nResourcesDe_deAllJson,
+	"wski18n/resources/en_US.all.json":   wski18nResourcesEn_usAllJson,
+	"wski18n/resources/es_ES.all.json":   wski18nResourcesEs_esAllJson,
+	"wski18n/resources/fr_FR.all.json":   wski18nResourcesFr_frAllJson,
+	"wski18n/resources/it_IT.all.json":   wski18nResourcesIt_itAllJson,
+	"wski18n/resources/ja_JA.all.json":   wski18nResourcesJa_jaAllJson,
+	"wski18n/resources/ko_KR.all.json":   wski18nResourcesKo_krAllJson,
+	"wski18n/resources/pt_BR.all.json":   wski18nResourcesPt_brAllJson,
 	"wski18n/resources/zh_Hans.all.json": wski18nResourcesZh_hansAllJson,
 	"wski18n/resources/zh_Hant.all.json": wski18nResourcesZh_hantAllJson,
 }
@@ -380,19 +380,20 @@ type bintree struct {
 	Func     func() (*asset, error)
 	Children map[string]*bintree
 }
+
 var _bintree = &bintree{nil, map[string]*bintree{
-	"wski18n": &bintree{nil, map[string]*bintree{
-		"resources": &bintree{nil, map[string]*bintree{
-			"de_DE.all.json": &bintree{wski18nResourcesDe_deAllJson, map[string]*bintree{}},
-			"en_US.all.json": &bintree{wski18nResourcesEn_usAllJson, map[string]*bintree{}},
-			"es_ES.all.json": &bintree{wski18nResourcesEs_esAllJson, map[string]*bintree{}},
-			"fr_FR.all.json": &bintree{wski18nResourcesFr_frAllJson, map[string]*bintree{}},
-			"it_IT.all.json": &bintree{wski18nResourcesIt_itAllJson, map[string]*bintree{}},
-			"ja_JA.all.json": &bintree{wski18nResourcesJa_jaAllJson, map[string]*bintree{}},
-			"ko_KR.all.json": &bintree{wski18nResourcesKo_krAllJson, map[string]*bintree{}},
-			"pt_BR.all.json": &bintree{wski18nResourcesPt_brAllJson, map[string]*bintree{}},
-			"zh_Hans.all.json": &bintree{wski18nResourcesZh_hansAllJson, map[string]*bintree{}},
-			"zh_Hant.all.json": &bintree{wski18nResourcesZh_hantAllJson, map[string]*bintree{}},
+	"wski18n": {nil, map[string]*bintree{
+		"resources": {nil, map[string]*bintree{
+			"de_DE.all.json":   {wski18nResourcesDe_deAllJson, map[string]*bintree{}},
+			"en_US.all.json":   {wski18nResourcesEn_usAllJson, map[string]*bintree{}},
+			"es_ES.all.json":   {wski18nResourcesEs_esAllJson, map[string]*bintree{}},
+			"fr_FR.all.json":   {wski18nResourcesFr_frAllJson, map[string]*bintree{}},
+			"it_IT.all.json":   {wski18nResourcesIt_itAllJson, map[string]*bintree{}},
+			"ja_JA.all.json":   {wski18nResourcesJa_jaAllJson, map[string]*bintree{}},
+			"ko_KR.all.json":   {wski18nResourcesKo_krAllJson, map[string]*bintree{}},
+			"pt_BR.all.json":   {wski18nResourcesPt_brAllJson, map[string]*bintree{}},
+			"zh_Hans.all.json": {wski18nResourcesZh_hansAllJson, map[string]*bintree{}},
+			"zh_Hant.all.json": {wski18nResourcesZh_hantAllJson, map[string]*bintree{}},
 		}},
 	}},
 }}
@@ -443,4 +444,3 @@ func _filePath(dir, name string) string {
 	cannonicalName := strings.Replace(name, "\\", "/", -1)
 	return filepath.Join(append([]string{dir}, strings.Split(cannonicalName, "/")...)...)
 }
-
diff --git a/wskprint/console.go b/wskprint/console.go
index 122eed7..94e0f5d 100644
--- a/wskprint/console.go
+++ b/wskprint/console.go
@@ -24,21 +24,21 @@ import (
 	"github.com/mattn/go-colorable"
 )
 
-const(
+const (
 	STR_PREFIXED_MESSAGE = "%s: %s"
 )
 
-var(
-	clrInfo = color.New(color.FgCyan)
-	clrWarning = color.New(color.FgYellow)
-	clrError = color.New(color.FgRed)
-	clrSuccess = color.New(color.FgGreen)
+var (
+	clrInfo      = color.New(color.FgCyan)
+	clrWarning   = color.New(color.FgYellow)
+	clrError     = color.New(color.FgRed)
+	clrSuccess   = color.New(color.FgGreen)
 	clrTitleInfo = color.New(color.FgCyan).Add(color.Underline)
 )
 
 func PrintOpenWhiskError(message string) {
 	outputStream := colorable.NewColorableStderr()
-	fmt.Fprintf(outputStream, clrError.Sprintf( STR_PREFIXED_MESSAGE,
+	fmt.Fprintf(outputStream, clrError.Sprintf(STR_PREFIXED_MESSAGE,
 		wski18n.T(wski18n.ID_MSG_PREFIX_ERROR), message))
 }
 
@@ -48,7 +48,7 @@ func PrintOpenWhiskFromError(err error) {
 
 func PrintOpenWhiskWarning(message string) {
 	outputStream := colorable.NewColorableStdout()
-	fmt.Fprintf(outputStream, clrWarning.Sprintf( STR_PREFIXED_MESSAGE,
+	fmt.Fprintf(outputStream, clrWarning.Sprintf(STR_PREFIXED_MESSAGE,
 		wski18n.T(wski18n.ID_MSG_PREFIX_WARNING), message))
 }
 
@@ -58,7 +58,7 @@ func PrintlnOpenWhiskWarning(message string) {
 
 func PrintOpenWhiskSuccess(message string) {
 	outputStream := colorable.NewColorableStdout()
-	fmt.Fprintf(outputStream, clrSuccess.Sprintf( STR_PREFIXED_MESSAGE,
+	fmt.Fprintf(outputStream, clrSuccess.Sprintf(STR_PREFIXED_MESSAGE,
 		wski18n.T(wski18n.ID_MSG_PREFIX_SUCCESS), message))
 }
 
@@ -68,37 +68,36 @@ func PrintlnOpenWhiskSuccess(message string) {
 
 func PrintOpenWhiskInfo(message string) {
 	outputStream := colorable.NewColorableStdout()
-	fmt.Fprintf(outputStream, clrInfo.Sprintf( STR_PREFIXED_MESSAGE,
+	fmt.Fprintf(outputStream, clrInfo.Sprintf(STR_PREFIXED_MESSAGE,
 		wski18n.T(wski18n.ID_MSG_PREFIX_INFO), message))
 }
 
-
 func PrintlnOpenWhiskInfo(message string) {
 	PrintOpenWhiskInfo(message + "\n")
 }
 
 func PrintlnOpenWhiskInfoTitle(message string) {
 	outputStream := colorable.NewColorableStdout()
-	fmt.Fprintf(outputStream, clrTitleInfo.Sprintf( STR_PREFIXED_MESSAGE,
+	fmt.Fprintf(outputStream, clrTitleInfo.Sprintf(STR_PREFIXED_MESSAGE,
 		wski18n.T(wski18n.ID_MSG_PREFIX_INFO), message))
 }
 
 func PrintlnOpenWhiskOutput(message string) {
-   	fmt.Println(message)
+	fmt.Println(message)
 }
 
 func PrintOpenWhiskVerboseTitle(verbose bool, message string) {
-	if verbose{
+	if verbose {
 		PrintlnOpenWhiskInfoTitle(message)
 	}
 }
 
 func PrintOpenWhiskVerbose(verbose bool, message string) {
-	if verbose{
+	if verbose {
 		PrintOpenWhiskInfo(message)
 	}
 }
 
 func PrintlnOpenWhiskVerbose(verbose bool, message string) {
-	PrintOpenWhiskVerbose(verbose, message + "\n")
+	PrintOpenWhiskVerbose(verbose, message+"\n")
 }

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