Skip to content

Dev sh #3

Merged
merged 4 commits into from
Sep 22, 2021
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 8 additions & 10 deletions pioneer_bricks.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
#!/usr/bin/python3
from flask import Flask, request, render_template,jsonify
import os
import sys, subprocess
import os, sys
from sh import python3
from time import sleep

import signal

app = Flask(__name__)
Expand All @@ -10,29 +12,25 @@
workspace = ""
msgs = []
HOME = "/home/ubuntu/pioneer-bricks/static/"
# HOME = ""

process = None

def my_print(data):
global msgs
msgs.append(data)


def code_run():
global process
process = subprocess.Popen(["python3", f"{HOME}static/save/tmp/tmp.py"])
process = python3(f"{HOME}static/save/tmp/tmp.py",_out=my_print, _bg=True)


def transform_code(code):
# return "import rospy\nrospy.init_node(\"pioneer_bricks_node\")\nprint(\"kek\")\nwhile not rospy.is_shutdown():\n\tpass"
return "#!/usr/bin/python3\nimport rospy\nfrom rospy import ServiceProxy\nfrom std_srvs.srv import Empty\nfrom std_msgs.msg import Int32\nfrom gs_navigation import *\nfrom gs_board import *\nfrom gs_flight import *\nfrom gs_module import *\nfrom gs_sensors import *\nfrom gs_logger import *\nprint(\"Начало программы\")\ndef callback(data):\n\tpass\nrospy.init_node(\"pioneer_bricks_node\")\nflight = FlightController(callback)\nboard = BoardManager()\nled_b = BoardLedController()\nled_m = ModuleLedController()\nsensors=SensorManager()\nlog = Logger()\nnavigation = NavigationManager()\nled_b.changeAllColor(0,0,0)\nled_m.changeAllColor(0,0,0)\n" + code + "print(\"Конец программы\")"

@app.route("/stop", methods=['POST'])
def stop():
global process
if process != None:
process.send_signal(signal.SIGINT)
if process is not None:
process.signal(signal.SIGINT)
process = None
return "ok"

Expand Down Expand Up @@ -122,7 +120,7 @@ def pr():

try:
argv = sys.argv
# sleep(10)
sleep(10)
port = 2020
hostname = os.popen('ip addr show {}'.format(argv[argv.index('--interface')+1])).read().split("inet ")[1].split("/")[0]
app.run(host = hostname, port = port)
Expand Down