code: func (c *StoreConfig) ConfigMap() map[string]string {
  	m := make(map[string]string, 20)
  	o := reflect.ValueOf(c).Elem()
  	for i := 0; i < o.NumField(); i++ {
  		jsonArg := o.Type().Field(i).Tag.Get("yaml")
  		if jsonArg == "" || jsonArg == "-" {
  			continue
  		}
  		f := o.Field(i)
  		var strVal string
  		switch f.Kind() {
  		case reflect.String:
  			strVal = f.String()
  		case reflect.Bool:
  			strVal = fmt.Sprintf("%t", f.Bool())
  		case reflect.Int:
  			strVal = fmt.Sprintf("%d", f.Int())
  		case reflect.Ptr:
  			switch bup := f.Interface().(type) {
  			case *backend.URL:
  				if bup == nil {
  					continue
  				}
  				strVal = bup.String()
  			}
  		default:
  			continue
  		}
  		m[jsonArg] = strVal
  	}
  	return m
  }
docs: // ConfigMap returns a map of stringified config values for easy printing