Getting Started
Prerequisites
Section titled “Prerequisites”- SSH access to target machines (key-based authentication)
- No agent or runtime required on target hosts
Installation
Section titled “Installation”Download a release archive from GitHub Releases.
Each release ships one archive per target, plus checksums-sha256.txt to verify against.
# x86_64 — for arm64, use aarch64-unknown-linux-gnucurl -L https://github.com/alessiopcc/glidesh/releases/download/v1.2.0/glidesh-v1.2.0-x86_64-unknown-linux-gnu.tar.gz | tar xzchmod +x glideshsudo mv glidesh /usr/local/bin/# Apple silicon — for Intel Macs, use x86_64-apple-darwincurl -L https://github.com/alessiopcc/glidesh/releases/download/v1.2.0/glidesh-v1.2.0-aarch64-apple-darwin.tar.gz | tar xzchmod +x glideshsudo mv glidesh /usr/local/bin/# x86_64 — for arm64, use aarch64-pc-windows-msvcInvoke-WebRequest -Uri https://github.com/alessiopcc/glidesh/releases/download/v1.2.0/glidesh-v1.2.0-x86_64-pc-windows-msvc.zip -OutFile glidesh.zipExpand-Archive glidesh.zip -DestinationPath .Move-Item glidesh.exe C:\Windows\System32\From source
Section titled “From source”Requires Rust 1.86+.
git clone https://github.com/alessiopcc/glidesh.gitcd glideshcargo build --releaseThe binary will be at target/release/glidesh.
Quick Start
Section titled “Quick Start”1. Define your inventory
Section titled “1. Define your inventory”Create an inventory.kdl file listing your target machines:
vars { deploy-user "deploy"}
group "web" { host "web-1" "192.168.1.10" user="deploy" port=22 host "web-2" "192.168.1.11" user="deploy"}2. Write a plan
Section titled “2. Write a plan”Create a plan.kdl describing the desired state:
plan "setup-web" { target "web"
step "Install nginx" { package "nginx" state="present" }
step "Start nginx" { systemd "nginx" { state "started" enabled #true } }}3. Run it
Section titled “3. Run it”glidesh run -i inventory.kdl -p plan.kdlAdd --dry-run to preview changes without applying them:
glidesh run -i inventory.kdl -p plan.kdl --dry-run