@instawp/cli 0.0.1-beta.22 → 0.0.1-beta.24

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/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.0.1-beta.24 (2026-06-23)
4
+
5
+ ### Added — db push prefix-safety, URL remap, sync mirroring & webroot, exec shell
6
+
7
+ These address feedback from a real LocalWP → cloud "mirror overwrite" workflow.
8
+
9
+ - **`db push` now detects a table-prefix mismatch** (e.g. a `wp_` dump pushed to an `iwpa4c7_` site) instead of silently importing orphan tables the site never reads. It warns loudly and offers to rewrite; pass **`--rewrite-prefix`** to remap the dump's table identifiers non-interactively. Rewriting also remaps the prefix-bound role/capability keys (`{prefix}capabilities`, `{prefix}user_level`, `{prefix}user_roles`) after import so admin login survives.
10
+ - **`db push --search-replace <from> <to>`** runs a serialization-safe `wp search-replace` across all tables right after import — the near-universal next step after a cross-domain push.
11
+ - **`instawp wp`/`exec` no longer leak the server login banner/MOTD** into command stdout (or the `--json` payload). Output is now exactly the command's output, so `--field`, `--format=count`, and value capture are clean.
12
+ - **`exec --shell '<cmdline>'`** runs the arguments as one shell command line on the remote (enables pipes, `;`, `>`, globs). The misleading `-- ps aux | grep php` help example (which actually piped locally) is fixed.
13
+ - **`sync push/pull --delete`** makes the remote/local a true mirror (removes extraneous files), guarded by a confirmation prompt (skip with `--yes`; preview with `--dry-run`). Additive remains the default. Not supported on Windows (SFTP transport).
14
+ - **`sync push/pull --remote-path <path>` / `--webroot`** transfer files outside `wp-content/` (e.g. webroot-level `ABSPATH/variations/`).
15
+ - **`versions create`** now echoes the restore/list hint using the same site identifier you typed (no more short-name in, FQDN out).
16
+ - `db push --search-replace` now **skips the `guid` column** (WP best practice — post GUIDs are permanent identifiers, not links); same applied to `local push --with-db`.
17
+ - `db push` success summary prints readable `rewrote_prefix` / `search_replaced` lines (`from -> to`) instead of `[object Object]`.
18
+ - **`exec --stdin`** streams local stdin to the remote command (uploads, restore pipes, `tar … | exec --stdin 'tar xzf -'`) — closes the last gap from the feedback. It passes the command as an ssh argument so stdin is free to stream; the non-login remote shell it uses also means no MOTD on that path.
19
+
20
+ ## 0.0.1-beta.23 (2026-06-15)
21
+
22
+ ### Added — update notifier + `instawp upgrade`
23
+ - The CLI now checks npm for a newer version **at most once a day** (cached in `~/.config/instawp/`) and prints a one-line hint to **stderr** when an update is available — e.g. `⚡ Update available: 0.0.1-beta.22 → beta.23 · run: instawp upgrade`. It's instant on cache hits and only does a short, timeout-bounded network call on the daily refresh.
24
+ - **`instawp upgrade`** (alias `update`) self-updates via `npm i -g @instawp/cli@latest`; `--check` reports without installing.
25
+ - **Never pollutes output or surprises you**: the hint is suppressed in `--json`, `CI`, and non-interactive shells (so harnesses never see it), and it never auto-installs by default. Opt into hands-off updates with `INSTAWP_AUTO_UPGRADE=1`; silence the hint with `INSTAWP_NO_UPDATE_NOTIFIER=1`.
26
+
3
27
  ## 0.0.1-beta.22 (2026-06-15)
4
28
 
5
29
  ### Added — `plugin install`, `sql`, and HTTP-ready `create`
package/README.md CHANGED
@@ -3,9 +3,11 @@
3
3
  Create and manage WordPress sites from the terminal.
4
4
 
5
5
  ```
6
- npm install -g @instawp/cli@beta
6
+ npm install -g @instawp/cli
7
7
  ```
8
8
 
