polycule-connect/polyculeconnect/cmd/backend/remove.go
Melora Hugues c741400583
Some checks failed
/ docker-build-only (push) Failing after 35s
/ go-test (push) Failing after 1m6s
Remove all references to dex in the code (#42)
2024-10-19 14:58:00 +02:00

42 lines
1 KiB
Go

package cmd
import (
"context"
"fmt"
"git.faercol.me/faercol/polyculeconnect/polyculeconnect/cmd/utils"
"git.faercol.me/faercol/polyculeconnect/polyculeconnect/internal/db"
"github.com/google/uuid"
"github.com/spf13/cobra"
)
var backendRemoveCmd = &cobra.Command{
Use: "remove <backend_id>",
Short: "Remove a backend",
Long: `Remove the backend with the given ID from the database.`,
Args: cobra.ExactArgs(1),
Run: func(cmd *cobra.Command, args []string) {
removeBackend(args[0])
},
}
func removeBackend(backendIDStr string) {
backendID, err := uuid.Parse(backendIDStr)
if err != nil {
utils.Failf("Invalid UUID format: %s", err.Error())
}
s, err := db.New(*utils.InitConfig(""))
if err != nil {
utils.Failf("Failed to init storage: %s", err.Error())
}
if err := s.BackendStorage().DeleteBackend(context.Background(), backendID); err != nil {
utils.Failf("Failed to remove backend: %s", err.Error())
}
fmt.Println("Backend deleted")
}
func init() {
backendCmd.AddCommand(backendRemoveCmd)
}