kylon-cli 0.3.9-next.688 → 0.3.9-next.691

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 CHANGED
@@ -121,20 +121,40 @@ The setting controls future automatic requests only. Turning it off does not
121
121
  cancel an upgrade whose drain has already started, and manual upgrades remain
122
122
  available.
123
123
 
124
- To upgrade manually:
124
+ To upgrade manually, run the one upgrade command:
125
125
 
126
126
  ```bash
127
- npx --yes kylon-cli@latest gateway service upgrade
127
+ kylon upgrade
128
128
  ```
129
129
 
130
- (`@next` on dev.) The daemon and the pinned agent `kylon` both run the
131
- installed bundle under `~/.kylon/bin`, which only this command (or a fresh
132
- `agent link`) refreshes: the freshly-resolved CLI installs its own bundle and
133
- drain-restarts the running daemon onto it, moving both in lockstep.
134
- `npm install -g` alone updates the operator's terminal binary and leaves the
135
- runtime service on the old build. The update notice the CLI prints for local
136
- runtimes uses exactly this command; `kylon gateway service repair` is the same
137
- reconciliation under its recovery-oriented name.
130
+ It resolves the newest build on the channel this installation tracks
131
+ (`latest` in production, `next` on dev), compares it with the **installed**
132
+ bundle's recorded version, and picks the owner for the host's layout: on a
133
+ gateway host the drained service upgrade described below, on a
134
+ credential-only host the daemon-guarded self-pin, and on a host with only an
135
+ npm global the `npm install -g` hint (that copy stays the operator's own).
136
+ When the installed `kylon` is too old to know the command, or is not on PATH,
137
+ spell the same thing through npx — `npx --yes kylon-cli@latest upgrade`
138
+ (`@next` on dev) — and the freshly-resolved copy performs the install itself
139
+ rather than downloading itself a second time. `--force` skips the drain (see
140
+ the interrupts below). This is the command the CLI's update notice, `kylon
141
+ gateway status`, and the unknown-command hint all print for managed installs.
142
+
143
+ The mechanism underneath is `gateway service upgrade`:
144
+
145
+ ```bash
146
+ npx --yes kylon-cli@<exact version> gateway service upgrade
147
+ ```
148
+
149
+ It installs the running copy's *own* bundle under `~/.kylon/bin` and
150
+ drain-restarts the daemon onto it, moving the daemon and the pinned agent
151
+ `kylon` in lockstep — so it must be run by the target version, which is why
152
+ it is spelled through `npx` with an exact version. Reach for it directly only
153
+ when an exact version matters; the workspace's update notice, the remote
154
+ upgrade button, and automatic updates all resolve to it with the exact version
155
+ they want. `npm install -g` alone updates the operator's terminal binary and
156
+ leaves the runtime service on the old build. `kylon gateway service repair`
157
+ is the same reconciliation under its recovery-oriented name.
138
158
 
139
159
  `repair` goes one step further than `upgrade`: after reconciling the Kylon
140
160
  side it installs any provider CLI this machine's placements need but do not
@@ -156,8 +176,8 @@ The drain waits up to five minutes for in-flight agent work, and a drain that
156
176
  exhausts its window rolls the upgrade back — so a persistently busy host would
157
177
  never upgrade without an operator interrupt. Two are available:
158
178
 
159
- - `kylon gateway service upgrade --force` skips the drain, or escalates one
160
- already in progress: in-flight assignments are aborted with the same
179
+ - `kylon upgrade --force` (or `kylon gateway service upgrade --force`) skips
180
+ the drain, or escalates one already in progress: in-flight assignments are aborted with the same
161
181
  recovery semantics as a daemon crash (the durable inbox re-drives
162
182
  interrupted work on the restarted daemon), and the new version activates
163
183
  immediately.
@@ -658,7 +678,9 @@ npm dist-tag add kylon-cli@<last-good> latest # move the channel back
658
678
  npm deprecate kylon-cli@<bad> "Broken release — use <last-good>."
659
679
  ```
660
680
 
661
- Operators on `@latest` pick up the re-pointed version the next time they run
662
- `npx --yes kylon-cli@latest gateway service upgrade` (the command the update
663
- notice prints for local runtimes); in-flight daemons keep their current pinned
664
- bundle until that drain-restart. Do not `npm unpublish`.
681
+ Re-pointing the tag stops the bad build from spreading: hosts that have not
682
+ upgraded yet resolve `<last-good>` on their next `kylon upgrade` or automatic
683
+ update. It does not walk a host back that already runs `<bad>` — the install's
684
+ direction guard keeps a newer installed bundle over an older invoked copy, and
685
+ `kylon upgrade` reports such a host as already current — so the way back for
686
+ those hosts is publishing a fixed, higher version. Do not `npm unpublish`.
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.3.9-next.688",
3
- "fingerprint": "c786222ec89bf52b3804fa7a63dbf2f0e243e880b0fbc2b8b12065eb5d9f8bf0",
4
- "source_commit": "c567347fd5dd361b38aa1f3c5316dfc3481bb96e"
2
+ "version": "0.3.9-next.691",
3
+ "fingerprint": "5a7cc86b8ad5a9f2ca1635d520c5732efa2c57e8cfd4795c16674a20c79bff55",
4
+ "source_commit": "70d75f85002e3433f31fec33ee3ff5724f74b1bb"
5
5
  }