summaryrefslogtreecommitdiffstats
path: root/src/ncm/pkg/grpc/register.go
diff options
context:
space:
mode:
authorEric Multanen <eric.w.multanen@intel.com>2020-04-23 12:48:55 -0700
committerEric Multanen <eric.w.multanen@intel.com>2020-05-13 12:17:36 -0700
commita08968c161b999238cbd61ea2eb9fd597a5b37e6 (patch)
tree7a9a62b071a6aea583f69c44e283ed8502f45b01 /src/ncm/pkg/grpc/register.go
parentbd3e69e7a26aaa00d3367f1eeb78e91e63ebd404 (diff)
Add gRPC servers to ncm service
Add a contextupdate grpc server to the ncm service. Issue-ID: MULTICLOUD-1029 Signed-off-by: Eric Multanen <eric.w.multanen@intel.com> Change-Id: I38caa625c028baac06a6202f03b86d0f2bf38126
Diffstat (limited to 'src/ncm/pkg/grpc/register.go')
-rw-r--r--src/ncm/pkg/grpc/register.go58
1 files changed, 58 insertions, 0 deletions
diff --git a/src/ncm/pkg/grpc/register.go b/src/ncm/pkg/grpc/register.go
new file mode 100644
index 00000000..07d8f5c0
--- /dev/null
+++ b/src/ncm/pkg/grpc/register.go
@@ -0,0 +1,58 @@
+/*
+Copyright 2020 Intel Corporation.
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+package grpc
+
+import (
+ "os"
+ "strconv"
+ "strings"
+
+ log "github.com/onap/multicloud-k8s/src/orchestrator/pkg/infra/logutils"
+)
+
+const default_host = "localhost"
+const default_port = 9030
+const default_ncm_name = "ncm"
+const ENV_NCM_NAME = "NCM_NAME"
+
+func GetServerHostPort() (string, int) {
+
+ // expect name of this ncm program to be in env variable "NCM_NAME" - e.g. NCM_NAME="ncm"
+ serviceName := os.Getenv(ENV_NCM_NAME)
+ if serviceName == "" {
+ serviceName = default_ncm_name
+ log.Info("Using default name for NCM service name", log.Fields{
+ "Name": serviceName,
+ })
+ }
+
+ // expect service name to be in env variable - e.g. NCM_SERVICE_HOST
+ host := os.Getenv(strings.ToUpper(serviceName) + "_SERVICE_HOST")
+ if host == "" {
+ host = default_host
+ log.Info("Using default host for ncm gRPC controller", log.Fields{
+ "Host": host,
+ })
+ }
+
+ // expect service port to be in env variable - e.g. NCM_SERVICE_PORT
+ port, err := strconv.Atoi(os.Getenv(strings.ToUpper(serviceName) + "_SERVICE_PORT"))
+ if err != nil || port < 0 {
+ port = default_port
+ log.Info("Using default port for ncm gRPC controller", log.Fields{
+ "Port": port,
+ })
+ }
+ return host, port
+}