Refactor Helm management
[nonrtric/plt/sme.git] / capifcore / main.go
index 4e592c0..37137d7 100644 (file)
@@ -26,6 +26,7 @@ import (
        "net/http"
 
        "github.com/labstack/echo/v4"
+       "helm.sh/helm/v3/pkg/cli"
        "oransc.org/nonrtric/capifcore/internal/discoverserviceapi"
        "oransc.org/nonrtric/capifcore/internal/invokermanagementapi"
        "oransc.org/nonrtric/capifcore/internal/providermanagementapi"
@@ -49,8 +50,8 @@ var repoName string
 
 func main() {
        var port = flag.Int("port", 8090, "Port for CAPIF Core Function HTTP server")
-       flag.StringVar(&url, "url", "http://chartmuseum:8080", "ChartMuseum url")
-       flag.StringVar(&repoName, "repoName", "local-dev", "Repository name")
+       flag.StringVar(&url, "chartMuseumUrl", "", "ChartMuseum URL")
+       flag.StringVar(&repoName, "repoName", "capifcore", "Repository name")
        var logLevelStr = flag.String("loglevel", "Info", "Log level")
        flag.Parse()
 
@@ -59,11 +60,10 @@ func main() {
        }
 
        // Add repo
-       fmt.Printf("Adding %s to Helm Repo\n", url)
-       helmManager = helmmanagement.NewHelmManager()
-       err := helmManager.AddToRepo(repoName, url)
+       helmManager = helmmanagement.NewHelmManager(cli.New())
+       err := helmManager.SetUpRepo(repoName, url)
        if err != nil {
-               log.Fatal(err.Error())
+               log.Warnf("No Helm repo added due to: %s", err.Error())
        }
 
        go startWebServer(getEcho(), *port)
@@ -102,17 +102,6 @@ func getEcho() *echo.Echo {
        group.Use(middleware.OapiRequestValidator(publishServiceSwagger))
        publishserviceapi.RegisterHandlersWithBaseURL(e, publishService, "/published-apis/v1")
 
-       // Register DiscoverService
-       discoverServiceSwagger, err := discoverserviceapi.GetSwagger()
-       if err != nil {
-               log.Fatalf("Error loading DiscoverService swagger spec\n: %s", err)
-       }
-       discoverServiceSwagger.Servers = nil
-       discoverService := discoverservice.NewDiscoverService(publishService)
-       group = e.Group("/service-apis/v1")
-       group.Use(middleware.OapiRequestValidator(discoverServiceSwagger))
-       discoverserviceapi.RegisterHandlersWithBaseURL(e, discoverService, "/service-apis/v1")
-
        // Register InvokerManagement
        invokerManagerSwagger, err := invokermanagementapi.GetSwagger()
        if err != nil {
@@ -124,6 +113,17 @@ func getEcho() *echo.Echo {
        group.Use(middleware.OapiRequestValidator(invokerManagerSwagger))
        invokermanagementapi.RegisterHandlersWithBaseURL(e, invokerManager, "/api-invoker-management/v1")
 
+       // Register DiscoverService
+       discoverServiceSwagger, err := discoverserviceapi.GetSwagger()
+       if err != nil {
+               log.Fatalf("Error loading DiscoverService swagger spec\n: %s", err)
+       }
+       discoverServiceSwagger.Servers = nil
+       discoverService := discoverservice.NewDiscoverService(invokerManager)
+       group = e.Group("/service-apis/v1")
+       group.Use(middleware.OapiRequestValidator(discoverServiceSwagger))
+       discoverserviceapi.RegisterHandlersWithBaseURL(e, discoverService, "/service-apis/v1")
+
        // Register Security
        securitySwagger, err := publishserviceapi.GetSwagger()
        if err != nil {