-
Notifications
You must be signed in to change notification settings - Fork 41
Resurrect the webnode #1778
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
base: develop
Are you sure you want to change the base?
Resurrect the webnode #1778
Conversation
OCaml Reference Validation ResultsRepository: https://github.com/MinaProtocol/mina.git Click to see full validation output |
✓ Code Reference Verification PassedAll code references in the documentation have been verified successfully! Total references checked: 1 The documentation is in sync with the codebase on the |
8ceaf90 to
afa920e
Compare
richardpringle
left a comment
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.
A couple of questions, a couple of nits... for me, a "nit" is your choice whether or not to take the suggestion. You can just resolve the ones you disgree with, though I do appreciate a comment reply too.
dannywillems
left a comment
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.
First pass done, see above.
| ```sh | ||
| # Using the latest version of the Rust node, generate a keypair. | ||
| # The --web-node-secrets flag formats the generated keypair into JSON the webnode can use. | ||
| docker run --rm o1labs/mina-rust:latest misc mina-key-pair --web-node-secrets > $HOME/web-node-key-pair.json |
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.
Can we open a follow-up to have this command tested in the CI? It does require a new release.
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.
I've just added it as a test that runs on build -- if it exists in the binary, it'll always get tested. And that way, after this is merged it should always work on latest Docker.
| ```sh | ||
| # Launch the latest version of the frontend in webnode configuration. | ||
| # We mount the keypair generated in step 1, and bind port 4200 on the host to 80 (http) in the container | ||
| docker run \ |
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.
Could we have this in a bash scripts, and we import the content please?
| description: How to deploy and launch a webnode using Docker images | ||
| --- | ||
|
|
||
| # Deploying and launching a webnode using Docker |
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.
Nit: could we have a consistent naming convention for the webnode? Sometimes we use WebNode, sometimes webnode or even web-node. Feel free to pick the one you prefer.
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.
Let's open an issue to correct this after, it's gonna touch a lot of places to make this naming consistent.
| items: [ | ||
| 'node-operators/alpha-testing', | ||
| 'node-operators/webnode/local-webnode', | ||
| 'node-operators/webnode/local-webnode-docker', |
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.
I would be in favor of having this part moved to Node Operations or something else soon. It can be done in a follow-up. Can you open an issue, please?
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.
Will open post merge
1abbb67 to
7dfc539
Compare
7dfc539 to
347635b
Compare
richardpringle
left a comment
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, leaving for @dannywillems to have final approval
347635b to
9395f97
Compare
9395f97 to
26431d7
Compare
…webnode deployment
c8d87e7 to
e2bcc80
Compare
e2bcc80 to
f1d849f
Compare

Description
Makes the webnode launch/run again. This PR ended up being unusually "complex" due to multiple factors coinciding while reviving the webnode.
wasm-bindgento support the latest nightly version.mina misc mina-key-pairto simplify testing and deployment. It's still unclear why the webnode needs keys atweb-node-secrets.jsonwhen the first thing we do when interacting with it is supply a set of keys. Once that requirement is removed, we can remove the corresponding documentation and flag.There is some future work that will need to be planned to make the webnode truly functional/usable, but this is a good place to start given it's been neglected for a while. Note that there aren't any functional peers at the moment, so you'll likely be unable to get past 99% when launching. However, the logs in console do show that the Rust code is running and attempting to act like a real node!.
Related Issue(s)
Parent issue: #1474
Closes: #1839
Closes: #1840
Type of Change
Testing
You can test this by following a slightly modified version of the instructions added to the website section in
website/docs/node-operators/webnode/local-webnode-docker.md. These modifications are necessary since there is currently no published Docker image containing this PR.may change if commits are added to the PR
Step 1in docs using docker, invokemina misc mina-key-pairusing cargo directly. (this is just faster than building the non-frontend image)Step 2of docs with the image you built in step 2 of this test procedure. e.g., in the example above useo1labs/mina-rust-frontend:b9e1bd61instead ofo1labs/mina-rust-frontend:latestContinuebutton should turn white and you should see the dashboardChangelog Entry
Added
webnode in Docker. (#1778)