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

Add helper to run cargo windsock --cloud within docker for libc compatibility reasons #1309

Merged
merged 4 commits into from
Aug 30, 2023

Conversation

rukai
Copy link
Member

@rukai rukai commented Aug 25, 2023

Previously I was trying to solve the windsock libc mismatch issue by moving windsock entirely into the cloud via ec2-cargo.
However once I got far enough into that approach to get things working I found it was too slow. Every time I rerun ec2-cargo I have to rebuild the world and the ec2 instance is fast but still slower than my local machine, so even incremental rebuilds are still slower.

So I looked for alternatives and settled on this approach:
Setup a long running docker instance that uses ubuntu 20.04 and run windsock --cloud from within there.
I had previously tried cross which is a similar solution but hit so many problems that I gave up on docker entirely.
However the problem was just that cross's abstractions prevented me from running cargo windsock from within the instance.
Once I tried docker directly I found a fairly straightforward solution.

I've left optimizing the shotover project directory copy for a follow up PR, I would like to get this checked in so I can at least personally run windsock on aws again.

I might end up rolling back the ec2-cargo windsock functionality if it becomes a pain to maintain.
But it does still provide some value in that it lets us run windsock on aarch64.

@rukai rukai merged commit 702cc99 into shotover:main Aug 30, 2023
37 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants