29 lines
		
	
	
		
			875 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			875 B
		
	
	
	
		
			Go
		
	
	
	
	
	
package clientcmd
 | 
						|
 | 
						|
import (
 | 
						|
	"fmt"
 | 
						|
 | 
						|
	"github.com/go-resty/resty/v2"
 | 
						|
)
 | 
						|
 | 
						|
// GetServerInfo queries the supplied connection string for server info and uses the provided repoName to get repo specific information
 | 
						|
func GetServerInfo(connectionString string, repoName string) error {
 | 
						|
	client := resty.New()
 | 
						|
	resp, err := client.R().
 | 
						|
		SetPathParams(map[string]string{
 | 
						|
			"repoName": repoName,
 | 
						|
		}).
 | 
						|
		Get(connectionString + "/info/" + "{repoName}") //creating the full string to get info
 | 
						|
	if err != nil {
 | 
						|
		return fmt.Errorf("error connecting to server at: %s: error was: %s", connectionString, err)
 | 
						|
	}
 | 
						|
	if resp.IsError() {
 | 
						|
		if resp.StatusCode() == 404 {
 | 
						|
			return fmt.Errorf("repo was not found on server, 404: %s", resp.Request.URL)
 | 
						|
		}
 | 
						|
		return fmt.Errorf("response not a success: %d: connection URL: %s", resp.StatusCode(), resp.Request.URL)
 | 
						|
	}
 | 
						|
	fmt.Println(resp)
 | 
						|
	return nil
 | 
						|
}
 |