Solo Inside a Cluster Example
Example of how to deploy a Solo network within a Kubernetes cluster
Running Solo Inside Cluster Example
This example demonstrates how to run the Solo network inside a privileged Ubuntu pod in a Kubernetes cluster for end-to-end testing. It automates the setup of all required dependencies and configures the environment for Solo to run inside the cluster.
What it does
- Renders Kubernetes manifests for a ServiceAccount and a privileged Ubuntu pod using templates.
- Applies these manifests to your cluster using kubectl.
- Waits for the pod to be ready, then copies and executes a setup script inside the pod.
- The setup script installs all required tools (kubectl, Docker, Helm, Node.js, etc.), installs the Solo CLI locally, and runs Solo commands to initialize and deploy a test network.
Usage
- Install dependencies 
- Run the test - task- This will: - Render and apply the ServiceAccount and Pod manifests
- Copy and execute the setup script inside the pod
- The pod will install all dependencies and use Solo to create a Hiero deployment
 
- Clean up - Run the cleanup task to delete the pod and ServiceAccount:task cleanup
 
- Run the cleanup task to delete the pod and ServiceAccount:
Customization
- You can modify the templates in the templates/directory to change the pod configuration or ServiceAccount permissions.
- Edit the setup script to adjust which Solo commands are run or which dependencies are installed.
Tasks
- start: Sets up and runs the Solo network inside a privileged pod for end-to-end testing.
- cleanup: Deletes the privileged pod and ServiceAccount used for the test.