Files
Grzegorz Wierzowiecki b9dde90cc6 Auto power-on after resize and interactive disk resize option (#50)
* Auto power-on after resize and add 'nodisk' confirmation option

DigitalOcean leaves droplets powered off after resize, with no API flag
to auto-restart.  Previously, `dropkit resize` completed silently with
the droplet off — users had to discover this and run `dropkit on`
manually.

Now the resize command:

1. Automatically powers the droplet back on after resize completes,
   using the same pattern as `dropkit on` (with status polling and
   progress messages).

2. Offers a "nodisk" answer in the confirmation prompt when disk resize
   would increase disk size.  This supports the common workflow of
   temporarily scaling up CPU/RAM for heavy builds or benchmarks and
   scaling back down later — which requires NOT resizing the disk
   (disk resize is permanent and prevents future downsizing).

   The prompt changes from:
     Are you sure? [yes/no]
   to:
     Are you sure? [yes/nodisk/no]

   with a tip explaining the option.  The "nodisk" choice only appears
   when relevant (disk flag is true AND new size has larger disk).

Expected terminal experience after resize:

  ✓ Resize completed successfully

  Powering on droplet...
  ✓ Power on action started (ID: 3105287233)
  Waiting for droplet to power on...
  ✓ Droplet powered on successfully

  Droplet claude-code-box has been resized to s-2vcpu-4gb and is now active

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Make disk resize an interactive option when not specified via flag

Per reviewer feedback, instead of a "nodisk" escape hatch in the
confirmation prompt, make --disk/--no-disk a tri-state (True/False/None).
When neither flag is passed, the user is asked interactively — consistent
with how region, size, and image are already handled.

The interactive question only appears when the new size has a different
disk size.  It defaults to "no" (skip disk resize) since disk resize
is permanent and prevents future downsizing.

Flow with no flags:
  Changes:
    Disk:  25 GB → 80 GB (+55 GB)

  Disk resize is PERMANENT and cannot be undone.
  Skipping disk resize keeps the option to downsize later.
  Resize disk too? [yes/no] (no):

Flow with --no-disk: skips the question, shows "not resized"
Flow with --disk: skips the question, proceeds with disk resize

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Move interactive disk question before table display and drop isinstance guards

Address ret2libc's review feedback:
- Ask the interactive disk question BEFORE building the changes table,
  so the displayed disk row reflects the user's actual choice
- Remove unnecessary isinstance(disk_diff, int) guards since disk_diff
  is always int (computed with an isinstance ternary that defaults to 0)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 15:24:25 +02:00
..
2026-01-29 21:53:58 -05:00
2026-01-29 21:53:58 -05:00
2026-01-29 21:53:58 -05:00
2026-01-29 21:53:58 -05:00
2026-01-29 21:53:58 -05:00