d2dbb8c963
* cli: initial work on debug; server-status target * debug: add metrics capture target (#7376) * check against DR secondary * debug: add compression * refactor check into preflight func * debug: set short test time on tests, fix exit code bug * debug: use temp dir for output on tests * debug: use mholt/archiver for compression * first pass on adding pprof * use logger for output * refactor polling target capture logic * debug: poll and collect replication status * debug: poll and collect host-info; rename output files and collection refactor * fix comments * add archive test; fix bugs found * rename flag name to singular target * add target output test; scaffold other tests cases * debug/test: add pprof and index file tests * debug/test: add min timing check tests * debug: fix index gen race and collection goroutine race * debug: extend archive tests, handle race between program exit and polling goroutines * update docstring * debug: correctly add to pollingWg * debug: add config target support * debug: don't wait on interrupt shutdown; add file exists unit tests * move pprof bits into its goroutine * debug: skip empty metrics and some pprof file creation if permission denied, add matching unit test * address comments and feedback * Vault debug using run.Group (#7658) * debug: switch to use oklog/run.Group * debug: use context to cancel requests and interrupt rungroups. * debug: trigger the first interval properly * debug: metrics collection should use metrics interval * debug: add missing continue on metrics error * debug: remove the use of buffered chan to trigger first interval * debug: don't shadow BaseCommand's client, properly block on interval capture failures * debug: actually use c.cachedClient everywhere * go mod vendor * debug: run all pprof in goroutines; bump pprof timings in tests to reduce flakiness * debug: update help text
55 lines
2 KiB
Bash
55 lines
2 KiB
Bash
#!/bin/bash
|
|
#
|
|
# Copyright 2017, Joe Tsai. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style
|
|
# license that can be found in the LICENSE.md file.
|
|
|
|
cd $(go list -f '{{ .Dir }}' github.com/dsnet/compress)
|
|
|
|
BOLD="\x1b[1mRunning: "
|
|
PASS="\x1b[32mPASS"
|
|
FAIL="\x1b[31mFAIL"
|
|
RESET="\x1b[0m"
|
|
|
|
echo -e "${BOLD}fmt${RESET}"
|
|
RET_FMT=$(find . -name "*.go" | egrep -v "/(_.*_|\..*|testdata)/" | xargs gofmt -d)
|
|
if [[ ! -z "$RET_FMT" ]]; then echo "$RET_FMT"; echo; fi
|
|
|
|
echo -e "${BOLD}test${RESET}"
|
|
RET_TEST=$(go test -race ./... | egrep -v "^(ok|[?])\s+")
|
|
if [[ ! -z "$RET_TEST" ]]; then echo "$RET_TEST"; echo; fi
|
|
|
|
echo -e "${BOLD}staticcheck${RESET}"
|
|
RET_SCHK=$(staticcheck \
|
|
-ignore "
|
|
github.com/dsnet/compress/brotli/*.go:SA4016
|
|
github.com/dsnet/compress/brotli/*.go:S1023
|
|
github.com/dsnet/compress/brotli/*.go:U1000
|
|
github.com/dsnet/compress/bzip2/*.go:S1023
|
|
github.com/dsnet/compress/flate/*.go:U1000
|
|
github.com/dsnet/compress/internal/cgo/lzma/*.go:SA4000
|
|
github.com/dsnet/compress/internal/prefix/*.go:S1004
|
|
github.com/dsnet/compress/internal/prefix/*.go:S1023
|
|
github.com/dsnet/compress/internal/prefix/*.go:SA4016
|
|
github.com/dsnet/compress/internal/tool/bench/*.go:S1007
|
|
github.com/dsnet/compress/xflate/internal/meta/*.go:S1023
|
|
" ./... 2>&1)
|
|
if [[ ! -z "$RET_SCHK" ]]; then echo "$RET_SCHK"; echo; fi
|
|
|
|
echo -e "${BOLD}lint${RESET}"
|
|
RET_LINT=$(golint ./... 2>&1 |
|
|
egrep -v "^vendor/" |
|
|
egrep -v "should have comment(.*)or be unexported" |
|
|
egrep -v "^(.*)type name will be used as(.*)by other packages" |
|
|
egrep -v "^brotli/transform.go:(.*)replace i [+]= 1 with i[+]{2}" |
|
|
egrep -v "^internal/prefix/prefix.go:(.*)replace symBits(.*) [-]= 1 with symBits(.*)[-]{2}" |
|
|
egrep -v "^xflate/common.go:(.*)NoCompression should be of the form" |
|
|
egrep -v "^exit status")
|
|
if [[ ! -z "$RET_LINT" ]]; then echo "$RET_LINT"; echo; fi
|
|
|
|
if [[ ! -z "$RET_FMT" ]] || [ ! -z "$RET_TEST" ] || [[ ! -z "$RET_SCHK" ]] || [[ ! -z "$RET_LINT" ]]; then
|
|
echo -e "${FAIL}${RESET}"; exit 1
|
|
else
|
|
echo -e "${PASS}${RESET}"; exit 0
|
|
fi
|