@norskvideo/ctl-dev-kit 0.2.20 → 0.2.22
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.
|
@@ -76,9 +76,25 @@ On 2026-10-02 a reuters tier and a commentary tier each `compose up`ed
|
|
|
76
76
|
older text here and in the reap steps that names a fixed 14321 is stale. Two
|
|
77
77
|
concurrent runs of the SAME product that both `product add --image` still
|
|
78
78
|
collide on the name.
|
|
79
|
-
-
|
|
80
|
-
|
|
81
|
-
in
|
|
79
|
+
- The daemon's port and its nginx proxy's host port are assigned by the system
|
|
80
|
+
when the ctl under test advertises the `ephemeral-ports` daemon capability
|
|
81
|
+
(`norsk-ctl capabilities`, or `daemonCapabilities` in `/api/health`). The
|
|
82
|
+
harness then starts the daemon with `NORSK_CTL_PORT=0` and `init --proxy-port
|
|
83
|
+
0`: the kernel picks the daemon's port, docker picks the proxy's host port
|
|
84
|
+
(nginx listens on 443 inside the container), and the daemon publishes both as
|
|
85
|
+
`<store>/daemon.port` and `<store>/proxy.port` (also `/api/proxy/status`).
|
|
86
|
+
Neither can collide. `runProductSmoke`, `runDemo`, `demo check --export-only`
|
|
87
|
+
and the dev-loop do this on their own. A `ProductHarness` you construct does
|
|
88
|
+
it only with `ephemeralPorts: true`, because your harness most likely keeps
|
|
89
|
+
its own `demoPorts(slug)` copy: switch every daemon/proxy port you read to
|
|
90
|
+
`harness.ports` (or `session.proxyBase`) first, then turn it on.
|
|
91
|
+
- Against a ctl without the capability (the released `latest` until it catches
|
|
92
|
+
up) both stay on the slug's band (`daemon`, `daemon+3`), exactly as before,
|
|
93
|
+
and can still collide.
|
|
94
|
+
- Still banded either way: the studio host port a launch publishes
|
|
95
|
+
(`daemon+2`, and `daemon+3+n` for further launches), and the dev backend's
|
|
96
|
+
port (bound inside the runner container, so not shared). In `direct` reach
|
|
97
|
+
mode with `--internal-only` the studio port is not published at all.
|
|
82
98
|
|
|
83
99
|
## Reaching an image product's control plane
|
|
84
100
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@norskvideo/ctl-dev-kit",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.22",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
"./create-product": "./create-product/create-product.ts",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@norskvideo/ctl-oas-to-ts": "^0.1.0",
|
|
38
|
-
"@norskvideo/norsk-sdk": "1.3.1-2026-
|
|
38
|
+
"@norskvideo/norsk-sdk": "1.3.1-2026-10-01-e9467b05",
|
|
39
39
|
"@norskvideo/norsk-studio": "1.30.0-2026-09-28-b92e8139",
|
|
40
40
|
"@norskvideo/norsk-studio-builder": "1.30.0-2026-09-28-b92e8139",
|
|
41
41
|
"@norskvideo/norsk-studio-built-ins": "1.30.0-2026-09-28-b92e8139",
|