turnout-cli 0.21.0 → 0.23.0

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.
Files changed (2) hide show
  1. package/README.md +30 -23
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -23,7 +23,7 @@ Point an app at a stand:
23
23
  $ turnout use web staging
24
24
  'web' now uses 'staging'.
25
25
  The running gateway picks this up automatically.
26
- Stand check: https://staging.example.com responded with 200 OK.
26
+ 'staging' is up: https://staging.example.com/health answered 200 in 84 ms.
27
27
  ```
28
28
 
29
29
  Nothing in the project changed - the app still talks to `localhost`, and the [gateway](https://lacodda.github.io/turnout/concepts/gateway/) routes it to the stand you picked. Your session survives the switch, because cookies are kept per app **and** stand.
@@ -79,24 +79,26 @@ And see what has been going on:
79
79
 
80
80
  ```console
81
81
  $ turnout status
82
- turnout 0.21.0
83
- Data directory: ~/.local/share/lacodda/turnout
84
- Apps: 2 (api, web)
85
- Servers: 2 (prod-eu, staging)
86
- Group: contour (web, api)
87
- Creds: 1 (prod-deploy)
88
- Paths: 1 (wwwroot)
89
- Targets: 1 (web-prod-eu)
90
- Bindings:
91
- api -> staging
92
- web -> prod-eu
93
- Gateway: running (pid 24180)
94
- Front: http://localhost - http://NAME.localhost
95
- Spare: web:7100 -> VITE_API_URL, api:7101 -> TURNOUT_GATEWAY_URL
96
- Jobs: 2 running (api dev, web dev) - see `turnout ps`
97
- Recent:
98
- 2026-08-09T01:15:02Z deploy web -> prod-eu (142 files)
99
- 2026-08-09T01:12:44Z use web -> prod-eu
82
+ turnout 0.23.0 ~/.local/share/lacodda/turnout
83
+
84
+ Apps
85
+ api -> staging http://api.localhost spare :7101 (TURNOUT_GATEWAY_URL)
86
+ web -> prod-eu http://web.localhost spare :7100 (VITE_API_URL)
87
+
88
+ Gateway running · pid 24180 · up 2h 05m
89
+ front door http://localhost
90
+ ! 'staging' answers 502 - the stand is down, not the app (3m)
91
+
92
+ Jobs 2 running - `turnout ps` shows the rest
93
+ api dev ready 9m http://api.localhost
94
+ web dev ready 14m http://web.localhost
95
+
96
+ Recent
97
+ 3m ago deploy web -> prod-eu (142 files)
98
+ 6m ago use web -> prod-eu
99
+
100
+ $ turnout status --short
101
+ prod-eu · gw ok · 2 dev
100
102
  ```
101
103
 
102
104
  ## What you get
@@ -116,6 +118,9 @@ Recent:
116
118
  - **Deploy over SSH/SFTP** - build, upload, restart, with remote backup and restore when a release goes wrong. Artifacts travel as a single archive instead of thousands of round trips, falling back to file-by-file when the server cannot unpack one. Linux and Windows servers alike: turnout detects which shell answers SSH and phrases every remote command in it.
117
119
  - **Portable settings.** `export` writes your apps, servers, credentials, paths, targets and groups to one file and `import` merges it on another machine; secrets come along only when you ask, sealed with a passphrase.
118
120
  - **Stays current.** A once-a-day check mentions a new release without ever delaying a command, and `self-update` installs it - leaving package-manager installs to their package manager.
121
+ - **One window onto it all.** `status` shows where every app points, the gateway, running jobs and the latest actions, with clickable addresses; `status --short` puts `prod · gw ok · 2 dev` into a starship or tmux line; `use -` goes back to the stand before. Every command that reports takes `--json`.
122
+ - **A gateway that speaks up.** A stand answering 502 or a session the stand refused shows in `status` and the prompt line, and once on the desktop - not as a mystery in your app. Stands behind single sign-on get their browser session handed over with `turnout cookie set`.
123
+ - **A doctor.** `turnout doctor` answers "why does it not work": a dev server left on the app's port, a dotenv file naming an old port, a stand that is down, a session that lapsed overnight, a tool missing from PATH - each with its fix, and `--fix` repairs what is turnout's to repair. `doctor --server prod` says where a deploy would stop, before it starts.
119
124
  - **Groups.** Bind a whole contour to one stand with a single `use`.
120
125
  - **Nothing to memorize.** Leave a name out and pick it from a list; in bash, Tab completes app, server, credential, path and group names from your own catalogs. The short alias `tn` is installed alongside.
121
126
  - **An action journal.** Every state change appends one JSON line - what happened and to which entities, never secrets or output. `tail`, `grep` and `jq` work on it directly.
@@ -178,10 +183,12 @@ Full command reference and concepts: **[lacodda.github.io/turnout](https://lacod
178
183
 
179
184
  ## Status
180
185
 
181
- v0.21.0, in daily use. Everything above works today: stands and switching
182
- between them, the gateway, secrets in the OS keyring, the quiet console, jobs
183
- in the background with `ps`, `logs`, `stop` and a notification when they are
184
- done, and build and deploy from any directory. What landed in each version:
186
+ v0.23.0, in daily use. Everything above works today: stands and switching
187
+ between them, the gateway and what it notices about them, secrets in the OS
188
+ keyring, the quiet console, jobs in the background with a notification when
189
+ they are done, `status` for a person, a prompt and a script, `doctor` for the
190
+ day something does not work, and build and deploy from any directory. What
191
+ landed in each version:
185
192
  [the Releases page](https://github.com/lacodda/turnout/releases).
186
193
 
187
194
  ## Documentation
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "turnout-cli",
3
- "version": "0.21.0",
3
+ "version": "0.23.0",
4
4
  "turnout": {
5
- "binary": "v0.21.0"
5
+ "binary": "v0.23.0"
6
6
  },
7
7
  "description": "A developer's switchyard: point local apps at any backend stand, keep servers and secrets at hand, build and deploy from any directory",
8
8
  "license": "MIT",