File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ name : Benchmarks
2+
3+ on :
4+ schedule :
5+ - cron : " 0 9 * * 1"
6+ workflow_dispatch :
7+
8+ permissions :
9+ contents : read
10+
11+ jobs :
12+ benchmark :
13+ name : Benchmark cimis-cli
14+ runs-on : ubuntu-latest
15+
16+ steps :
17+ - name : Checkout code
18+ uses : actions/checkout@v4
19+
20+ - name : Checkout cimis-tsdb
21+ uses : actions/checkout@v4
22+ with :
23+ repository : dl-alexandre/cimis-tsdb
24+ token : ${{ secrets.GH_PAT }}
25+ path : _deps/cimis-tsdb
26+
27+ - name : Configure git for private repos
28+ run : |
29+ git config --global url."https://${{ secrets.GH_PAT }}@github.com/".insteadOf "https://github.com/"
30+
31+ - name : Set up Go
32+ uses : actions/setup-go@v5
33+ with :
34+ go-version : " 1.25.x"
35+ cache : true
36+
37+ - name : Run benchmark suite
38+ run : |
39+ mkdir -p .artifacts/benchmarks
40+ CGO_ENABLED=1 go test -run '^$' -bench 'Benchmark(Ingest|Query)$' -benchmem -count=3 ./cmd/cimis | tee .artifacts/benchmarks/benchmark.txt
41+
42+ - name : Enforce regression threshold
43+ run : |
44+ ingest=$(grep -E '^BenchmarkIngest' .artifacts/benchmarks/benchmark.txt | tail -n 1 | awk '{print $3}' | sed 's/ns\/op//')
45+ query=$(grep -E '^BenchmarkQuery' .artifacts/benchmarks/benchmark.txt | tail -n 1 | awk '{print $3}' | sed 's/ns\/op//')
46+ test -n "$ingest"
47+ test -n "$query"
48+ [ "$ingest" -le 500000000 ] || (echo "BenchmarkIngest regression: ${ingest}ns/op" && exit 1)
49+ [ "$query" -le 500000000 ] || (echo "BenchmarkQuery regression: ${query}ns/op" && exit 1)
50+
51+ - name : Upload benchmark results
52+ uses : actions/upload-artifact@v4
53+ with :
54+ name : benchmark-results
55+ path : .artifacts/benchmarks/
56+ retention-days : 30
Original file line number Diff line number Diff line change 1+ name : Maintenance
2+
3+ on :
4+ schedule :
5+ - cron : " 0 10 * * 1"
6+ workflow_dispatch :
7+
8+ permissions :
9+ contents : read
10+
11+ jobs :
12+ dependency-drift :
13+ name : Dependency Drift
14+ runs-on : ubuntu-latest
15+
16+ steps :
17+ - name : Checkout code
18+ uses : actions/checkout@v4
19+
20+ - name : Checkout cimis-tsdb
21+ uses : actions/checkout@v4
22+ with :
23+ repository : dl-alexandre/cimis-tsdb
24+ token : ${{ secrets.GH_PAT }}
25+ path : _deps/cimis-tsdb
26+
27+ - name : Configure git for private repos
28+ run : |
29+ git config --global url."https://${{ secrets.GH_PAT }}@github.com/".insteadOf "https://github.com/"
30+
31+ - name : Set up Go
32+ uses : actions/setup-go@v5
33+ with :
34+ go-version : " 1.25.x"
35+ cache : true
36+
37+ - name : Collect dependency update report
38+ run : |
39+ mkdir -p .artifacts/maintenance
40+ go list -u -m all > .artifacts/maintenance/dependency-updates.txt
41+
42+ - name : Upload dependency report
43+ uses : actions/upload-artifact@v4
44+ with :
45+ name : cimis-dependency-updates
46+ path : .artifacts/maintenance/dependency-updates.txt
47+ retention-days : 30
You can’t perform that action at this time.
0 commit comments