from moru import Sandbox
sandbox = Sandbox.create()
def on_stdout(data):
print(f"[OUT] {data}", end="")
def on_stderr(data):
print(f"[ERR] {data}", end="")
result = sandbox.commands.run(
"""
echo "Starting..."
echo "Error message" >&2
for i in 1 2 3; do
echo "Count: $i"
sleep 0.5
done
echo "Done!"
""",
on_stdout=on_stdout,
on_stderr=on_stderr,
timeout=30
)
print(f"\nExit code: {result.exit_code}")