Files
recipe-maintainer/.claude/commands/t1cc-stop.md
T
autonomic-bot f283a371bb recipe-maintainer: public snapshot (secrets + deployment plans removed, single commit)
Sanitized single-commit public mirror of recipe-maintainer.
- Removed test-ssh/.testenv (live creds); added test-ssh/.testenv.example placeholders.
- Removed plans/ and planned-updates/ (deployment-planning docs) so no client/
  deployment domains appear in the public repo.
- All other secret stores were already gitignored.
- docs.coopcloud.tech retained as a submodule (public upstream).
2026-06-16 20:18:24 +00:00

2.2 KiB
Raw Blame History

description, allowed-tools
description allowed-tools
Destroy the t1cc DigitalOcean test server via terraform
Bash
Read
Glob
Grep

t1cc-stop

Destroy the t1cc DigitalOcean droplet using terraform destroy. The reserved IP is preserved — DNS stays pointed at it and the next /t1cc-start will reuse the same IP.

Read and follow the instructions in .claude/commands/includes/logging.md.

Steps

1. Check terraform state

Verify there is something to destroy:

cd /workspace/terraform && terraform show -json 2>/dev/null | python3 -c "import sys,json; d=json.load(sys.stdin); rs=d.get('values',{}).get('root_module',{}).get('resources',[]); print('resources:', len(rs))"

If there are 0 resources, tell the user the server is already stopped (or was never started) and exit.

2. Check .testenv

Read terraform/.testenv and confirm DO_TOKEN is set. Terraform needs it to authenticate:

grep -q "DO_TOKEN=" terraform/.testenv && echo "token present" || echo "MISSING"

If missing, stop and tell the user to ensure terraform/.testenv contains DO_TOKEN.

3. Destroy the droplet

Run terraform destroy from the terraform directory:

cd /workspace/terraform && terraform destroy -auto-approve

This will:

  • Destroy the droplet
  • Remove the firewall
  • Remove the reserved IP assignment (but keep the reserved IP itself)

Stream the output. This usually takes 12 minutes.

4. Verify the droplet is gone

After destroy completes, confirm no resources remain:

cd /workspace/terraform && terraform show

Expected output: No state. or empty state.

Also verify via the DO API that the droplet is gone (optional but useful for confidence):

source terraform/.testenv && curl -s \
  -H "Authorization: Bearer $DO_TOKEN" \
  "https://api.digitalocean.com/v2/droplets?name=coopcloud-test" \
  | python3 -c "import sys,json; d=json.load(sys.stdin); print('droplets:', len(d.get('droplets', [])))"

Expected: droplets: 0

5. Report

Print a summary:

  • Droplet destroyed: yes
  • Reserved IP preserved: show the IP from terraform/.testenv (RESERVED_IP)
  • DNS: unchanged — t1cc.commoninternet.net still points to the reserved IP
  • To restart: run /t1cc-start