micro--go-micro
2cf95b27c8
govulncheck reported 30 reachable vulnerabilities. Remediation: - Pin `toolchain go1.25.12` and build CI on Go 1.25 (lint/tests workflows): clears ~24 Go standard-library CVEs (crypto/tls, crypto/x509, net/http, html/template, net/url, os, …) that were present under go1.24.7. - Bump `golang.org/x/net` v0.38.0 -> v0.55.0 and `google.golang.org/grpc` v1.71.1 -> v1.79.3 (grpc raises the module's Go directive to 1.25). Result: govulncheck drops from 30 -> 2. The remaining two (github.com/jackc/pgx/v4, github.com/jackc/pgproto3/v2) have no upstream fix and require a pgx v5 migration — tracked separately; the govulncheck gate will follow with those explicitly allow-listed until migrated. Note: this raises go-micro's minimum Go to 1.25 (forced by the grpc security bump). Verified: build, go vet, and the ai/agent/flow/store/registry/broker/ wrapper/cmd + grpc/net-dependent packages pass on 1.25.12. Claude-Session: https://claude.ai/code/session_01CmdEY7pYmV5zzwCjNJ4ykL Co-authored-by: Claude <noreply@anthropic.com>
76 行
1.9 KiB
YAML
76 行
1.9 KiB
YAML
name: Run Tests
|
|
on:
|
|
push:
|
|
branches:
|
|
- "**"
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- reopened
|
|
- synchronize
|
|
branches:
|
|
- "**"
|
|
jobs:
|
|
unittests:
|
|
name: Unit Tests
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: "1.25"
|
|
check-latest: true
|
|
cache: true
|
|
- name: Get dependencies
|
|
run: |
|
|
go install github.com/kyoh86/richgo@latest
|
|
go get -v -t -d ./...
|
|
- name: Run tests
|
|
id: tests
|
|
run: richgo test -v -race -cover ./...
|
|
env:
|
|
IN_TRAVIS_CI: yes
|
|
RICHGO_FORCE_COLOR: 1
|
|
|
|
etcd-integration:
|
|
name: Etcd Integration Tests
|
|
runs-on: ubuntu-latest
|
|
permissions:
|
|
contents: read
|
|
services:
|
|
etcd:
|
|
image: quay.io/coreos/etcd:v3.5.2
|
|
env:
|
|
ETCD_LISTEN_CLIENT_URLS: http://0.0.0.0:2379
|
|
ETCD_ADVERTISE_CLIENT_URLS: http://0.0.0.0:2379
|
|
ports:
|
|
- 2379:2379
|
|
options: >-
|
|
--health-cmd "etcdctl endpoint health"
|
|
--health-interval 10s
|
|
--health-timeout 5s
|
|
--health-retries 5
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v3
|
|
with:
|
|
go-version: "1.25"
|
|
check-latest: true
|
|
cache: true
|
|
- name: Get dependencies
|
|
run: |
|
|
go install github.com/kyoh86/richgo@latest
|
|
go get -v -t -d ./...
|
|
- name: Wait for etcd
|
|
run: |
|
|
timeout 30 bash -c 'until curl -s http://localhost:2379/health; do sleep 1; done'
|
|
- name: Run etcd integration tests
|
|
run: richgo test -v -race ./registry/etcd/...
|
|
env:
|
|
ETCD_ADDRESS: localhost:2379
|
|
IN_TRAVIS_CI: yes
|
|
RICHGO_FORCE_COLOR: 1
|
|
|