Hi Bazel community,
The RBE toolchains team recently launched a public Bazel container (Ubuntu 16.04 based) in the Google Cloud Marketplace. The Bazel container includes the toolchain necessary to run C++, Java and Python Bazel builds. It includes a recent and well tested version of clang, OpenJDK8, OpenJDK10, Python 2.7, Python 3.6 and other basic tools such as Binutils, Patch, Git, Openssh client, Unzip, Wget, Zip.
To get started, you can check it out at Google Cloud Marketplace or pull the container with command: docker pull l.gcr.io/google/bazel:latest. The latest version of the container comes with Bazel 0.16.1.
The Bazel container makes it very easy to try out Bazel builds on any machine that supports Docker. It gives the same Bazel build environment across machines and users.
We include a default bazel.bazelrc file with sanitizer build configs located under /etc to provide out-of-box support for sanitizers (asan, tsan and msan). Check out doc: Getting started with Bazel Docker Container.
The Bazel container is built with Bazel, using rules_docker, base-images-docker and bazel-toolchains. If you want to build the container yourself, sources are available here.
Thanks,
RBE Toolchains Team
--
You received this message because you are subscribed to the Google Groups "bazel-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bazel-discus...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bazel-discuss/CAKcgio6dCpeNuQ7rY2%3DEiq6adTG1Z-gaEw0qrfEpxJhJZKPQqg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
HI Xin,That looks cool.It'd help me to make my CI environment more reliable.I wonder how I compare it with gcr.io/cloud-builders/bazel.
What advantage can I expect for the new image? Can I expect that some compatibility between them?
On Tue, Sep 11, 2018 at 2:52 AM 'Xin Gao' via bazel-discuss <bazel-discuss@googlegroups.com> wrote:
Hi Bazel community,
The RBE toolchains team recently launched a public Bazel container (Ubuntu 16.04 based) in the Google Cloud Marketplace. The Bazel container includes the toolchain necessary to run C++, Java and Python Bazel builds. It includes a recent and well tested version of clang, OpenJDK8, OpenJDK10, Python 2.7, Python 3.6 and other basic tools such as Binutils, Patch, Git, Openssh client, Unzip, Wget, Zip.
To get started, you can check it out at Google Cloud Marketplace or pull the container with command: docker pull l.gcr.io/google/bazel:latest. The latest version of the container comes with Bazel 0.16.1.
The Bazel container makes it very easy to try out Bazel builds on any machine that supports Docker. It gives the same Bazel build environment across machines and users.
We include a default bazel.bazelrc file with sanitizer build configs located under /etc to provide out-of-box support for sanitizers (asan, tsan and msan). Check out doc: Getting started with Bazel Docker Container.
The Bazel container is built with Bazel, using rules_docker, base-images-docker and bazel-toolchains. If you want to build the container yourself, sources are available here.
Thanks,
RBE Toolchains Team
--
You received this message because you are subscribed to the Google Groups "bazel-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bazel-discuss+unsubscribe@googlegroups.com.
Hi Yugui,Thanks for your question. Comparing to gcr.io/cloud-builders/bazel, some differences are:1. l.gcr.io/google/bazel uses rules_docker to build the container image, while gcr.io/cloud-builders/bazel use Dockerfile.2. They have different cc compiler installed. l.gcr.io/google/bazel includes a Google-tested version of Clang with sanitizer support, while gcr.io/cloud-builders/bazel includes gcc.3. gcr.io/cloud-builders/bazel currently doesn't have tags for Bazel version. But you can pull l.gcr.io/google/bazel with specific Bazel versions. Currently available ones are 0.15.2 and 0.16.1.They have things in common as well, like they both based on l.gcr.io/google/ubuntu16_04.Thanks,Xin
On Mon, Sep 10, 2018 at 5:28 PM, Yugui <yu...@yugui.jp> wrote:
HI Xin,That looks cool.It'd help me to make my CI environment more reliable.I wonder how I compare it with gcr.io/cloud-builders/bazel.
What advantage can I expect for the new image? Can I expect that some compatibility between them?
On Tue, Sep 11, 2018 at 2:52 AM 'Xin Gao' via bazel-discuss <bazel-...@googlegroups.com> wrote:
Hi Bazel community,
The RBE toolchains team recently launched a public Bazel container (Ubuntu 16.04 based) in the Google Cloud Marketplace. The Bazel container includes the toolchain necessary to run C++, Java and Python Bazel builds. It includes a recent and well tested version of clang, OpenJDK8, OpenJDK10, Python 2.7, Python 3.6 and other basic tools such as Binutils, Patch, Git, Openssh client, Unzip, Wget, Zip.
To get started, you can check it out at Google Cloud Marketplace or pull the container with command: docker pull l.gcr.io/google/bazel:latest. The latest version of the container comes with Bazel 0.16.1.
The Bazel container makes it very easy to try out Bazel builds on any machine that supports Docker. It gives the same Bazel build environment across machines and users.
We include a default bazel.bazelrc file with sanitizer build configs located under /etc to provide out-of-box support for sanitizers (asan, tsan and msan). Check out doc: Getting started with Bazel Docker Container.
The Bazel container is built with Bazel, using rules_docker, base-images-docker and bazel-toolchains. If you want to build the container yourself, sources are available here.
Thanks,
RBE Toolchains Team
--
You received this message because you are subscribed to the Google Groups "bazel-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bazel-discus...@googlegroups.com.
Jakob Buchgraber
Software Engineer
![]()
Google Germany GmbH
Erika-Mann-Straße 33
80636 München
Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg
Diese E-Mail ist vertraulich. Falls sie diese fälschlicherweise erhalten haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, dass die E-Mail an die falsche Person gesendet wurde.
This e-mail is confidential. If you received this communication by mistake, please don't forward it to anyone else, please erase all copies and attachments, and please let me know that it has gone to the wrong person.
Hi Xin,very cool! Thanks for doing this! I have three questions:
- Could we publish the documentation that's currently in the .pdf on Bazel's website? And maybe add some more (happy to help)?
- Is building this container fully automated and could we trigger it via Bazel's release process?
- You mentioned that this image and the RBE toolchains image "have very similar tools and compilers installed".
Could they have identical tools and compilers installed so that it's a safe to use the two images together for
remote execution/caching? And could we document this use case on Bazel's website?
Yes, we could potentially. We just need to be careful to make sure the compiler version matches in the two containers.
Umm. Not quite. Bazel container is kind of a standalone thing itself. It has similar tools as other RBE containers as we use the same layer targets in them but the versions of compilers can be different depending on when we release them. And I think the execution in the remote environment shouldn't necessarily be the same as the host environment except for issues related to @local_jdk for java iiuc?I think making them the same to support the use case that running Bazel with local execution and remote caching in the Bazel container, and using RBE ubuntu1604 container as the execution container for builds not necessarily started from the Bazel container can be something we can evaluate.Thanks,
Xin
On Wed, Sep 12, 2018 at 3:53 AM, Jakob Buchgraber <buc...@google.com> wrote:
Hi I am trying to build binaries for x86_64 linux boxes from mac os . If i understand correctly i should be using this containers to run bazel do the cross compilation ?
Could you please elaborate the difference between image rbe-ubuntu1604 and gcr.io/google/bazel:latest ? in the context where everything runs locally ? What does host and remote execution container mean when i am trying to build for a specific target locally ?
--
You received this message because you are subscribed to the Google Groups "bazel-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bazel-discuss+unsubscribe@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bazel-discuss/d780f680-9597-488f-970a-c0006fa0ba1f%40googlegroups.com.
To unsubscribe from this group and stop receiving emails from it, send an email to bazel-discus...@googlegroups.com.
also, is this error only occuring with the 0.19.0 container, or does it reproduce with other ones?
--
You received this message because you are subscribed to a topic in the Google Groups "bazel-discuss" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/bazel-discuss/fKEdrrCUC0s/unsubscribe.
To unsubscribe from this group and all its topics, send an email to bazel-discus...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/bazel-discuss/c61f8829-567c-4f54-b0a0-a57b8456b81c%40googlegroups.com.
On similar note : I do have a custom docker file where i have ubuntu 16 installed and some other libraries installed. (which i have been using to build my image)Primarily i use gcc (5.4) for compilation and not clang .
Iin my custom docker with bazel 0.19.0 I am facing another issue : I have 2 gce boxes and 1 macIf i create gce instance using my docker image as the base image , everything runs fine and builds.But if i use another GCE box that had separate base image , but i pull my docker image and start running build within this docker image , the build fails with a linking error.The only difference between the 2 GCE is that kernel version are different , since i bring up one GCE using my custom docker image and in the other GCE i have a default debian , and after the startup i pull the custom docker image and start bazel build.
As i understand the build should be reproducible and uniform as long as i am withing the docker world , but why i am observing this behaviour , can different kernel versions some how affects the build and linkage process ?
So , how should i proceed , should i open a github issue for this ?
And what would be recommended way to solve the linker issue if kernels are different , any ideas , since i am not a build/bazel expert .
I am bit confused when you say "owner of the code will provide more details" . The bazel container fails to build some binaries/image, whereas the code is fine and can be built using gcc and other custom images. Are you saying the errors caught by clang are legit errors and should also fail with gcc , but some how gcc is not as efficient and doesn't catch all errors ??
This seems more like a bazel or crosstool chain error to me rather than code related error.
In fact on looking at the code the error doesnt even make sense to me that bazel-clang is throwing , it seems like some config.h is being included that should not have been.When you say owners of the code you mean : which piece of code you are referring to ? Because i am the owner of the code that i am compiling and to me it seems more like bazel container failing to build the code.