9
+ This installs the latest release. The CLI checks for updates once a day and `instawp upgrade` keeps you current (see [Updating](#updating)).
10
+
9
11
  > **Beta** — early release. Report issues at [github.com/InstaWP/cli/issues](https://github.com/InstaWP/cli/issues).
10
12
 
11
13
  ## What you can do
@@ -248,6 +250,8 @@ instawp wp <site> option get siteurl --json
248
250
  |----------|-------------|
249
251
  | `INSTAWP_TOKEN` | API token — skips `instawp login` |
250
252
  | `INSTAWP_API_URL` | Custom API base URL |
253
+ | `INSTAWP_NO_UPDATE_NOTIFIER` | Silence the once-a-day update hint |
254
+ | `INSTAWP_AUTO_UPGRADE` | Auto-install updates on the daily check (hands-off) |
251
255
 
252
256
  ### CI/CD Example
253
257
 
@@ -264,6 +268,15 @@ instawp wp "pr-$PR_NUMBER" option get siteurl --api
264
268
  instawp sites delete "pr-$PR_NUMBER" --force
265
269
  ```
266
270
 
271
+ ## Updating
272
+
273
+ ```bash
274
+ instawp upgrade # update to the latest version
275
+ instawp upgrade --check # check only; don't install
276
+ ```
277
+
278
+ The CLI checks for a new version **once a day** and prints a one-line hint (to stderr) when one is available. It never auto-installs and never pollutes command output — it's silenced automatically in `--json`, CI, and non-interactive shells. Opt into hands-off updates with `INSTAWP_AUTO_UPGRADE=1`, or silence the hint entirely with `INSTAWP_NO_UPDATE_NOTIFIER=1`.
279
+
267
280
  ## Requirements
268
281
 
269
282
  - Node.js 18+
@@ -8,6 +8,8 @@ import { requireAuth } from '../lib/api.js';
8
8
  import { resolveSite } from '../lib/site-resolver.js';
9
9
  import { ensureSshAccess } from '../lib/ssh-keys.js';
10
10
  import { execViaSsh, execViaSshToFile, scpUpload } from '../lib/ssh-connection.js';
11
+ import { parseTablePrefix } from '../lib/local-instance.js';
12
+ import { detectDumpPrefix, readSqlHead, rewriteDumpPrefix } from '../lib/sql-dump.js';
11
13
  import { success, error, spinner, info, isJsonMode } from '../lib/output.js';
12
14
  /** Timestamp like `2026-05-23T12-34-56` (filename-safe — `:` is illegal on Windows). */
13
15
  function isoTimestamp() {
@@ -28,14 +30,21 @@ function formatBytes(bytes) {
28
30
  async function gunzipFile(src, dest) {
29
31
  await pipeline(createReadStream(src), createGunzip(), createWriteStream(dest));
30
32
  }
31
- async function promptYesNo(question) {
33
+ async function promptYesNo(question, defaultYes = false) {
32
34
  const readline = await import('node:readline');
33
35
  const rl = readline.createInterface({ input: process.stdin, output: process.stdout });
34
36
  const answer = await new Promise((resolve) => {
35
37
  rl.question(question, resolve);
36
38
  });
37
39
  rl.close();
38
- return answer.trim().toLowerCase() === 'y' || answer.trim().toLowerCase() === 'yes';
40
+ const a = answer.trim().toLowerCase();
41
+ if (a === '')
42
+ return defaultYes;
43
+ return a === 'y' || a === 'yes';
44
+ }
45
+ /** True if a URL is a plain http(s) URL safe to embed in a single-quoted shell arg. */
46
+ function isShellSafeUrl(u) {
47
+ return /^https?:\/\/[^\s'"\\$`]+$/.test(u);
39
48
  }
40
49
  export function registerDbCommand(program) {
41
50
  const db = program
@@ -125,12 +134,22 @@ export function registerDbCommand(program) {
125
134
  .description('Push local SQL dump to remote site database (creates a backup first)')
126
135
  .option('--force', 'Skip confirmation prompt')
127
136
  .option('--no-backup', 'Skip taking a remote backup before overwrite (DANGEROUS)')
137
+ .option('--rewrite-prefix', "Rewrite the dump's table prefix to match the remote site's prefix (e.g. wp_ → iwpa4c7_)")
138
+ .option('--search-replace <from-to...>', 'After import, run wp search-replace <from> <to> across all tables (serialization-safe, skips guid). Pass exactly two URLs.')
128
139
  .addHelpText('after', `
129
140
  Notes:
130
141
  - Always takes a remote backup first unless --no-backup is passed.
131
- - After pushing to a site on a different domain, you may want to run:
132
- instawp wp <site> search-replace <old-url> <new-url>
133
- Auto-replacing site URLs is out of scope for this command.
142
+ - Table prefix: if the dump's prefix differs from the remote site's prefix,
143
+ the import would create orphan tables the site never reads. The push detects
144
+ this and offers to rewrite; pass --rewrite-prefix to do it non-interactively
145
+ (also remaps the role/capability keys so admin login survives).
146
+ - URLs: after a cross-domain push, remap URLs with:
147
+ --search-replace <old-url> <new-url>
148
+ (or run 'instawp wp <site> search-replace <old-url> <new-url>' yourself).
149
+
150
+ Examples:
151
+ $ instawp db push my-site dump.sql --rewrite-prefix
152
+ $ instawp db push my-site dump.sql --search-replace http://localhost:10115 https://my-site.instawp.site
134
153
  `)
135
154
  .action(async (siteIdentifier, file, opts) => {
136
155
  requireAuth();
@@ -144,6 +163,21 @@ Notes:
144
163
  error(`File is empty: ${file}`);
145
164
  process.exit(1);
146
165
  }
166
+ // Parse --search-replace (expects exactly two URLs: from, to)
167
+ let srFrom;
168
+ let srTo;
169
+ if (opts.searchReplace !== undefined) {
170
+ const vals = Array.isArray(opts.searchReplace) ? opts.searchReplace : [opts.searchReplace];
171
+ if (vals.length !== 2) {
172
+ error('--search-replace expects exactly two values: <from-url> <to-url>');
173
+ process.exit(1);
174
+ }
175
+ [srFrom, srTo] = vals;
176
+ if (!isShellSafeUrl(srFrom) || !isShellSafeUrl(srTo)) {
177
+ error('--search-replace URLs must be plain http(s) URLs (no spaces, quotes, or shell metacharacters)');
178
+ process.exit(1);
179
+ }
180
+ }
147
181
  // In JSON mode, can't prompt — require --force
148
182
  if (isJsonMode() && !opts.force) {
149
183
  error('--force is required when using --json (cannot prompt for confirmation)');
@@ -197,34 +231,96 @@ Notes:
197
231
  else {
198
232
  info('Skipping backup (--no-backup)');
199
233
  }
234
+ // ---- Local temp tracking (decompressed / prefix-rewritten dumps) ----
235
+ const localTemps = new Set();
236
+ const cleanupLocalTemps = () => {
237
+ for (const f of localTemps) {
238
+ try {
239
+ unlinkSync(f);
240
+ }
241
+ catch { /* ignore */ }
242
+ }
243
+ localTemps.clear();
244
+ };
245
+ const tmpDir = process.env.TMPDIR || '/tmp';
200
246
  // Step 2: Prepare local SQL (gunzip if needed)
201
247
  const isGzipped = file.endsWith('.gz') || file.endsWith('.gzip');
202
248
  let uploadSource = file;
203
- let tempLocalDecompressed = null;
204
249
  if (isGzipped) {
205
250
  const decompressSpin = spinner('Decompressing local dump...');
206
251
  decompressSpin.start();
207
252
  try {
208
- const tmpName = `instawp-db-push-${randomBytes(6).toString('hex')}.sql`;
209
- tempLocalDecompressed = join(process.env.TMPDIR || '/tmp', tmpName);
210
- await gunzipFile(file, tempLocalDecompressed);
211
- uploadSource = tempLocalDecompressed;
253
+ const decompressedPath = join(tmpDir, `instawp-db-push-${randomBytes(6).toString('hex')}.sql`);
254
+ localTemps.add(decompressedPath);
255
+ await gunzipFile(file, decompressedPath);
256
+ uploadSource = decompressedPath;
212
257
  const decompressedSize = statSync(uploadSource).size;
213
258
  decompressSpin.succeed(`Decompressed (${formatBytes(decompressedSize)})`);
214
259
  }
215
260
  catch (err) {
216
261
  decompressSpin.fail('Decompression failed');
217
262
  error(err.message || String(err));
218
- if (tempLocalDecompressed) {
219
- try {
220
- unlinkSync(tempLocalDecompressed);
263
+ cleanupLocalTemps();
264
+ if (takeBackup)
265
+ info(`Remote backup preserved: ~/${backupFilename}`);
266
+ process.exit(1);
267
+ }
268
+ }
269
+ // Step 2b: Table-prefix safety. A dump whose prefix differs from the remote
270
+ // site's prefix imports "successfully" but creates orphan tables the site
271
+ // never reads (exit 0, silent breakage). Detect it, and on request rewrite
272
+ // the dump's identifiers + remap the prefix-bound role keys after import.
273
+ let remapFromPrefix = null; // set when we rewrite — fixes role/cap keys post-import
274
+ let remotePrefix = 'wp_';
275
+ {
276
+ const pfxRes = execViaSsh(conn, `cd ${wpPath} && wp config get table_prefix`);
277
+ remotePrefix = parseTablePrefix(pfxRes.exitCode === 0 ? pfxRes.stdout : '', 'wp_');
278
+ const dumpPrefix = detectDumpPrefix(readSqlHead(uploadSource));
279
+ if (dumpPrefix !== null && dumpPrefix !== remotePrefix) {
280
+ console.log('');
281
+ console.log(chalk.yellow(`⚠ Table-prefix mismatch: dump uses '${dumpPrefix}' but ${conn.domain} uses '${remotePrefix}'.`));
282
+ console.log(chalk.yellow(' Importing as-is would create orphan tables the site never reads.'));
283
+ let doRewrite = opts.rewritePrefix === true;
284
+ if (!doRewrite) {
285
+ if (opts.force) {
286
+ // Non-interactive (or --json): never silently break, but respect --force.
287
+ info("Proceeding without rewrite (pass --rewrite-prefix to remap the dump's prefix).");
288
+ }
289
+ else {
290
+ doRewrite = await promptYesNo(`Rewrite the dump's prefix '${dumpPrefix}' -> '${remotePrefix}' before importing? (Y/n) `, true);
291
+ if (!doRewrite) {
292
+ const proceed = await promptYesNo('Import anyway with the mismatched prefix? (y/N) ', false);
293
+ if (!proceed) {
294
+ info('Cancelled.');
295
+ cleanupLocalTemps();
296
+ return;
297
+ }
298
+ }
221
299
  }
222
- catch { /* ignore */ }
223
300
  }
224
- if (takeBackup) {
225
- info(`Remote backup preserved: ~/${backupFilename}`);
301
+ if (doRewrite) {
302
+ const rwSpin = spinner(`Rewriting dump prefix '${dumpPrefix}' -> '${remotePrefix}'...`);
303
+ rwSpin.start();
304
+ try {
305
+ const rewrittenPath = join(tmpDir, `instawp-db-push-rw-${randomBytes(6).toString('hex')}.sql`);
306
+ localTemps.add(rewrittenPath);
307
+ await rewriteDumpPrefix(uploadSource, rewrittenPath, dumpPrefix, remotePrefix);
308
+ uploadSource = rewrittenPath;
309
+ remapFromPrefix = dumpPrefix;
310
+ rwSpin.succeed('Dump prefix rewritten');
311
+ }
312
+ catch (err) {
313
+ rwSpin.fail('Prefix rewrite failed');
314
+ error(err.message || String(err));
315
+ cleanupLocalTemps();
316
+ if (takeBackup)
317
+ info(`Remote backup preserved: ~/${backupFilename}`);
318
+ process.exit(1);
319
+ }
226
320
  }
227
- process.exit(1);
321
+ }
322
+ else if (dumpPrefix === null && opts.rewritePrefix) {
323
+ info("Could not detect the dump's table prefix — skipping --rewrite-prefix.");
228
324
  }
229
325
  }
230
326
  // Step 3: Upload via scp to /tmp on remote
@@ -235,25 +331,14 @@ Notes:
235
331
  const scpExit = scpUpload(conn, uploadSource, remoteTempPath);
236
332
  if (scpExit !== 0) {
237
333
  uploadSpin.fail(`Upload failed (scp exit ${scpExit})`);
238
- if (tempLocalDecompressed) {
239
- try {
240
- unlinkSync(tempLocalDecompressed);
241
- }
242
- catch { /* ignore */ }
243
- }
244
- if (takeBackup) {
334
+ cleanupLocalTemps();
335
+ if (takeBackup)
245
336
  info(`Remote backup preserved: ~/${backupFilename}`);
246
- }
247
337
  process.exit(1);
248
338
  }
249
339
  uploadSpin.succeed('Upload complete');
250
- // Clean up local temp file (we have it on remote now)
251
- if (tempLocalDecompressed) {
252
- try {
253
- unlinkSync(tempLocalDecompressed);
254
- }
255
- catch { /* ignore */ }
256
- }
340
+ // Clean up local temp files (we have it on remote now)
341
+ cleanupLocalTemps();
257
342
  // Step 4: Import on remote
258
343
  const importSpin = spinner(`Importing database on ${conn.domain}...`);
259
344
  importSpin.start();
@@ -281,6 +366,51 @@ Notes:
281
366
  process.exit(1);
282
367
  }
283
368
  importSpin.succeed('Database imported');
369
+ // Step 4b: If we rewrote the table prefix, the role/capability keys stored
370
+ // in the data still carry the OLD prefix (they're values, not identifiers).
371
+ // Remap them so the admin keeps its capabilities and wp-admin stays usable.
372
+ if (remapFromPrefix && remapFromPrefix !== remotePrefix) {
373
+ const capSpin = spinner('Remapping user roles/capabilities to the remote prefix...');
374
+ capSpin.start();
375
+ const um = `${remotePrefix}usermeta`;
376
+ const opt = `${remotePrefix}options`;
377
+ const stmts = [
378
+ `UPDATE ${um} SET meta_key='${remotePrefix}capabilities' WHERE meta_key='${remapFromPrefix}capabilities'`,
379
+ `UPDATE ${um} SET meta_key='${remotePrefix}user_level' WHERE meta_key='${remapFromPrefix}user_level'`,
380
+ `UPDATE ${opt} SET option_name='${remotePrefix}user_roles' WHERE option_name='${remapFromPrefix}user_roles'`,
381
+ ];
382
+ let capOk = true;
383
+ for (const s of stmts) {
384
+ const r = execViaSsh(conn, `cd ${wpPath} && wp db query "${s}"`);
385
+ if (r.exitCode !== 0) {
386
+ capOk = false;
387
+ if (r.stderr)
388
+ error(r.stderr.trim());
389
+ }
390
+ }
391
+ if (capOk)
392
+ capSpin.succeed('Roles/capabilities remapped');
393
+ else
394
+ capSpin.fail('Could not remap roles/capabilities — wp-admin access may need a manual fix');
395
+ }
396
+ // Step 4c: Optional URL search-replace (serialization-safe, server-side).
397
+ // Skip `guid` — post GUIDs are permanent identifiers, not links, and WP
398
+ // best practice is to never rewrite them on a domain change.
399
+ if (srFrom && srTo) {
400
+ const srSpin = spinner(`Rewriting URLs (${srFrom} -> ${srTo})...`);
401
+ srSpin.start();
402
+ const srRes = execViaSsh(conn, `cd ${wpPath} && wp search-replace '${srFrom}' '${srTo}' --all-tables --skip-columns=guid --report-changed-only`);
403
+ if (srRes.exitCode === 0) {
404
+ srSpin.succeed('URLs rewritten');
405
+ if (!isJsonMode() && srRes.stdout.trim())
406
+ console.log(srRes.stdout.trim());
407
+ }
408
+ else {
409
+ srSpin.fail('URL search-replace failed (DB imported; run it manually if links are wrong)');
410
+ if (srRes.stderr)
411
+ error(srRes.stderr.trim());
412
+ }
413
+ }
284
414
  // Step 5: Cleanup remote temp file
285
415
  const cleanupSpin = spinner('Cleaning up...');
286
416
  cleanupSpin.start();
@@ -296,6 +426,8 @@ Notes:
296
426
  backup_path: takeBackup ? backupRemotePath : null,
297
427
  restored_from: file,
298
428
  size_bytes: localSize,
429
+ rewrote_prefix: remapFromPrefix ? `${remapFromPrefix} -> ${remotePrefix}` : null,
430
+ search_replaced: srFrom && srTo ? `${srFrom} -> ${srTo}` : null,
299
431
  });
300
432
  if (!isJsonMode() && takeBackup) {
301
433
  console.log(`\n ${chalk.dim('Backup:')} ~/${backupFilename} ${chalk.dim('(on remote)')}`);
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/commands/db.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/commands/db.ts"],"names":[],"mappings":"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"}
@@ -1,24 +1,16 @@
1
+ import { randomBytes } from 'node:crypto';
1
2
  import { requireAuth, getClient } from '../lib/api.js';
2
3
  import { resolveSite } from '../lib/site-resolver.js';
3
4
  import { ensureSshAccess } from '../lib/ssh-keys.js';
4
- import { execViaSsh } from '../lib/ssh-connection.js';
5
+ import { execViaSsh, execViaSshStreamStdin } from '../lib/ssh-connection.js';
6
+ import { buildRemoteCommandString, sliceAfterMarker } from '../lib/remote-command.js';
5
7
  import { error, spinner, isJsonMode } from '../lib/output.js';
6
- // POSIX shell single-quote escape: 'safe' becomes 'safe' (passthrough for
7
- // shell-safe chars), anything else wrapped in '...' with embedded ' → '\''.
8
- // Required because the remote shell receives joined args via stdin and would
9
- // otherwise interpret parens, quotes, semicolons, etc. (broke `wp eval '...'`).
10
- function shellQuote(arg) {
11
- if (arg === '')
12
- return "''";
13
- if (/^[a-zA-Z0-9_\-./=:@%+,]+$/.test(arg))
14
- return arg;
15
- return "'" + arg.replace(/'/g, "'\\''") + "'";
16
- }
17
- function joinForRemote(args) {
18
- return args.map(shellQuote).join(' ');
19
- }
20
8
  async function execAction(siteIdentifier, args, opts) {
21
9
  requireAuth();
10
+ if (opts.stdin && opts.api) {
11
+ error('--stdin is only supported with the SSH transport (not --api)');
12
+ process.exit(1);
13
+ }
22
14
  // Drop POSIX `--` end-of-options marker so users can write
23
15
  // instawp wp <site> -- post list --post_type=page
24
16
  // and have everything after `--` reach WP-CLI verbatim.
@@ -38,12 +30,12 @@ async function execAction(siteIdentifier, args, opts) {
38
30
  spin.fail('Site resolution failed');
39
31
  process.exit(1);
40
32
  }
41
- const command = joinForRemote(args);
33
+ const command = buildRemoteCommandString(args, !!opts.shell);
42
34
  if (opts.api) {
43
35
  await execViaApi(site, command, opts);
44
36
  }
45
37
  else {
46
- await execViaSshTransport(site, command);
38
+ await execViaSshTransport(site, command, { streamStdin: !!opts.stdin });
47
39
  }
48
40
  }
49
41
  async function execViaApi(site, command, opts) {
@@ -91,27 +83,49 @@ async function execViaApi(site, command, opts) {
91
83
  process.exit(1);
92
84
  }
93
85
  }
94
- async function execViaSshTransport(site, command) {
86
+ async function execViaSshTransport(site, command, opts = {}) {
95
87
  const conn = await ensureSshAccess(site.id);
96
88
  // Auto-cd into WordPress root so wp-cli and other tools work out of the box
97
89
  const wpRoot = conn.domain
98
90
  ? `/home/${conn.username}/web/${conn.domain}/public_html`
99
91
  : '';
100
- const fullCmd = wpRoot ? `cd ${wpRoot} && ${command}` : command;
101
- const result = execViaSsh(conn, fullCmd);
92
+ const base = wpRoot ? `cd ${wpRoot} && ${command}` : command;
93
+ // --stdin: stream local stdin to the remote command (uploads, restore pipes,
94
+ // `tar … | … 'tar xzf -'`). Passes the command as an ssh arg so stdin is free;
95
+ // the non-login remote shell also means no MOTD, so no marker stripping needed.
96
+ if (opts.streamStdin) {
97
+ const capture = isJsonMode();
98
+ const result = execViaSshStreamStdin(conn, base, capture);
99
+ if (isJsonMode()) {
100
+ console.log(JSON.stringify({
101
+ success: result.exitCode === 0,
102
+ data: { stdout: result.stdout, stderr: result.stderr, exit_code: result.exitCode },
103
+ }));
104
+ }
105
+ // In text mode stdout/stderr were inherited (already streamed live).
106
+ process.exit(result.exitCode);
107
+ }
108
+ // The remote login shell prepends a banner/MOTD to stdout on a cold (cold/idle)
109
+ // connection, which pollutes value capture (`--field`, `--format=count`) and
110
+ // the `--json` payload. Emit a unique marker before the real command, then
111
+ // slice stdout after it so only the command's own output is returned. Exit
112
+ // code is unaffected (the marker printf is a separate statement before `base`).
113
+ const marker = `__IWP_OUT_${randomBytes(6).toString('hex')}__`;
114
+ const result = execViaSsh(conn, `printf '%s\\n' '${marker}'; ${base}`);
115
+ const stdout = sliceAfterMarker(result.stdout, marker);
102
116
  if (isJsonMode()) {
103
117
  console.log(JSON.stringify({
104
118
  success: result.exitCode === 0,
105
119
  data: {
106
- stdout: result.stdout,
120
+ stdout,
107
121
  stderr: result.stderr,
108
122
  exit_code: result.exitCode,
109
123
  },
110
124
  }));
111
125
  }
112
126
  else {
113
- if (result.stdout)
114
- process.stdout.write(result.stdout);
127
+ if (stdout)
128
+ process.stdout.write(stdout);
115
129
  if (result.stderr)
116
130
  process.stderr.write(result.stderr);
117
131
  }
@@ -124,25 +138,39 @@ export function registerExecCommand(program) {
124
138
  .passThroughOptions()
125
139
  .allowUnknownOption()
126
140
  .option('--api', 'Use API transport instead of SSH')
141
+ .option('--shell', 'Run the args as one shell command line on the remote (enables pipes, ;, >, globs)')
142
+ .option('--stdin', 'Stream local stdin to the remote command (for uploads / restore pipes; SSH only)')
127
143
  .option('--timeout <seconds>', 'Command timeout in seconds (API mode only)', '30')
128
144
  .addHelpText('after', `
129
145
  Examples:
130
146
  $ instawp exec my-site ls -la
131
- $ instawp exec my-site -- ps aux | grep php # use -- to forward raw args
147
+ $ instawp exec my-site -- tail -n 50 wp-content/debug.log
148
+ $ instawp exec my-site --shell 'ps aux | grep php' # --shell runs the whole line on the remote
149
+ $ printf 'data' | instawp exec my-site --stdin --shell 'cat > /tmp/f' # --stdin pipes stdin to the remote
132
150
  $ instawp exec my-site php -v --api
151
+
152
+ Note: shell metacharacters (| ; > globs) are NOT interpreted by default — each
153
+ arg is sent as one literal token. Use --shell (or '-- bash -lc "..."') to run a
154
+ pipeline or compound command on the remote.
133
155
  `)
134
156
  .action(async (siteIdentifier, args, opts) => {
135
- // passThroughOptions may swallow --api/--timeout into args — extract them
157
+ // passThroughOptions may swallow --api/--shell/--stdin/--timeout into args — extract them
136
158
  const extractedApi = args.includes('--api');
159
+ const extractedShell = args.includes('--shell');
160
+ const extractedStdin = args.includes('--stdin');
137
161
  const timeoutIdx = args.indexOf('--timeout');
138
162
  let extractedTimeout;
139
163
  if (timeoutIdx !== -1 && args[timeoutIdx + 1]) {
140
164
  extractedTimeout = args[timeoutIdx + 1];
141
165
  args = args.filter((_, i) => i !== timeoutIdx && i !== timeoutIdx + 1);
142
166
  }
143
- args = args.filter(a => a !== '--api');
167
+ args = args.filter(a => a !== '--api' && a !== '--shell' && a !== '--stdin');
144
168
  if (extractedApi)
145
169
  opts.api = true;
170
+ if (extractedShell)
171
+ opts.shell = true;
172
+ if (extractedStdin)
173
+ opts.stdin = true;
146
174
  if (extractedTimeout)
147
175
  opts.timeout = extractedTimeout;
148
176
  await execAction(siteIdentifier, args, opts);
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/commands/exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../src/commands/exec.ts"],"names":[],"mappings":"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"}
@@ -890,7 +890,7 @@ async function pushDatabase(instance, site, conn, opts) {
890
890
  if (isShellSafeUrl(fromUrl) && isShellSafeUrl(toUrl)) {
891
891
  const srSpin = spinner(`Rewriting URLs (${fromUrl} → ${toUrl})...`);
892
892
  srSpin.start();
893
- const srRes = execViaSsh(conn, `cd ${wpPath} && wp search-replace '${fromUrl}' '${toUrl}' --all-tables --report-changed-only`);
893
+ const srRes = execViaSsh(conn, `cd ${wpPath} && wp search-replace '${fromUrl}' '${toUrl}' --all-tables --skip-columns=guid --report-changed-only`);
894
894
  if (srRes.exitCode !== 0) {
895
895
  srSpin.fail('URL rewrite failed (DB imported; run search-replace manually if links are wrong)');
896
896
  if (srRes.stderr)