| # 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, |
| ) |