| import gradio as gr | |
| import subprocess | |
| import runpodctl | |
| def start_pod(pod_name): | |
| result = subprocess.run(["runpodctl", "start", pod_name], capture_output=True, text=True) | |
| return result.stdout | |
| def stop_pod(pod_name): | |
| result = subprocess.run(["runpodctl", "stop", pod_name], capture_output=True, text=True) | |
| return result.stdout | |
| def delete_pod(pod_name): | |
| result = subprocess.run(["runpodctl", "delete", pod_name], capture_output=True, text=True) | |
| return result.stdout | |
| def create_pod(pod_name): | |
| result = subprocess.run(["runpodctl", "create", pod_name], capture_output=True, text=True) | |
| return result.stdout | |
| def run_app(action, pod_name): | |
| if action == "start": | |
| output = start_pod(pod_name) | |
| elif action == "stop": | |
| output = stop_pod(pod_name) | |
| elif action == "delete": | |
| output = delete_pod(pod_name) | |
| elif action == "create": | |
| output = create_pod(pod_name) | |
| else: | |
| output = "Unknown action. Please select a valid action." | |
| return output | |
| action_options = gr.inputs.Radio(["start", "stop", "delete", "create"], label="Choose action") | |
| pod_name_input = gr.inputs.Textbox(label="Enter pod name") | |
| iface = gr.Interface( | |
| fn=run_app, | |
| inputs=[action_options, pod_name_input], | |
| outputs="text", | |
| title="Pod Management", | |
| description="Enter the pod name and choose an action to perform on the pod.", | |
| theme="default" | |
| ) | |
| iface.launch() |