Configuration
The linter contains a list of core rules, and by default, they are all enabled. However, one can disable a rule by using a CLI flag, a configuration file or the file comments.
CLI flag
We can disable a rule using the --disable-rule flag.
Example:
Disable the rule core::0140::lower-snake:
api-linter --disable-rule core::0140::lower-snake test.proto
To disable multiple rules, specify the flag multiple times respectively:
api-linter --disable-rule core::0140::lower-snake --disable-rule core::0131::request-name-field test.proto
Configuration file
The linter accepts a configuration file using the ---config CLI switch.
Examples:
Disable the rule core::0140::lower-snake for any proto files under the
directory tests using a JSON config file:
[
  {
    "included_paths": ["tests/**/*.proto"],
    "disabled_rules": ["core::0140::lower-snake"]
  }
]
Disable the same rule using a YAML config file:
---
- included_paths:
    - 'tests/**/*.proto'
  disabled_rules:
    - 'core::0140::lower-snake'
Enable the rule core::0140::lower-snake for all proto files except the
directory tests using a JSON config file:
[
  {
    "excluded_paths": ["tests/**/*.proto"],
    "enabled_rules": ["core::0140::lower-snake"]
  }
]
Enable the same rule using a YAML config file:
---
- excluded_paths:
    - 'tests/**/*.proto'
  enabled_rules:
    - 'core::0140::lower-snake'
Proto comments
Examples:
Disable the rule core::0140::lower-snake for the entire file:
// A file comment:
// (-- api-linter: core::0140::lower-snake=disabled --)
//
// The above comment will disable the rule
// `core::0140::lower-snake` for the entire file.
syntax = "proto3";
package google.api.linter.examples;
message Example {
    string badFieldName = 1;
    string anotherBadFieldName = 2;
}
Disable the same rule only for a field by using a leading comment:
syntax = "proto3";
package google.api.linter.examples;
message Example {
    // This field will trigger a lint error.
    string badFieldName = 1;
    // This field will not trigger a lint error.
    // (-- api-linter: core::0140::lower-snake=disabled --)
    string anotherBadFieldName = 2;
}
 View on GitHub
                View on GitHub