-
Notifications
You must be signed in to change notification settings - Fork 233
Fix: Create working directory if it doesn't exist #1066
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
No this does not work, when I run build. the spawn command fails with: [ERROR]
build failed: failed to build node `camera`
Caused by:
0: build command failed
1: build command `pip install ../../node-hub/opencv-video-capture` returned exit status: 2
Location:
libraries/core/src/build/build_command.rs:81:24
Location:
/Users/xaviertao/Documents/work/dora/binaries/coordinator/src/listener.rs:119:54
Location:
binaries/cli/src/command/build/distributed.rs:102:25 |
|
Even though the You can reproduce by trying to build:
dora build examples/av1-encoding/dataflow.yml --uv |
|
Thanks for the details! We should definitely improve the error reporting so that we also see the stdout/stderr instead of just the exit code. |
Ensures that we see all error messages instead of just the exit code.
|
I pushed 6073c9c to ensure that the stdout and stderr are printed before we print the exit code. |
Looks like this dataflow requires a specific working directory. You can set it using a - id: dav1d-remote
_unstable_deploy:
machine: decoder
working_dir: /path/to/your/clone/of/dora-rs
path: dora-dav1d
build: cargo build -p dora-dav1d --releaseAs an alternative, you can do one of the following:
|
|
I also opened #1067 to imrpove the log output. With that PR, you should see the exact command and working directory for each build command. |
|
I ran into this issue today when trying to set up distributed nodes. Using just a local python node works fine: - id: keyboard_controller
build: pip install -e keyboard_controller
path: keyboard_controller/src/main.py
inputs:
tick: dora/timer/millis/100
- id: rust_node
build: cargo build -p rust_node
path: target/debug/rust_node
inputs:
tick: dora/timer/millis/100Then, However, making just the rust node distributed: - id: rust_node
_unstable_deploy:
machine: other
path: dynamic
inputs:
tick: dora/timer/millis/100Causes Then, changing the python node to: - id: keyboard_controller
build: pip install -e ../../keyboard_controller
path: ../../keyboard_controller/src/main.py
inputs:
tick: dora/timer/millis/100solves the problem. But, I think this is very unintuitive and was very difficult to troubleshoot. Now, when commenting out the distributed rust node, the python node fails because the paths are wrong! It would be good if the nodes were spawned in the working directory of their daemons. |
|
Thanks for your feedback! Let's discuss this in a separate issue since this is not directly relevant to this PR. I opened #1074 for this. |
|
Adding this PR to the merge queue, given that the changes are just small bugfixes. We want to have them either way, even if we decide for another default working directory in #1074. |
We forgot to create the working directory in a few cases in #901. This PR fixes this by adding the proper
create_dir_allcalls.Alternative to #1064