1616
1717# #@ Security
1818
19+ # Gosec configuration
20+ GOSEC_IMAGE := securego/gosec:2.23.0
21+ # Gosec exclusions:
22+ # G401,G501,G505: Weak crypto (MD5/SHA1) - used for non-security purposes (git hashes, etags)
23+ # G304: File path from variable - unavoidable in file operations
24+ GOSEC_EXCLUDES := G401,G501,G505,G304
25+
1926.PHONY : gosec
2027gosec : # # Inspect the source code for security problems by scanning the Go Abstract Syntax Tree
2128ifeq ($(CONTAINER_RUNNABLE ) , 0)
22- $(RUN_CONTAINER_COMMAND) securego/gosec:latest \
29+ $(RUN_CONTAINER_COMMAND) $(GOSEC_IMAGE) \
2330 -fmt=html \
2431 -out=gosec-results.html \
2532 -stdout -verbose=text \
2633 -exclude-dir=generated \
2734 -exclude-dir=test \
2835 -exclude-dir=third_party \
2936 -exclude-dir=examples \
37+ -exclude-dir=internal/kpt \
3038 -exclude-generated \
3139 -severity=medium \
32- -exclude=G401,G501,G505,G304 ./...
40+ -exclude=$(GOSEC_EXCLUDES) ./...
3341else
3442 gosec -fmt=html -out=gosec-results.html -stdout -verbose=text \
3543 -exclude-dir=generated \
3644 -exclude-dir=third_party \
3745 -exclude-dir=test \
3846 -exclude-dir=examples \
39- -exclude-generated -severity=medium -exclude=G401,G501,G505,G304 ./...
47+ -exclude-dir=internal/kpt \
48+ -exclude-generated \
49+ -severity=medium \
50+ -exclude=$(GOSEC_EXCLUDES) ./...
4051endif
4152
4253.PHONY : gosec-sarif
4354gosec-sarif : # # Generate SARIF security report
4455ifeq ($(CONTAINER_RUNNABLE ) , 0)
45- $(RUN_CONTAINER_COMMAND) -e GOTOOLCHAIN=auto securego/gosec:latest \
56+ $(RUN_CONTAINER_COMMAND) -e GOTOOLCHAIN=auto $(GOSEC_IMAGE) \
4657 -fmt=sarif \
4758 -out=gosec-results.sarif \
4859 -stdout -verbose=text \
4960 -exclude-dir=generated \
5061 -exclude-dir=test \
5162 -exclude-dir=third_party \
5263 -exclude-dir=examples \
64+ -exclude-dir=internal/kpt \
5365 -exclude-generated \
5466 -severity=medium \
55- -exclude=G401,G501,G505,G304 ./...
67+ -exclude=$(GOSEC_EXCLUDES) ./...
5668else
5769 GOTOOLCHAIN=auto gosec -fmt=sarif -out=gosec-results.sarif -stdout -verbose=text \
5870 -exclude-dir=generated \
5971 -exclude-dir=third_party \
6072 -exclude-dir=test \
6173 -exclude-dir=examples \
62- -exclude-generated -severity=medium -exclude=G401,G501,G505,G304 ./...
74+ -exclude-dir=internal/kpt \
75+ -exclude-generated \
76+ -severity=medium \
77+ -exclude=$(GOSEC_EXCLUDES) ./...
6378endif
0 commit comments