Produce docker autoconfig logs (#1) (#223)

* Produce docker autoconfig logs (#1)

Docker autoconfig is not printing out anywhere the results of executing commands inside the container. This PR adds a new output to the rule that produces the log.
Example outputs produced by an autoconfig rule:
Target //tests/config:ubuntu-xenial-autoconfig up-to-date:
bazel-bin/tests/config/ubuntu-xenial-autoconfig-layer.tar
bazel-bin/tests/config/ubuntu-xenial-autoconfig.tar
bazel-bin/tests/config/ubuntu-xenial-autoconfig.digest
bazel-bin/tests/config/ubuntu-xenial-autoconfig_log.log
bazel-bin/tests/config/ubuntu-xenial-autoconfig_outputs.tar

* produce message to debug errors

* resolved review comments
* added print message in rule that shows instructions for reproducing
execution of docker container. Rule prints out (example):

== Docker autoconfig will run. ==
To debug any errors run:
> docker run -d <image_id> bash
Where <image_id> is the image id printed out by the ubuntu-xenial-autoconfig_extract.tar rule.
Then run:
>/ubuntu-xenial-autoconfig_install.sh
from inside the container.
1 file changed
tree: 6d9b6435ed817ca05b50f3cfa00c0fd0d228f381
  1. .bazelci/
  2. bazelrc/
  3. configs/
  4. constraints/
  5. container/
  6. examples/
  7. release/
  8. repositories/
  9. rules/
  10. tests/
  11. third_party/
  12. .gitignore
  13. .travis.yml
  14. AUTHORS
  15. CONTRIBUTING.md
  16. CONTRIBUTORS
  17. LICENSE
  18. README.md
  19. WORKSPACE
README.md
Travis CIBazel CI
Build StatusBuild status

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.