-
Notifications
You must be signed in to change notification settings - Fork 417
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
[WIP] multi-platform scheduled builds #1165
Conversation
Codecov Report
@@ Coverage Diff @@
## main #1165 +/- ##
==========================================
- Coverage 91.55% 91.37% -0.17%
==========================================
Files 217 221 +4
Lines 7922 8247 +325
==========================================
+ Hits 7252 7535 +283
- Misses 670 712 +42
|
Should we build our development docker image instead install and build dependencies every time?It may reduce a lot time to all CI jobs. |
Thanks, yeah I totally agree. The question is where to host. We discussed this in one of the meetings and there is no plan to host docker images. |
This PR provides multi-platform scheduled builds, so we can test build on different CPU architectures e.g. arm64 or OS versions.
example build command (building with gcc 8.5):
docker build --build-arg BASE_IMAGE=gcc:8.5 -f ../docker/ubuntuLatest/Dockerfile . -t otel-cpp
Changes
uses
setup_grpc.sh
andsetup_thrift.sh
scripts inDockerfile
in multiple stages so that Docker can build the stages in parallel.The ARM build can take up to 3 hours because of the emulation.
If the image built with the scheduled job, pushed to some registry, it can be directly used on ARM machines as well.
As the build using this method is very slow, a
cron
job is used.For significant contributions please make sure you have completed the following items:
CHANGELOG.md
updated for non-trivial changes