Sample repositories for smoke testing Ballast language detection and install flows.
TypeScript, Python, Go, Ansible, and Terraform all participate in wrapper auto-detection now.
- Repository: https://github.com/everydaydevopsio/ballast
- Installation guide: https://github.com/everydaydevopsio/ballast/blob/main/docs/installation.md
Quick install (wrapper CLI):
go install github.com/everydaydevopsio/ballast/cli/ballast@latestFor these example smoke tests, the ballast wrapper command must resolve on your PATH. If you only have the backend installed locally, add an alias such as alias ballast=ballast-go, or run ballast-go install --language <lang> ... directly instead of wrapper auto-detection.
go-sample/python-sample/typescript-sample/ansible-sample/Includes bothhosts.iniandhosts.ini.exampleso the fixture is runnable without renaming files.terraform-sample/Includes.terraform-version,versions.tf,providers.tf, andmain.tfso the fixture exercises Terraform root detection and version pinning.
From repo root:
./smoke.shThis runs:
ballast install --target cursor --agent linting --yesingo-sample/,python-sample/,typescript-sample/,ansible-sample/, andterraform-sample/
Prerequisite: ballast must resolve on your PATH.
If your Ballast repo is next to this one:
cd ../ballast
docker build -f Dockerfile.smoke -t ballast-smoke .
docker run --rm -it -v "$(pwd)/../ballast-examples:/workspace/examples" ballast-smoke bash -lc "cd /workspace/examples && ./smoke.sh"cd ../ballast
docker build -f Dockerfile.smoke --build-arg PREINSTALL_ALL_BINARIES=0 -t ballast-smoke-lazy .
docker run --rm -it -v "$(pwd)/../ballast-examples:/workspace/examples" ballast-smoke-lazy bash -lc "cd /workspace/examples && ./smoke.sh"Smoke tests run from the ballast repository workflow. To trigger manually:
gh workflow run examples-smoke.yml --repo everydaydevopsio/ballastGitHub Actions runs smoke tests on push/PR in ballast for all five samples.
Workflow file: ballast/.github/workflows/examples-smoke.yml
Each matrix job:
- builds
ballastwrapper + language CLIs from source - runs
ballast install --target cursor --agent linting --yes - verifies generated rule file
go-sample/gets.cursor/rules/go-linting.mdcpython-sample/gets.cursor/rules/python-linting.mdctypescript-sample/gets.cursor/rules/typescript-linting.mdcansible-sample/gets.cursor/rules/ansible-linting.mdcterraform-sample/gets.cursor/rules/terraform-linting.mdc