mirror of
https://github.com/containers/podman.git
synced 2025-07-04 01:48:28 +08:00
Enable pre-commit tool linting
This should help use keep the codebase more consistent, and avoid sevel whitespace related issues, or bad file permissions. pre-commit allows us to easily introduce other linters in follow-ups, like bashate. Note: pre-commit tool does *not* install any git-hooks. Making commits will will call the tool unless you deliverately tell it to install the hooks. Signed-off-by: Sorin Sbarnea <ssbarnea@redhat.com>
This commit is contained in:
12
.pre-commit-config.yaml
Normal file
12
.pre-commit-config.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
---
|
||||
exclude: ^vendor/
|
||||
repos:
|
||||
- repo: https://github.com/pre-commit/pre-commit-hooks.git
|
||||
rev: v2.4.0
|
||||
hooks:
|
||||
- id: end-of-file-fixer
|
||||
- id: trailing-whitespace
|
||||
- id: mixed-line-ending
|
||||
- id: check-byte-order-marker
|
||||
- id: check-executables-have-shebangs
|
||||
- id: check-merge-conflict
|
9
Makefile
9
Makefile
@ -32,8 +32,10 @@ BUILDTAGS ?= \
|
||||
exclude_graphdriver_devicemapper \
|
||||
seccomp \
|
||||
varlink
|
||||
PYTHON ?= $(shell command -v python python3|head -n1)
|
||||
PYTHON ?= $(shell command -v python3 python|head -n1)
|
||||
PKG_MANAGER ?= $(shell command -v dnf yum|head -n1)
|
||||
# ~/.local/bin is not in PATH on all systems
|
||||
PRE_COMMIT = $(shell command -v bin/venv/bin/pre-commit ~/.local/bin/pre-commit pre-commit | head -n1)
|
||||
|
||||
SOURCES = $(shell find . -name "*.go")
|
||||
|
||||
@ -149,6 +151,11 @@ endif
|
||||
touch $@
|
||||
|
||||
lint: golangci-lint
|
||||
ifeq ($(PRE_COMMIT),)
|
||||
@echo "FATAL: pre-commit was not found, check https://pre-commit.com/ about installing it." >&2
|
||||
@exit 2
|
||||
endif
|
||||
$(PRE_COMMIT) run -a
|
||||
|
||||
golangci-lint: .gopathok varlink_generate .install.golangci-lint
|
||||
$(GOBIN)/golangci-lint run --tests=false --skip-files swagger.go
|
||||
|
@ -48,6 +48,7 @@ WORKDIR $GOSRC
|
||||
RUN set -x && \
|
||||
make install.tools && \
|
||||
install -D -m 755 $GOSRC/contrib/gate/entrypoint.sh /usr/local/bin/ && \
|
||||
python3 -m pip install pre-commit && \
|
||||
rm -rf "$GOSRC"
|
||||
|
||||
# Install cni config
|
||||
|
Reference in New Issue
Block a user