consul/.pre-commit-config.yaml

55 lines
1.7 KiB
YAML
Raw Permalink Normal View History

# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: BUSL-1.1
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
#
# Opt-in to running pre-commit hooks by running `make tools`.
#
# Guidelines for adding new pre-commit hooks
# ====================================================================
# A hook SHOULD be blazingly fast (<2s) to impose minimal latency on
# developer workflows (e.g. golangci-lint takes > 8s)
#
# A hook SHOULD attempt to fix errors, not just identify them.
#
# A hook SHOULD address common errors in files that tend to change
# frequently. While surfacing esoteric issues is nice, hooks that have a
# wider impact are preferred.
#
repos:
- repo: https://github.com/tekwizely/pre-commit-golang
rev: v1.0.0-rc.1
hooks:
# Formats go imports into deterministic sections.
# `pre-commit run gci` to run in isolation.
- id: my-cmd
name: Format go imports
alias: gci
# skip all generated go files
exclude: |
(?x)(
^proto-public/|
^proto/|
^agent/xds/z_xds_packages\.go$|
^testing/deployer/topology/default_versions\.go$|
\.deepcopy\.go$|
\.gen\.go$|
\.pb\.go$|
\.pb\.binary\.go$|
generated_funcs\.go$|
_generated_test\.go$|
mock_.+\.go$
)
args:
- "gci"
- "write"
- "--section"
- "standard"
- "--section"
- "default"
- "--section"
- "prefix(github.com/hashicorp/)"
- "--section"
- "prefix(github.com/hashicorp/consul/)"