@norskvideo/ctl-dev-kit 0.1.89 → 0.1.91

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.
@@ -263,7 +263,16 @@ jobs:
263
263
  env:
264
264
  NORSK_CTL_BINARY: ${{ runner.temp }}/norsk-ctl
265
265
  NORSK_LICENSE_FILE: ${{ runner.temp }}/norsk-license.json
266
+ # Where the harness copies each instance's full engine logs
267
+ # (/var/log/norsk -> debug.json, host-mounted under the store) before
268
+ # teardown nukes them. Uploaded below. `docker logs` only sees the
269
+ # notice+ stdout subset and a decode-error flood can drown its tail;
270
+ # this is the complete structured log at every level.
271
+ NORSK_CI_LOG_DIR: ${{ runner.temp }}/norsk-logs
266
272
  run: |
273
+ # Outer pipefail so the step reports the journey's exit, not tee's --
274
+ # otherwise a failed smoke run over the `| tee` below scores green.
275
+ set -euo pipefail
267
276
  nix develop .#build --command bash -c '
268
277
  set -euo pipefail
269
278
  # A frozen install does not reliably relink a hoisted package whose
@@ -279,7 +288,36 @@ jobs:
279
288
  echo "smoke image: $IMAGE_TAG"
280
289
  bun run build:image
281
290
  SMOKE_IMAGE_TAG="$IMAGE_TAG" bun run test:smoke
282
- '
291
+ ' 2>&1 | tee "$RUNNER_TEMP/smoke.log"
292
+
293
+ # We pretty much always want the Norsk logs from a smoke run: the journey
294
+ # runs the RELEASED media + studio images, and the harness dumps each
295
+ # launched instance's container logs (diagnose hook) into the run output
296
+ # at a failure -- but the containers are gone after teardown, so those
297
+ # internals only survive if the run log is persisted. Upload it so the
298
+ # engine's own log is downloadable, not buried in the step output.
299
+ # always() so a red run keeps its evidence.
300
+ - name: Upload smoke run log
301
+ if: always()
302
+ uses: actions/upload-artifact@v4
303
+ with:
304
+ name: smoke-log-attempt-${{ github.run_attempt }}
305
+ path: ${{ runner.temp }}/smoke.log
306
+ retention-days: 7
307
+
308
+ # The FULL structured engine logs (debug.json et al.), copied off the
309
+ # host store by the harness before teardown -- the actual place a
310
+ # media-node death is recorded, which `docker logs` and its stdout flood
311
+ # cannot show. if-no-files-found: ignore so a green run that wrote nothing
312
+ # here (or a launch that never reached teardown) does not fail the step.
313
+ - name: Upload Norsk engine logs
314
+ if: always()
315
+ uses: actions/upload-artifact@v4
316
+ with:
317
+ name: norsk-engine-logs-attempt-${{ github.run_attempt }}
318
+ path: ${{ runner.temp }}/norsk-logs
319
+ retention-days: 7
320
+ if-no-files-found: ignore
283
321
 
284
322
  # Report this pipeline's result to the aggregated product CI dashboard
285
323
  # (id3as/ci-workflows). !cancelled() so a real pass/fail reports, but a
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@norskvideo/ctl-dev-kit",
3
- "version": "0.1.89",
3
+ "version": "0.1.91",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./create-product": "./create-product/create-product.ts",