-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
[Dashboard] Select port in dashboard #13763
Conversation
351e3e1
to
ff276d8
Compare
We have the same issue for the dashboard agent, and it is really hard for it to choose the same strategy for that (because other cpp components need to know the port number of the agent). Do you have any good idea to solve it? |
raylet knows the port of dashboard agent because agent calls |
597a958
to
249b301
Compare
Lmk when the PR is ready |
I am not sure if CI failure is related to this PR. |
All cases passed. The PR is ready. |
@rkooo567 Is there any problem with this PR? |
Window tests seem to fail |
The dashboard failure will be reported, so Windows CI should build the dashboard frontend before running tests. I found the failures in Windows CI logs:
But, the npm build is skipped on Windows: build_dashboard_front_end() {
if [ "${OSTYPE}" = msys ]; then
{ echo "WARNING: Skipping dashboard due to NPM incompatibilities with Windows"; } 2> /dev/null
else
(
cd ray/new_dashboard/client
if [ -z "${BUILDKITE-}" ]; then
set +x # suppress set -x since it'll get very noisy here
. "${HOME}/.nvm/nvm.sh"
nvm use --silent node
fi
install_npm_project
npm run -s build
)
fi
} If the npm is incompatible with Windows, I have to make the dashboard starts silently without frontend. |
ee2023e
to
120f033
Compare
120f033
to
1895d50
Compare
1895d50
to
9517089
Compare
@rkooo567 It's hard to make all test cases green. |
@fyrestone no reason to make it all green. Just need to make sure failed tests are unrelated to this PR or also failing in the master |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Btw this is only for the dashboard, not agents right? I've seen similar issues from agents too I think
This PR is only for the dashboard. I will look into the problem of dashboard agent port conflicts. |
Sounds good. I’ve seen issues from agents a lot recently. The issue is it is a bit trickier than others because raylet need the port of it (to report metrics). Are you planning to work on it soon? |
I will fix the dashboard agent port conflicts after this PR is merged. |
Why are these changes needed?
services.py
, then bind port in dashboard.services.py
get the bound port from redis.test_stats_collector.py::test_get_all_node_details
.test_multi_node_3.py::test_calling_start_ray_head
may fail.Related issue number
Closes #13351
Checks
scripts/format.sh
to lint the changes in this PR.