cb15c5e0d8
CI / Rust (windows-latest - x86_64-pc-windows-msvc) (push) Waiting to run
CI / Native E2E Tests (push) Blocked by required conditions
CI / Windows Integration Test (push) Blocked by required conditions
CI / Version Sync Check (push) Waiting to run
CI / Rust (push) Waiting to run
CI / Dashboard (push) Waiting to run
CI / Sandbox Package (push) Waiting to run
CI / Rust (macos-latest - aarch64-apple-darwin) (push) Waiting to run
CI / Rust (macos-latest - x86_64-apple-darwin) (push) Waiting to run
CI / Global Install (macos-latest) (push) Blocked by required conditions
CI / Global Install (ubuntu-latest) (push) Blocked by required conditions
CI / Global Install (windows-latest) (push) Blocked by required conditions
Release / Check for new version (push) Has been cancelled
Release / Build macOS ARM64 (push) Has been cancelled
Release / Build macOS x64 (push) Has been cancelled
Release / Build Linux ARM64 (push) Has been cancelled
Release / Build Linux musl ARM64 (push) Has been cancelled
Release / Build Linux musl x64 (push) Has been cancelled
Release / Build Linux x64 (push) Has been cancelled
Release / Build Windows x64 (push) Has been cancelled
Release / Publish to npm (push) Has been cancelled
Release / Publish sandbox package to npm (push) Has been cancelled
Release / Create GitHub Release (push) Has been cancelled
29 lines
821 B
Bash
Executable File
29 lines
821 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
INSTANCE_FILE="$SCRIPT_DIR/.instance"
|
|
|
|
if [[ ! -f "$INSTANCE_FILE" ]]; then
|
|
echo "Error: No instance provisioned. Nothing to stop."
|
|
exit 1
|
|
fi
|
|
|
|
source "$INSTANCE_FILE"
|
|
export AWS_DEFAULT_REGION="$REGION"
|
|
|
|
STATE=$(aws ec2 describe-instances \
|
|
--instance-ids "$INSTANCE_ID" \
|
|
--query "Reservations[0].Instances[0].State.Name" --output text)
|
|
|
|
if [[ "$STATE" == "stopped" ]]; then
|
|
echo "Instance $INSTANCE_ID is already stopped."
|
|
exit 0
|
|
fi
|
|
|
|
echo "Stopping instance $INSTANCE_ID..."
|
|
aws ec2 stop-instances --instance-ids "$INSTANCE_ID" --no-cli-pager
|
|
echo "Waiting for stopped state..."
|
|
aws ec2 wait instance-stopped --instance-ids "$INSTANCE_ID"
|
|
echo "Instance stopped. No compute charges while stopped (storage only: ~$0.64/mo)."
|