code: func (actor Actor) getPluginInfoFromRepositoryForPlatform(pluginName string, pluginRepo configv3.PluginRepository, platform string) (PluginInfo, error) {
  	pluginRepository, err := actor.client.GetPluginRepository(pluginRepo.URL)
  	if err != nil {
  		return PluginInfo{}, err
  	}
  
  	var pluginFoundWithIncompatibleBinary bool
  
  	for _, plugin := range pluginRepository.Plugins {
  		if plugin.Name == pluginName {
  			for _, pluginBinary := range plugin.Binaries {
  				if pluginBinary.Platform == platform {
  					return PluginInfo{
  						Name:     plugin.Name,
  						Version:  plugin.Version,
  						URL:      pluginBinary.URL,
  						Checksum: pluginBinary.Checksum,
  					}, nil
  				}
  			}
  			pluginFoundWithIncompatibleBinary = true
  		}
  	}
  
  	if pluginFoundWithIncompatibleBinary {
  		return PluginInfo{}, actionerror.NoCompatibleBinaryError{}
  	}
  
  	return PluginInfo{}, actionerror.PluginNotFoundInRepositoryError{
  		PluginName:     pluginName,
  		RepositoryName: pluginRepo.Name,
  	}
  }
docs: // getPluginInfoFromRepositoryForPlatform returns the plugin info, if found, from
  // the specified repository for the specified platform.