You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .goreleaser.yaml
+18-3Lines changed: 18 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -1,9 +1,11 @@
1
+
version: 2
1
2
before:
2
3
hooks:
3
4
- go mod tidy
4
5
builds:
5
6
- env:
6
7
- CGO_ENABLED=1
8
+
- CC=x86_64-linux-musl-gcc
7
9
goos:
8
10
- linux
9
11
goarch:
@@ -34,6 +36,19 @@ builds:
34
36
main: ./tools/archive-manager
35
37
tags:
36
38
- static_build
39
+
- env:
40
+
- CGO_ENABLED=0
41
+
goos:
42
+
- linux
43
+
goarch:
44
+
- amd64
45
+
goamd64:
46
+
- v3
47
+
id: "archive-migration"
48
+
binary: archive-migration
49
+
main: ./tools/archive-migration
50
+
tags:
51
+
- static_build
37
52
- env:
38
53
- CGO_ENABLED=0
39
54
goos:
@@ -48,7 +63,7 @@ builds:
48
63
tags:
49
64
- static_build
50
65
archives:
51
-
- format: tar.gz
66
+
- formats: tar.gz
52
67
# this name template makes the OS and Arch compatible with the results of uname.
53
68
name_template: >-
54
69
{{ .ProjectName }}_
@@ -59,7 +74,7 @@ archives:
59
74
checksum:
60
75
name_template: "checksums.txt"
61
76
snapshot:
62
-
name_template: "{{ incpatch .Version }}-next"
77
+
version_template: "{{ incpatch .Version }}-next"
63
78
changelog:
64
79
sort: asc
65
80
filters:
@@ -87,7 +102,7 @@ changelog:
87
102
release:
88
103
draft: false
89
104
footer: |
90
-
Supports job archive version 2 and database version 8.
105
+
Supports job archive version 3 and database version 11.
91
106
Please check out the [Release Notes](https://github.com/ClusterCockpit/cc-backend/blob/master/ReleaseNotes.md) for further details on breaking changes.
- NATS API mirrors REST API functionality but uses messaging
295
-
- Job start/stop events are processed asynchronously
310
+
- Job start/stop events are processed asynchronously via configurable worker pools
296
311
- Duplicate job detection is handled (same as REST API)
297
312
- All validation rules from REST API apply
313
+
- Node state updates include health checks against the metric store (identical to REST handler): nodes are grouped by subcluster, metric configurations are fetched, and `HealthCheck()` is called per subcluster. Nodes default to `MonitoringStateFailed` if no health data is available.
298
314
- Messages are logged; no responses are sent back to publishers
299
315
- If NATS client is unavailable, API subscriptions are skipped (logged as warning)
300
316
317
+
## Development Guidelines
318
+
319
+
### Performance
320
+
321
+
This application processes large volumes of HPC monitoring data (metrics, job
322
+
records, archives) at scale. All code changes must prioritize maximum throughput
323
+
and minimal latency. Avoid unnecessary allocations, prefer streaming over
324
+
buffering, and be mindful of lock contention. When in doubt, benchmark.
325
+
326
+
### Change Impact Analysis
327
+
328
+
For any significant change, you MUST:
329
+
330
+
1.**Check all call paths**: Trace every caller of modified functions to ensure
331
+
correctness is preserved throughout the call chain.
332
+
2.**Evaluate side effects**: Identify and verify all side effects — database
0 commit comments