| # Copyright 2017 The Bazel Authors. All rights reserved. | |
| # | |
| # Licensed under the Apache License, Version 2.0 (the "License"); | |
| # you may not use this file except in compliance with the License. | |
| # You may obtain a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, software | |
| # distributed under the License is distributed on an "AS IS" BASIS, | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
| # See the License for the specific language governing permissions and | |
| # limitations under the License. | |
| licenses(["notice"]) # Apache 2.0 | |
| package(default_visibility = ["//visibility:public"]) | |
| load( | |
| "//rules/container:docker_toolchains.bzl", | |
| "language_tool_layer", | |
| "toolchain_container", | |
| ) | |
| load("@io_bazel_rules_docker//contrib:test.bzl", "container_test") | |
| language_tool_layer( | |
| name = "base-ltl", | |
| base = "@debian8//image", | |
| packages = [ | |
| "binutils", | |
| "ca-certificates", | |
| "curl", | |
| "ed", | |
| "file", | |
| "git", | |
| "less", | |
| "netcat", | |
| "openssh-client", | |
| "patch", | |
| "unzip", | |
| "wget", | |
| "zip", | |
| ], | |
| ) | |
| toolchain_container( | |
| name = "toolchain", | |
| base = "@debian8//image", | |
| cmd = [ | |
| "/bin/sh", | |
| "-c", | |
| "/bin/bash", | |
| ], | |
| env = { | |
| # PATH envvar is a special case, and currently only the one in the | |
| # topmost layer is set. So that we override it here to include all. | |
| "PATH": "$PATH:/opt/python3.6/bin:/usr/local/go/bin", | |
| "LANG": "C.UTF-8", | |
| "LANGUAGE": "C.UTF-8", | |
| "LC_ALL": "C.UTF-8", | |
| }, | |
| language_layers = [ | |
| "base-ltl", | |
| "//container/debian8/layers/clang:clang-ltl", | |
| "//container/debian8/layers/go:go-ltl", | |
| "//container/debian8/layers/java:java-ltl", | |
| "//container/debian8/layers/java:java10-ltl", | |
| "//container/debian8/layers/python:python-rbe-ltl", | |
| ], | |
| ) | |
| container_test( | |
| name = "toolchain-test", | |
| configs = [ | |
| ":rbe-debian8.yaml", | |
| "//container/common:go.yaml", | |
| "//container/common:java.yaml", | |
| "//container/common:python2.yaml", | |
| "//container/common:python3_rbe.yaml", | |
| "//container/common:rbe-base.yaml", | |
| "//container/common/clang:clang.yaml", | |
| "//container/debian8:debian8.yaml", | |
| ], | |
| image = ":toolchain", | |
| verbose = True, | |
| ) |