@mark1russell7/harness 0.12.1 → 0.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/build/index.js +7 -1
- package/build/index.js.map +1 -1
- package/image/grpc-go/main.go +28 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -203,6 +203,7 @@ From 0.11.20, the harness builds each image with the CLI of Docker (`docker buil
|
|
|
203
203
|
- It serves `grpc.health.v1.Health`. A check of the service `hold:<ms>` holds its reply for that time, and Watch holds a stream open. It writes JSON lines on the monotonic clock (`Target.lines`).
|
|
204
204
|
- At SIGTERM, it writes `stopping`, and GracefulStop closes its listener and sends GOAWAY on each connection.
|
|
205
205
|
- From 0.11.26, `--name` gives a name to each line (`p`) and to each reply of Check (the header `x-pod`), and `--clock ms` gives `t` in milliseconds. A kind cell of `@mark1russell7/kind` uses both.
|
|
206
|
+
- From 0.12.2, `--fail-file PATH` adds the service `liveness`, the seam of a liveness restart. Check of `liveness` answers NOT_SERVING while the file at PATH exists, and each such reply writes a `not-serving` line. Check of the service `""` still answers SERVING. Without the flag, the server does not change.
|
|
206
207
|
- **The etcd image** (`image/etcd`) is etcd v3.6.15 on a digest-pinned Alpine. The binaries come unchanged from the image of etcd, pinned by digest. That image has no shell, and a cell holds the server as the child of a shell. A target takes it as the image of a subject: `{ kind: "shipped", name: "etcd" }`.
|
|
207
208
|
- **The MongoDB client image** (`image/mongo`) is the driver mongodb 7.7.0 on Node 24.21.0. The digest of the image and an npm lockfile pin them. `client-mongo.mjs` prints the lines of the TCP client on the same clock:
|
|
208
209
|
- Each socket of the driver is a `socket` line with its role: `monitor`, `rtt` or `pool`. The stack of the call that makes the socket gives the role.
|
package/build/index.js
CHANGED
|
@@ -2150,7 +2150,13 @@ const lines = (also) => {
|
|
|
2150
2150
|
if (text.length > 0) other.push(text);
|
|
2151
2151
|
return;
|
|
2152
2152
|
}
|
|
2153
|
-
|
|
2153
|
+
let line;
|
|
2154
|
+
try {
|
|
2155
|
+
line = JSON.parse(text);
|
|
2156
|
+
} catch {
|
|
2157
|
+
other.push(text);
|
|
2158
|
+
return;
|
|
2159
|
+
}
|
|
2154
2160
|
seen.push(line);
|
|
2155
2161
|
also?.(line);
|
|
2156
2162
|
for (const wait of waiting.splice(0)) if (wait.kinds.includes(line.ev)) wait.resolve(line);
|