-
Notifications
You must be signed in to change notification settings - Fork 111
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
[INF-76] New Local Deployment Setup with docker-compose #2988
Conversation
@hareeshnagaraj if you could take a look at the Solana changes, that would be great, thanks! |
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.
Added some comments/qs! Looks great overall can't wait to switch to this new world :mochi_nani:
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.
nvm - ran this and doesn't work yet so making this a comment haha
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.
sorry, approval -> comment doesn't work so i'm doing approval -> request changes to remove the trigger-happy approval heh
72183a0
to
3923bcb
Compare
d70658a
to
fd9fabe
Compare
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.
This change looks good to me & rebasing+merging I think is the most sensible next steps. Client still has some work to get going off of this (proxy/registration stuff we chatted about), AAO and ES probably need implementation, and I think we should separate the containers some. I think we need to get through the long tail of those TODOs (and deleting the old A
code) before we end up with two standards :)
ETH_CONTRACTS_ABI_DIR = pathlib.Path(__file__).parent / "../build/eth-contracts" | ||
|
||
|
||
def health_check(discprov_url): |
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, preference for this to work based on status code alone. block diff should just be accounted for in health check long term imo
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.
we may also want to not health check the node pre-registration per @hareeshnagaraj 's changes today.
- content nodes need a discovery node to be online to be healthy
- registering a content node will fail unless there are discovery nodes
- discovery nodes will be unable to index the endpoints of content nodes if they never get registered
- death
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.
Identity times out the nodes that are not healthy though, I'm not sure how to get around this
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 add a follow up task
mkdir -p "$HOME/.local/bin" | ||
|
||
ln -sf "$PROTOCOL_DIR/dev-tools/audius-compose" "$HOME/.local/bin/audius-compose" | ||
# ln -sf "$PROTOCOL_DIR/dev-tools/audius-cloud" "$HOME/.local/bin/audius-cloud" |
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.
remove maybe?
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.
We should be adding audius-cloud soon, I think this is safe to keep?
sudo -u postgres createdb audius_discovery | ||
else | ||
sudo -u postgres pg_ctl start -D /db | ||
sudo -u postgres pg_ctl start -D /db -o "-c shared_buffers=512MB" -o "-c shared_preload_libraries=pg_stat_statements" |
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.
thanks, this is great! although long-term i still do believe in the db being similarly containerized being a helpful thing.
I know you were trying to save complexity in number of containers running, but maybe if we are better about port mgmt & naming of containers, we'll make life a lot easier
discovery_1_indexer
discovery_1_server
discovery_1_db
discovery_2_indexer
etc. etc.
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.
Yes, this sounds good, I've made a follow up task for this, thanks!
@@ -110,7 +110,6 @@ if [ "$audius_db_run_migrations" != false ]; then | |||
echo "Finished running migrations" | |||
fi | |||
|
|||
|
|||
# start es-indexer | |||
if [[ "$audius_elasticsearch_url" ]] && [[ "$audius_elasticsearch_run_indexer" ]]; then |
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.
in this new world, i don't think there's ES implemented yet right? not sure what the es indexer will do.
also noticed in playing with client, we don't have AAO either.
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.
The ES indexer should not start for now since audius_elasticsearch_url
is not set
Will add ES and AAO in a follow up PR
7bddebc
to
b9dbca8
Compare
b9dbca8
to
46781f0
Compare
## Changelog - #3463 by nicoback2 bump - #3420 by nicoback2 Use - #2988 by Cheran [INF-76] - #3458 by Johannes Naylor - #3456 by Sid Sethi - libs by Johannes Naylor - #3451 by Sebastian Klingler - #3373 by Sebastian Klingler - #3449 by Theo Ilie - #3408 by Theo Ilie - #3445 by Sebastian Klingler - #3435 by Reed Added - #3438 by Raymond Jacobson - #3434 by Hareesh Nagaraj - #3433 by Sebastian Klingler - #3406 by nicoback2 Make - #3402 by Hareesh Nagaraj - #3394 by Raymond Jacobson - #3392 by Raymond Jacobson - #3363 by Michael Piazza - #3366 by Joseph Lee - #3354 by Joseph Lee - #3362 by Michael Piazza - #3361 by Raymond Jacobson - #3360 by Raymond Jacobson - #3347 by Raymond Jacobson - #3345 by Raymond Jacobson - #3337 by Sebastian Klingler - #3336 by Sid Sethi
## Changelog - #3463 by nicoback2 bump - #3420 by nicoback2 Use - #2988 by Cheran [INF-76] - #3458 by Johannes Naylor - #3456 by Sid Sethi - libs by Johannes Naylor - #3451 by Sebastian Klingler - #3373 by Sebastian Klingler - #3449 by Theo Ilie - #3408 by Theo Ilie - #3445 by Sebastian Klingler - #3435 by Reed Added - #3438 by Raymond Jacobson - #3434 by Hareesh Nagaraj - #3433 by Sebastian Klingler - #3406 by nicoback2 Make - #3402 by Hareesh Nagaraj - #3394 by Raymond Jacobson - #3392 by Raymond Jacobson - #3363 by Michael Piazza - #3366 by Joseph Lee - #3354 by Joseph Lee - #3362 by Michael Piazza - #3361 by Raymond Jacobson - #3360 by Raymond Jacobson - #3347 by Raymond Jacobson - #3345 by Raymond Jacobson - #3337 by Sebastian Klingler - #3336 by Sid Sethi
## Changelog - #3463 by nicoback2 bump - #3420 by nicoback2 Use - #2988 by Cheran [INF-76] - #3458 by Johannes Naylor - #3456 by Sid Sethi - libs by Johannes Naylor - #3451 by Sebastian Klingler - #3373 by Sebastian Klingler - #3449 by Theo Ilie - #3408 by Theo Ilie - #3445 by Sebastian Klingler - #3435 by Reed Added - #3438 by Raymond Jacobson - #3434 by Hareesh Nagaraj - #3433 by Sebastian Klingler - #3406 by nicoback2 Make - #3402 by Hareesh Nagaraj - #3394 by Raymond Jacobson - #3392 by Raymond Jacobson - #3363 by Michael Piazza - #3366 by Joseph Lee - #3354 by Joseph Lee - #3362 by Michael Piazza - #3361 by Raymond Jacobson - #3360 by Raymond Jacobson - #3347 by Raymond Jacobson - #3345 by Raymond Jacobson - #3337 by Sebastian Klingler - #3336 by Sid Sethi
This PR removes the need for
init-repos
Everything works solely through docker and the entire audius dev stack can be brought up with
docker compose up
This is incompatible with
service-commands
and is a full refactorDescription
sudo
and/etc/hosts
modification no longer requiredA up
to < 1 minuteA
Follow Up PR
service-command
commands and scripts in JavaScript for consistencyTests
docker compose up