managementbot / app.py
xdragxt's picture
Update app.py
0bee3d6
raw
history blame
1.46 kB
import os
import subprocess
import sys
import streamlit as st
process = None # Global variable to store process
def start_process():
global process
if process is None or process.poll() is not None: # Check if process isn't running
process = subprocess.Popen([sys.executable, "-m", "Powers"])
st.success(f"Process started with PID: {process.pid}")
else:
st.warning("The process is already running.")
def stop_process():
global process
if process and process.poll() is None: # Check if process is running
process.terminate() # Stop process
process.wait()
st.success("Process stopped.")
else:
st.warning("The process is not running.")
def restart_process():
stop_process()
start_process()
st.success("Process restarted.")
def main():
st.title("Process Control Panel")
if not os.path.exists("Seonari"):
st.write("Cloning repository...")
subprocess.run(["git", "clone", "https://github.com/taslim19/Seonari"], check=True)
os.chdir("Seonari")
st.write("Installing dependencies...")
subprocess.run([sys.executable, "-m", "pip", "install", "-r", "requirements.txt"], check=True)
# Display buttons on the Streamlit app
if st.button("Start"):
start_process()
if st.button("Stop"):
stop_process()
if st.button("Restart"):
restart_process()
if __name__ == "__main__":
main()