Try using ids

This commit is contained in:
2024-05-02 12:47:52 +02:00
parent e952ee40c1
commit 657a269c3d
3 changed files with 26 additions and 84 deletions

View File

@ -6,6 +6,7 @@ import (
"fmt"
"log"
"github.com/google/uuid"
"github.com/joho/godotenv"
"git.badhouseplants.net/softplayer/softplayer-backend/internal/helpers/kube"
@ -25,6 +26,7 @@ type Environemnt struct {
}
type EnvironemntData struct {
UUID string
Name string
Description string
Provider string
@ -67,6 +69,7 @@ func (env *Environemnt) isNsVerified(ctx context.Context) error {
// Create environment should create a new configmap in the user's namespace
// using a token that belongs to the user.
func (env *Environemnt) Create(ctx context.Context) error {
env.Data.UUID = uuid.New().String()
if err := env.isNsVerified(ctx); err != nil {
log.Println("Can't verify ns")
return err
@ -93,7 +96,7 @@ func (env *Environemnt) Create(ctx context.Context) error {
}
obj := corev1.ConfigMap{
ObjectMeta: metav1.ObjectMeta{
Name: env.Data.Name,
Name: env.Data.UUID,
Namespace: env.UserID,
Labels: map[string]string{
"component": "bootstrap",
@ -101,6 +104,7 @@ func (env *Environemnt) Create(ctx context.Context) error {
},
},
Data: map[string]string{
"name": env.Data.Name,
"description": env.Data.Description,
"vars": vars,
},
@ -137,7 +141,7 @@ func (env *Environemnt) Update(ctx context.Context) error {
UserID: env.UserID,
Token: env.Token,
Data: &EnvironemntData{
Name: env.Data.Name,
UUID: env.Data.UUID,
},
}
@ -160,7 +164,7 @@ func (env *Environemnt) Update(ctx context.Context) error {
}
obj := corev1.ConfigMap{
ObjectMeta: metav1.ObjectMeta{
Name: env.Data.Name,
Name: env.Data.UUID,
Namespace: env.UserID,
Labels: map[string]string{
"component": "bootstrap",
@ -168,6 +172,7 @@ func (env *Environemnt) Update(ctx context.Context) error {
},
},
Data: map[string]string{
"name": env.Data.Name,
"description": env.Data.Description,
"vars": vars,
},
@ -196,7 +201,7 @@ func (env *Environemnt) Delete(ctx context.Context) error {
}
obj := corev1.ConfigMap{
ObjectMeta: metav1.ObjectMeta{
Name: env.Data.Name,
Name: env.Data.UUID,
Namespace: env.UserID,
Labels: map[string]string{
"component": "bootstrap",
@ -269,6 +274,13 @@ func (env *Environemnt) Get(ctx context.Context) error {
if err != nil {
return err
}
if val, ok := envData.Data["name"]; ok {
env.Data.Name = val
} else {
env.Data.Name = ""
}
if val, ok := res["SP_DESCRIPTION"]; ok {
env.Data.Description = val
} else {