-
-
Notifications
You must be signed in to change notification settings - Fork 17
47 lines (39 loc) · 1.4 KB
/
staticAnalysis.yml
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
# Run static analysis checks
name: Static Analysis
on:
pull_request:
branches:
- main
workflow_dispatch:
jobs:
analysis:
runs-on: ubuntu-latest
steps:
- name: CPU Info
run: |
cat /proc/cpuinfo
echo "Number of cores: $(nproc)"
echo "Number of threads: $(nproc --all)"
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "^1.22" # The Go version to download (if necessary) and use.
check-latest: true
- run: go version
- name: Run go vet
run: go vet ./...
- name: Install and run gocyclo
run: |
export PATH=${PATH}:`go env GOPATH`/bin
go install github.com/fzipp/gocyclo/cmd/gocyclo@latest
gocyclo -over 15 -ignore ".pb(.gw)?.go$|_test.go$|wsproxy" . || echo "gocyclo detected too complex functions"
- name: Install and run misspell
run: |
# check misspelling in all files in repository
export PATH=${PATH}:`go env GOPATH`/bin
go install github.com/client9/misspell/cmd/misspell@latest
find . -type f -exec misspell {} \;
- name: Check yaml field names and yaml tags
run: tools/validate/validateYaml.py || echo "invalid yaml field name(s) detected"
- name: Check json tags
run: tools/validate/validateJson.py || echo "invalid json tag(s) detected"