-
Notifications
You must be signed in to change notification settings - Fork 4.4k
/
.pre-commit-config.yaml
54 lines (53 loc) · 1.7 KB
/
.pre-commit-config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# 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/)"