This PR implements the createPod, listPods, and terminatePod API endpoints, as well as related service functions. Together, they allow control over the lifecycle of a Kubernetes pod and all pods are saved in the texera_db database under the pod table.
Architecture
The overall architecture is different from the original design shown below as a singular deployment containing all user pods does not allow for the freedom to decide which pod is deleted without significant added complexity. Instead of a singular deployment, each user gets their own deployment, from which a pod the user can use is spawned from.
This PR implements the
createPod
,listPods
, andterminatePod
API endpoints, as well as related service functions. Together, they allow control over the lifecycle of a Kubernetes pod and all pods are saved in thetexera_db
database under thepod
table.Architecture
The overall architecture is different from the original design shown below as a singular deployment containing all user pods does not allow for the freedom to decide which pod is deleted without significant added complexity. Instead of a singular deployment, each user gets their own deployment, from which a pod the user can use is spawned from.