code: func SetupConfigValidation(rules *validation.RuleSet) {
  	rules.Add("services/${config_service_appid}", projectsCfg, func(ctx *validation.Context, configSet, path string, content []byte) error {
  		ctx.SetFile(projectsCfg)
  		cfg := &config.ProjectsCfg{}
  		if err := proto.UnmarshalText(string(content), cfg); err != nil {
  			ctx.Errorf("not a valid ProjectsCfg proto message - %s", err)
  		} else {
  			validateProjectsCfg(ctx, cfg)
  		}
  		return nil
  	})
  }
docs: // SetupConfigValidation registers the tokenserver custom projects.cfg validator.