Стандартный набор по паттерну tasks/booking/telephony: - .gitea/workflows/ci.yml: go build + go test + golangci-lint v2.4 на каждый push/PR. Линтер строгий (zero-warnings policy). - .gitea/workflows/deploy.yaml: на push в main собирается образ, пушится в gitea registry (cluster-local + node-local), kubectl применяет все k8s/* и роллит deployment с image::<github.sha>. - .golangci.yml: тот же набор линтеров что в остальных Go-сервисах (errcheck/govet/ineffassign/staticcheck/unused) + exclusions для типичных «безопасных» свежих ошибок (Close/Encode/Rollback). REGISTRY_USERNAME/REGISTRY_PASSWORD secrets — те же что у других сервисов организации (нужно настроить repo-secrets в Gitea Admin перед первым deploy'ем). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
37 lines
727 B
YAML
37 lines
727 B
YAML
version: "2"
|
|
|
|
run:
|
|
timeout: 3m
|
|
|
|
linters:
|
|
default: none
|
|
enable:
|
|
- errcheck
|
|
- govet
|
|
- ineffassign
|
|
- staticcheck
|
|
- unused
|
|
settings:
|
|
errcheck:
|
|
check-type-assertions: true
|
|
check-blank: false
|
|
exclude-functions:
|
|
- (io.Closer).Close
|
|
- (net/http.ResponseWriter).Write
|
|
- (*encoding/json.Encoder).Encode
|
|
- io.Copy
|
|
- fmt.Fprintf
|
|
- (github.com/jackc/pgx/v5.Tx).Rollback
|
|
- os.RemoveAll
|
|
staticcheck:
|
|
checks: ["all", "-SA1019", "-ST1000", "-ST1005", "-ST1020", "-ST1021", "-ST1022"]
|
|
exclusions:
|
|
rules:
|
|
- path: _test\.go
|
|
linters:
|
|
- errcheck
|
|
|
|
issues:
|
|
max-issues-per-linter: 0
|
|
max-same-issues: 0
|