A CLI tool for managing SLIT (Service Level Integration Testing) environments. Deploys payments-nbplus and mock-go releases directly via helm, and provides an interactive test runner for the ./slit directory.
- Go 1.21+ (for building from source)
- helm
- kubectl configured with cluster access
- fzf (for
runslit test)
curl -fsSL https://raw.githubusercontent.com/rxj18/runslit/main/install.sh | bashThe script checks for helm and fzf, clones the repo, builds the binary, and installs it to ~/.local/bin.
INSTALL_DIR=/usr/local/bin curl -fsSL https://raw.githubusercontent.com/rxj18/runslit/main/install.sh | bashgit clone https://github.com/rxj18/runslit.git
cd runslit
make installgo install github.com/rxj18/runslit@latestrunslit configInteractive menu to set:
kube-manifests path— local path to your kube-manifests repodevstack label— your personal label (e.g.rituraj,pr-123)payments-nbplus image SHAmock-go image SHA
Configuration is saved to ~/.runslit.config.
runslit syncSelect which releases to deploy (payments-nbplus, mock-go, or both) and runslit runs helm upgrade --install for each.
runslit testScans ./slit for testify suite test cases, opens fzf for selection, and runs the chosen test with DEVSTACK_LABEL set. The last-run test is pre-selected on next invocation.
runslit statusrunslit deleteSelect which releases to uninstall.
| Command | Description |
|---|---|
config |
Configure runslit interactively |
sync |
Deploy selected releases via helm |
delete |
Destroy selected releases via helm |
status |
Show current configuration |
test |
Select and run a test from ./slit |
help |
Show help |
{
"kube_manifests_path": "/path/to/kube-manifests",
"devstack_label": "your-label",
"nbplus_image": "abc123...",
"mockgw_image": "def456..."
}make uninstall
# or manually
rm ~/.local/bin/runslit
rm ~/.runslit.configmake build # build binary
make install # build and install
make clean # remove build artifacts
go run main.go # run locally