From 2434d958a5b5b675016e00cbbf93cb9f99d7f915 Mon Sep 17 00:00:00 2001 From: venkat k Date: Thu, 30 May 2024 22:14:38 +0530 Subject: [PATCH] handle db insert when first resource add cases --- capten/agent/internal/api/container_registry.go | 2 +- .../agent/internal/api/plugin_cloud_provider_apis.go | 2 +- capten/agent/internal/api/plugin_git_apis.go | 2 +- capten/common-pkg/capten-store/cloud_provider.go | 10 ++++++++++ capten/common-pkg/capten-store/container_registry.go | 11 +++++++++++ capten/common-pkg/capten-store/git_projects.go | 10 ++++++++++ 6 files changed, 34 insertions(+), 3 deletions(-) diff --git a/capten/agent/internal/api/container_registry.go b/capten/agent/internal/api/container_registry.go index 40ea028c..0a43d8e0 100644 --- a/capten/agent/internal/api/container_registry.go +++ b/capten/agent/internal/api/container_registry.go @@ -63,7 +63,7 @@ func (a *Agent) AddContainerRegistry(ctx context.Context, request *captenplugins Labels: request.Labels, RegistryType: request.RegistryType, } - if err := a.as.UpsertContainerRegistry(&ContainerRegistry); err != nil { + if err := a.as.AddContainerRegistry(&ContainerRegistry); err != nil { a.log.Errorf("failed to store Container registry to DB, %v", err) return &captenpluginspb.AddContainerRegistryResponse{ Status: captenpluginspb.StatusCode_INTERNAL_ERROR, diff --git a/capten/agent/internal/api/plugin_cloud_provider_apis.go b/capten/agent/internal/api/plugin_cloud_provider_apis.go index 51253895..25ade4c6 100644 --- a/capten/agent/internal/api/plugin_cloud_provider_apis.go +++ b/capten/agent/internal/api/plugin_cloud_provider_apis.go @@ -36,7 +36,7 @@ func (a *Agent) AddCloudProvider(ctx context.Context, request *captenpluginspb.A CloudType: request.CloudType, Labels: request.Labels, } - if err := a.as.UpsertCloudProvider(&CloudProvider); err != nil { + if err := a.as.AddCloudProvider(&CloudProvider); err != nil { a.log.Errorf("failed to store cloud provider to DB, %v", err) return &captenpluginspb.AddCloudProviderResponse{ Status: captenpluginspb.StatusCode_INTERNAL_ERROR, diff --git a/capten/agent/internal/api/plugin_git_apis.go b/capten/agent/internal/api/plugin_git_apis.go index 13ca8c8c..844cafd6 100644 --- a/capten/agent/internal/api/plugin_git_apis.go +++ b/capten/agent/internal/api/plugin_git_apis.go @@ -50,7 +50,7 @@ func (a *Agent) AddGitProject(ctx context.Context, request *captenpluginspb.AddG ProjectUrl: request.ProjectUrl, Labels: request.Labels, } - if err := a.as.UpsertGitProject(&gitProject); err != nil { + if err := a.as.AddGitProject(&gitProject); err != nil { a.log.Errorf("failed to store git project to DB, %v", err) return &captenpluginspb.AddGitProjectResponse{ Status: captenpluginspb.StatusCode_INTERNAL_ERROR, diff --git a/capten/common-pkg/capten-store/cloud_provider.go b/capten/common-pkg/capten-store/cloud_provider.go index 97ec8577..caacb6e7 100644 --- a/capten/common-pkg/capten-store/cloud_provider.go +++ b/capten/common-pkg/capten-store/cloud_provider.go @@ -8,6 +8,16 @@ import ( "github.com/kube-tarian/kad/capten/common-pkg/pb/captenpluginspb" ) +func (a *Store) AddCloudProvider(config *captenpluginspb.CloudProvider) error { + provider := CloudProvider{ + ID: uuid.MustParse(config.Id), + CloudType: config.CloudType, + Labels: config.Labels, + LastUpdateTime: time.Now(), + } + return a.dbClient.Create(&provider) +} + func (a *Store) UpsertCloudProvider(config *captenpluginspb.CloudProvider) error { if config.Id == "" { provider := CloudProvider{ diff --git a/capten/common-pkg/capten-store/container_registry.go b/capten/common-pkg/capten-store/container_registry.go index 954eebce..c7c4dbd0 100644 --- a/capten/common-pkg/capten-store/container_registry.go +++ b/capten/common-pkg/capten-store/container_registry.go @@ -8,6 +8,17 @@ import ( "github.com/kube-tarian/kad/capten/common-pkg/pb/captenpluginspb" ) +func (a *Store) AddContainerRegistry(config *captenpluginspb.ContainerRegistry) error { + registry := ContainerRegistry{ + ID: uuid.MustParse(config.Id), + RegistryURL: config.RegistryUrl, + RegistryType: config.RegistryType, + Labels: config.Labels, + LastUpdateTime: time.Now(), + } + return a.dbClient.Create(®istry) +} + func (a *Store) UpsertContainerRegistry(config *captenpluginspb.ContainerRegistry) error { if config.Id == "" { registry := ContainerRegistry{ diff --git a/capten/common-pkg/capten-store/git_projects.go b/capten/common-pkg/capten-store/git_projects.go index 3caa8070..7c933691 100644 --- a/capten/common-pkg/capten-store/git_projects.go +++ b/capten/common-pkg/capten-store/git_projects.go @@ -8,6 +8,16 @@ import ( "github.com/kube-tarian/kad/capten/common-pkg/pb/captenpluginspb" ) +func (a *Store) AddGitProject(config *captenpluginspb.GitProject) error { + project := GitProject{ + ID: uuid.MustParse(config.Id), + ProjectURL: config.ProjectUrl, + Labels: config.Labels, + LastUpdateTime: time.Now(), + } + return a.dbClient.Create(&project) +} + func (a *Store) UpsertGitProject(config *captenpluginspb.GitProject) error { if config.Id == "" { project := GitProject{