SDK Go
Le SDK Go est le client officiel pour interagir avec l’API Deployme.cloud depuis vos applications Go.
Installation
Section intitulée « Installation »go get github.com/deployme-cloud/deployme-sdk-goAuthentification
Section intitulée « Authentification »package main
import ( deployme "github.com/deployme-cloud/deployme-sdk-go")
func main() { // Via token API client := deployme.NewClient("YOUR_API_TOKEN")
// Ou via variables d'environnement (DEPLOYME_API_TOKEN) client := deployme.NewClientFromEnv()}Gestion des clusters
Section intitulée « Gestion des clusters »Créer un cluster
Section intitulée « Créer un cluster »cluster, err := client.Clusters.Create(ctx, &deployme.CreateClusterInput{ Name: "production", ControlPlanes: 3, Workers: 5, NodeSize: "large", Phase: deployme.PhaseManaged, // Phase 0})Lister les clusters
Section intitulée « Lister les clusters »clusters, err := client.Clusters.List(ctx, &deployme.ListOptions{ Page: 1, PerPage: 20,})for _, c := range clusters.Items { fmt.Printf("%s — %s (%d nodes)\n", c.Name, c.Status, c.NodeCount)}Récupérer un cluster
Section intitulée « Récupérer un cluster »cluster, err := client.Clusters.Get(ctx, "cluster-id")Supprimer un cluster
Section intitulée « Supprimer un cluster »err := client.Clusters.Delete(ctx, "cluster-id")Récupérer le kubeconfig
Section intitulée « Récupérer le kubeconfig »kubeconfig, err := client.Clusters.GetKubeconfig(ctx, "cluster-id")os.WriteFile("kubeconfig.yaml", kubeconfig, 0600)Gestion des nodes
Section intitulée « Gestion des nodes »// Ajouter des workerserr := client.Clusters.ScaleWorkers(ctx, "cluster-id", 8)
// Lister les nodesnodes, err := client.Nodes.List(ctx, "cluster-id")Gestion des erreurs
Section intitulée « Gestion des erreurs »cluster, err := client.Clusters.Create(ctx, input)if err != nil { var apiErr *deployme.APIError if errors.As(err, &apiErr) { fmt.Printf("API error %d: %s\n", apiErr.StatusCode, apiErr.Message) } return err}