turnout-cli 0.22.0 → 0.24.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 +10 -6
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -69,7 +69,8 @@ $ turnout deploy web-prod-eu -b
69
69
  ✓ Backup 20260809-011500.tar.gz created in /var/www/web.backups
70
70
  ================> 2.02 MiB/3.11 MiB · 1.81 MiB/s · eta 1s assets/index-b3f0a1.js
71
71
  Uploaded 142 files (3.11 MiB) to prod-eu:/var/www/web
72
- ✓ Ran: systemctl restart web
72
+ ✓ Restarted: systemctl restart web
73
+ ✓ Healthy: GET https://prod-eu.example.com/health - 200 in 38 ms
73
74
  Deploy of 'web' to 'prod-eu' finished.
74
75
  ```
75
76
 
@@ -79,7 +80,7 @@ And see what has been going on:
79
80
 
80
81
  ```console
81
82
  $ turnout status
82
- turnout 0.22.0 ~/.local/share/lacodda/turnout
83
+ turnout 0.24.0 ~/.local/share/lacodda/turnout
83
84
 
84
85
  Apps
85
86
  api -> staging http://api.localhost spare :7101 (TURNOUT_GATEWAY_URL)
@@ -115,11 +116,13 @@ prod-eu · gw ok · 2 dev
115
116
  - **A quiet console.** A build shows a loader and its elapsed time, not two minutes of scrollback; a dev server goes quiet once it reports itself and speaks again only when something breaks. A failure prints its output on the spot - no re-run to see what went wrong - and every job's output is kept in a log file whatever the terminal showed. `-v` gives you all of it, and so does any pipe, so scripts and CI logs are unchanged.
116
117
  - **Jobs in the background.** `turnout dev --detach` gives the terminal back and the server keeps running; so do `build`, `run` and `deploy`. When one is done, a desktop notification says so and opens the page, the stand or the log of the failure. `turnout ps` shows everything turnout runs, `logs -f` follows any of it, and `stop` takes a job down with every process it started.
117
118
  - **A hand on the server.** `turnout ssh web-prod` opens a session with host, port, user and key from the catalogs, in the deploy directory, the password already on the clipboard; `turnout exec web-prod -- docker compose ps` runs one command there and hands back its exit code.
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.
119
+ - **Deploy over SSH/SFTP** - build, upload, restart, with remote backup and restore. Artifacts travel as a single archive instead of thousands of round trips. Linux and Windows servers alike: turnout detects which shell answers SSH and phrases every remote command in it.
120
+ - **A deploy that checks itself.** Give a target a health check and a deploy asks the stand after the restart - and rolls it back when it does not answer. `--diff` shows what would change before anything is written; `deploy web-stage web-prod` ships one build to both; a long restart survives a dropped connection.
119
121
  - **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.
120
122
  - **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
123
  - **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
124
  - **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`.
125
+ - **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.
123
126
  - **Groups.** Bind a whole contour to one stand with a single `use`.
124
127
  - **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.
125
128
  - **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.
@@ -182,11 +185,12 @@ Full command reference and concepts: **[lacodda.github.io/turnout](https://lacod
182
185
 
183
186
  ## Status
184
187
 
185
- v0.22.0, in daily use. Everything above works today: stands and switching
188
+ v0.24.0, in daily use. Everything above works today: stands and switching
186
189
  between them, the gateway and what it notices about them, secrets in the OS
187
190
  keyring, the quiet console, jobs in the background with a notification when
188
- they are done, `status` for a person, a prompt and a script, and build and
189
- deploy from any directory. What landed in each version:
191
+ they are done, `status` for a person, a prompt and a script, `doctor` for the
192
+ day something does not work, and build and deploy from any directory - checked
193
+ and rolled back when it fails. What landed in each version:
190
194
  [the Releases page](https://github.com/lacodda/turnout/releases).
191
195
 
192
196
  ## Documentation
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "turnout-cli",
3
- "version": "0.22.0",
3
+ "version": "0.24.0",
4
4
  "turnout": {
5
- "binary": "v0.22.0"
5
+ "binary": "v0.24.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",