spatie/scotty
Scotty is a beautiful SSH task runner. Define tasks in a Scotty.sh file (bash with annotations) and run them on remote servers over SSH with clear, readable output. Compatible with Laravel Envoy, so you can use it as a drop-in replacement.
Scotty.sh files for deployments, database migrations, and server maintenance.@servers and macros.scotty run clearLogs) without SSH’ing in.Scotty.sh files.--pretend to dry-run deployments or --summary for quick health checks in CI.Adopt Scotty if:
scotty tasks.Look elsewhere if:
@servers—consider Ansible or Capistrano.*"Scotty eliminates a major pain point in our deployment workflows—manual SSH commands that are error-prone, undocumented, and inconsistent across teams. By standardizing these into version-controlled Scotty.sh files, we’ll:
Ask: "Which manual SSH workflows cause the most headaches for your team? Let’s automate those first."
*"Scotty is like Laravel Envoy on steroids—but simpler. Here’s why it’s a game-changer for us:
@servers/@task syntax, but with a better CLI (pause/resume, real-time output, summary mode).artisan commands, composer, and Laravel-specific tasks (e.g., cache clearing).Scotty.sh in your repo—everyone uses the same workflow.--pretend: See what would run without executing.--continue: Skip failures if you want to see what else breaks.scotty ssh: Quickly jump into a server from your script.Example: Our current deployment involves 8 manual SSH steps. With Scotty, we’ll chain them into a deploy macro and run it in one command. Plus, we can add safety checks (e.g., --confirm) to prevent accidents.
Next steps:
Scotty.sh best practices (variables, options, macros).Trade-offs:
.env or a secrets manager for credentials).Let’s pilot this on [X workflow] and measure the time saved."*
Key Sell Points:
How can I help you explore Laravel packages today?