-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Save a copy of grpc_health_probe
binary to the repository
#89
Comments
sgtm |
This decision - once made - is hard to revert. Maybe consider using submodule as the 1st step - put the binary in another repo, include it as a submodule here, and in the document mention git clone/pull with submodules. And after let's say 6 months or a year if we confirmed it's a great idea, make it to the main repo. |
I personally recommend only downloading the grpc_health_probe binary locally at build time, rather than saving it in the github repo. |
Those PRs weren't meant to try to push one direction with this issue I just removed the To @reyang 's point of the binary always being in the git history I think this file will only ever be updated a few times in the life of the project so I'd be fine with ~40MB being added to a git clone for the benefit of not downloading the binary multiple times and removing that network dependency to the
|
If we remove the I agree that we are not using the |
Personally I'm not a fan of submodules. I'm also not entirely sure about this claim:
I can see plenty of cases where someone is running a mix of local + prebuilt images, especially if they're using this repo to experiment with OpenTelemetry. As a compromise solution, would it be possible to create a preinstall/prebuild script that downloads and caches |
I appreciate all these suggestions and alternatives and they do seem good and better IMO than the existing method. However, I keep coming back to simply saving the binary to the repository. Some reasons:
|
@julianocosta89 to your comment would the local binary not suffice for this k8s scenario? Also, it doesn't look like we have much discussion here so I'll bring it up next Monday's meeting since there wasn't one this week. I will have this PR out of draft stage by then as well |
Once the |
Doesn't seem like we still need this? |
Feature Request
Save a copy of
grpc_health_probe
binary to the repository. 10MB.Is your feature request related to a problem?
Each of our services downloads this health probe (and will soon use with Dockerfile HEALTHCHECK)) using wget.
Example: https://github.com/open-telemetry/opentelemetry-demo-webstore/blob/main/src/adservice/Dockerfile#L35
Describe the solution you'd like:
Instead of downloading each time which a version has to be specified in each Dockerfile or possibly one main
GRPC_HEALTH_PROBE_VERSION
value in the.env
file that we'd have to add to each service's environment section in thecompose.yml
file, we simply copy the file from/bin/
to the docker image.Pros:
wget
in each service's buildCons:
Describe alternatives you've considered.
If the Docker compose command is able to download this binary and it be copied to each image during the build process could alleviate most of the network download required from 100MB total to 10MB total. However, each clean install will still need network access to get this file, so the offline-friendly approach of including the binary to the repository seems worthwhile.
The text was updated successfully, but these errors were encountered: