github.com/supabase/cli@v1.168.1/internal/utils/tenant/storage.go (about) 1 package tenant 2 3 import ( 4 "context" 5 "io" 6 "net/http" 7 8 "github.com/go-errors/errors" 9 ) 10 11 var errStorageVersion = errors.New("Storage version not found.") 12 13 func (t *TenantAPI) GetStorageVersion(ctx context.Context) (string, error) { 14 resp, err := t.Send(ctx, http.MethodGet, "/storage/v1/version", nil) 15 if err != nil { 16 return "", err 17 } 18 defer resp.Body.Close() 19 data, err := io.ReadAll(resp.Body) 20 if err != nil { 21 return "", errors.Errorf("failed to read response body: %w", err) 22 } 23 if len(data) == 0 || string(data) == "0.0.0" { 24 return "", errors.New(errStorageVersion) 25 } 26 return "v" + string(data), nil 27 }