docker/docker_client.go
func CheckAuth(ctx context.Context, sys *types.SystemContext, username, password, registry string) error {
	client, err := newDockerClient(sys, registry, registry)
	if err != nil {
		return errors.Wrapf(err, "error creating new docker client")
	}
	client.username = username
	client.password = password

	resp, err := client.makeRequest(ctx, "GET", "/v2/", nil, nil, v2Auth, nil)
	if err != nil {
		return err
	}
	defer resp.Body.Close()

	switch resp.StatusCode {
	case http.StatusOK:
		return nil
	case http.StatusUnauthorized:
		return ErrUnauthorizedForCredentials
	default:
		return errors.Errorf("error occured with status code %d (%s)", resp.StatusCode, http.StatusText(resp.StatusCode))
	}
}
func CheckAuth(ctx context.Context, sys *types.SystemContext, username, password, registry string) error {
	client, err := newDockerClient(sys, registry, registry)
	if err != nil {
		return errors.Wrapf(err, "error creating new docker client")
	}
	client.username = username
	client.password = password

	resp, err := client.makeRequest(ctx, "GET", "/v2/", nil, nil, v2Auth, nil)
	if err != nil {
		return err
	}
	defer resp.Body.Close()

	switch resp.StatusCode {
	case http.StatusOK:
		return nil
	case http.StatusUnauthorized:
		return ErrUnauthorizedForCredentials
	default:
		return errors.Errorf("error occured with status code %d (%s)", resp.StatusCode, http.StatusText(resp.StatusCode))
	}
}
func CheckAuth ( ctx context . Context , sys * types . SystemContext , username , password , registry string ) error { client , err := newDockerClient ( sys , registry , registry ) if err != nil { return errors . Wrapf ( err , " " ) } client . username = username client . password = password resp , err := client . makeRequest ( ctx , " " , " " , nil , nil , v2Auth , nil ) if err != nil { return err } defer resp . Body . Close ( ) switch resp . StatusCode { case http . StatusOK : return nil case http . StatusUnauthorized : return ErrUnauthorizedForCredentials default : return errors . Errorf ( " " , resp . StatusCode , http . StatusText ( resp . StatusCode ) ) } }
// CheckAuth validates the credentials by attempting to log into the registry
// returns an error if an error occurred while making the http request or the status code received was 401
CheckAuth validates the credentials by attempting to log into the registry returns an error if an error occurred while making the http request or the status code received was 401