Menu
Public repository / 5113300d6181fcc9ebf43e1c12a8300c4873854b
AkurAI-EC2 / README.md
Latest change 5113300d6181fcc9ebf43e1c12a8300c4873854b - Add v2 manifest loader foundation by Claude Code
# akurai-ec2 Version-controlled home for the AkurAI EC2 ops CLI that is installed locally as `~/.local/bin/akurai-ec2`. ## Purpose This repo tracks the shared Bash CLI used to operate the AkurAI AWS platform box at `mail.olibuijr.com`. It versions the script itself, plus the local installer used to place it back into `~/.local/bin/`. ## Host assumptions - Local host has Bash, `git`, `ssh`, `scp`, and standard coreutils. - SSH access to the target box works through the `akurai-mail` alias in `~/.ssh/config`, or via `AKURAI_EC2_SSH=<host>`. - The remote host is an Ubuntu-style system with `systemd`, `sudo`, `nginx`, `certbot`, and the AkurAI app layout expected by the script. - The ports registry defaults to `~/.claude/skills/_VMPORTS/ports.registry` unless `AKURAI_PORTS_REGISTRY` overrides it. ## Install Default install uses a symlink so the tracked repo copy stays authoritative: ```bash ./install.sh ``` Optional copy install: ```bash ./install.sh --copy ``` The installer targets `~/.local/bin/akurai-ec2` by default and preserves executable mode. ## Release engine note `akurai-ec2 release` is the shared release engine for AkurAI app repos. It reads each app repo's `akurai-deploy.toml`, handles version/changelog/tag flow, and then performs the EC2 deploy path. This repo only versions the shared CLI; per-app release manifests stay in their own repos. The current foundation supports both the legacy flat v1 manifest shape and a v2 nested TOML shape through `libexec/akurai-ec2-manifest.py`. The release command now loads manifests behind compatibility helpers so v2 keys can be introduced without changing the existing v1 deploy flow. ## Verification ```bash bash -n bin/akurai-ec2 bash -n install.sh ./tests/test_manifest_helper.sh ./bin/akurai-ec2 --help ./install.sh --dry-run ```