2022-11-13 14:38:59 +00:00
|
|
|
package main
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
"fmt"
|
|
|
|
"os"
|
2022-11-13 14:59:56 +00:00
|
|
|
garage "git.deuxfleurs.fr/garage-sdk/garage-admin-sdk-golang"
|
2022-11-13 14:38:59 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
// Set Host and other parameters
|
|
|
|
configuration := garage.NewConfiguration()
|
|
|
|
configuration.Host = "127.0.0.1:3903"
|
|
|
|
|
|
|
|
|
|
|
|
// We can now generate a client
|
|
|
|
client := garage.NewAPIClient(configuration)
|
|
|
|
|
|
|
|
// Authentication is handled through the context pattern
|
|
|
|
ctx := context.WithValue(context.Background(), garage.ContextAccessToken, "s3cr3t")
|
|
|
|
|
|
|
|
// Send a request
|
|
|
|
resp, r, err := client.NodesApi.GetNodes(ctx).Execute()
|
|
|
|
if err != nil {
|
|
|
|
fmt.Fprintf(os.Stderr, "Error when calling `NodesApi.GetNodes``: %v\n", err)
|
|
|
|
fmt.Fprintf(os.Stderr, "Full HTTP response: %v\n", r)
|
|
|
|
}
|
|
|
|
|
|
|
|
// Process the response
|
|
|
|
fmt.Fprintf(os.Stdout, "Target hostname: %v\n", resp.KnownNodes[resp.Node].Hostname)
|
|
|
|
}
|