Skip to content
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

op-node-entrypoint is broken #143

Closed
feld opened this issue Nov 7, 2023 · 4 comments
Closed

op-node-entrypoint is broken #143

feld opened this issue Nov 7, 2023 · 4 comments
Labels
type: question Further information is requested

Comments

@feld
Copy link

feld commented Nov 7, 2023

This was broken in #119

First, the shell script syntax is broken.

"${OP_NODE_L2_ENGINE_RPC//ws/http}"

this obviously should be

"${OP_NODE_L2_ENGINE_RPC}/ws/http"

Secondly, this won't work anyway because this endpoint returns a 404.

This change was not tested. Your v0.5.0 release has been out for a month.

Nobody noticed this for a month which is DEEPLY concerning. Is anyone actually running this chain?

@danyalprout
Copy link
Collaborator

Thanks for reporting @feld. Tried to repro your issue locally and it seems ok for me in bash. e.g.

bash-3.2$ TEST=http://geth:8551
bash-3.2$ echo ${TEST//http/ws}
ws://geth:8551

However the proposed change seems to not work as expected.

bash-3.2$ TEST=http://geth:8551
bash-3.2$ echo "${TEST}/http/ws"
http://geth:8551/http/ws

Are you by any change overriding OP_NODE_L2_ENGINE_RPC and does it have a second http in the URL? I wonder if we should switch the // to / to only replace the first occurrence

bash-3.2$ TEST=http://gethhttp:8551
bash-3.2$ echo ${TEST//http/ws}
ws://gethws:8551
bash-3.2$ echo ${TEST/http/ws}
ws://gethhttp:8551

@mdehoog mdehoog added the type: question Further information is requested label Nov 7, 2023
@feld
Copy link
Author

feld commented Nov 7, 2023

the errors I received were related to my OP_NODE_L2_ENGINE_RPC still being http://geth:8551 in my deployment instead of ws:// AND it requires bash now because the ${TEST//http/ws} format is not POSIX. Only #, ##, %, and %% are POSIX.

There is no mention of this breaking change in the release notes published with the v0.5.0 tag: https://github.com/base-org/node/releases/tag/v0.5.0

@mdehoog
Copy link
Contributor

mdehoog commented Nov 7, 2023

Hmmm were there any other changes? That should still not have been a breaking change:

> OP_NODE_L2_ENGINE_RPC=http://geth:8551
> echo ${OP_NODE_L2_ENGINE_RPC//ws/http}
http://geth:8551

@feld
Copy link
Author

feld commented Nov 8, 2023

The real breaking change was that this requires bash for the entrypoint script now instead of sh, so those who cannot use your exact docker-compose due to their different deployment strategies were caught off guard by 4d87a51 // #123

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants