fetch and install clang from a public GCS bucket

* Stable clang release revision / tarball can be found in a public GCS
bucket:
- https://storage.googleapis.com/clang-builds-stable/clang-debian8/revisions.txt
- https://storage.googleapis.com/clang-builds-stable/clang-debian8/clang_r$revision.tar.gz

* clang tarball is fetched by a http_file rule.

* golang tarball is fetched by a http_file rule as well. Previously it
was done by a new_http_archive rule which will make the tarball itself
in the container which results a larger container

* Custom Cloud Builder is removed since gcr.io/cloud-builders/bazel
contains everything we need (bazel, curl).

Tested:
- structure tests
- container/debian8-clang-fully-loaded/build.sh -p my-project -c
  debian8-clang-fl -t test-image -a

Change-Id: I25511a0054a0aa0c020df08c674151cb88bee530
8 files changed
tree: ddfe8ec646795be2beed8d4a77c84a4dd9beb4ff
  1. bazelrc/
  2. configs/
  3. container/
  4. examples/
  5. rules/
  6. scripts/
  7. skylib/
  8. third_party/
  9. .gitignore
  10. AUTHORS
  11. CONTRIBUTING.md
  12. CONTRIBUTORS
  13. LICENSE
  14. README.md
  15. WORKSPACE
README.md

bazel-toolchains

https://github.com/bazelbuild/bazel-toolchains is a repository where Google hosts Bazel toolchain configs. These configs are required to configure Bazel to issue commands that will execute inside a Docker container via a remote execution environment.

These toolchain configs include:

  • C/C++ CROSSTOOL file,
  • BUILD file with toolchain rules, and
  • wrapper scripts.

Release information of toolchain configs can be found at: https://releases.bazel.build/bazel-toolchains.html.

This repository also hosts the skylark rule used to generate toolchain configs.