| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- import paramiko
- import os
- import textwrap
- def deploy():
- host = "192.168.130.171"
- user = "roni"
- pw = "BTSai123"
- try:
- client = paramiko.SSHClient()
- client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
- client.connect(host, username=user, password=pw)
-
- print("Uploading files via SFTP...")
- sftp = client.open_sftp()
- sftp.put("main.py", "/home/roni/LocalFoodAI/main.py")
- sftp.put("database.py", "/home/roni/LocalFoodAI/database.py")
- sftp.put("start_daemon.py", "/home/roni/LocalFoodAI/start_daemon.py")
- sftp.put("static/script.js", "/home/roni/LocalFoodAI/static/script.js")
- sftp.put("static/index.html", "/home/roni/LocalFoodAI/static/index.html")
- sftp.close()
- print("Upload complete.")
-
- cmd = """cd ~/LocalFoodAI
- pkill -f "main.py" || true
- /home/roni/LocalFoodAI/venv/bin/python3 start_daemon.py
- """
-
- cmd = cmd.replace('\r\n', '\n')
- print(f"Running:\n{cmd}")
- stdin, stdout, stderr = client.exec_command(cmd)
- out = stdout.read().decode()
- err = stderr.read().decode()
-
- if out: print(f"OUT:\n{out}")
- if err: print(f"ERR:\n{err}")
-
- client.close()
- except Exception as e:
- print(f"Error: {e}")
- if __name__ == "__main__":
- deploy()
|