Initial implementation of TriggerShell
A Python CLI (typer) that bootstraps Node/pnpm and launches a Next.js 16 web app for running configured shell scripts: YAML config validated by a shared Zod schema, dynamic per-script forms mapped to shadcn controls, argv-safe execa execution with live WebSocket streaming, SQLite/Drizzle run history, and optional argon2 session + API token auth. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
env=""
|
||||
replicas=""
|
||||
dry_run="false"
|
||||
|
||||
while [[ $# -gt 0 ]]; do
|
||||
case "$1" in
|
||||
--env) env="$2"; shift 2 ;;
|
||||
--replicas) replicas="$2"; shift 2 ;;
|
||||
--dry-run) dry_run="true"; shift ;;
|
||||
*) echo "unknown argument: $1" >&2; exit 1 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo "Deploying to '${env}' with ${replicas} replicas (dry_run=${dry_run})"
|
||||
if [[ -n "${SLACK_CHANNEL:-}" ]]; then
|
||||
echo "Would notify Slack channel: ${SLACK_CHANNEL}"
|
||||
fi
|
||||
|
||||
for i in $(seq 1 5); do
|
||||
echo "[${i}/5] working..."
|
||||
sleep 1
|
||||
done
|
||||
|
||||
echo "Deploy complete."
|
||||
Reference in New Issue
Block a user