load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") #============================================================================= # Go rules http_archive( name = "io_bazel_rules_go", urls = [ "https://storage.googleapis.com/bazel-mirror/github.com/bazelbuild/rules_go/releases/download/0.19.3/rules_go-0.19.3.tar.gz", "https://github.com/bazelbuild/rules_go/releases/download/0.19.3/rules_go-0.19.3.tar.gz", ], sha256 = "313f2c7a23fecc33023563f082f381a32b9b7254f727a7dd2d6380ccc6dfe09b", ) http_archive( name = "bazel_gazelle", urls = [ "https://storage.googleapis.com/bazel-mirror/github.com/bazelbuild/bazel-gazelle/releases/download/0.18.2/bazel-gazelle-0.18.2.tar.gz", "https://github.com/bazelbuild/bazel-gazelle/releases/download/0.18.2/bazel-gazelle-0.18.2.tar.gz", ], sha256 = "7fc87f4170011201b1690326e8c16c5d802836e3a0d617d8f75c3af2b23180c4", ) load("@io_bazel_rules_go//go:deps.bzl", "go_rules_dependencies", "go_register_toolchains") go_rules_dependencies() go_register_toolchains( go_version = "1.12.9", ) load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") gazelle_dependencies() #============================================================================= # Docker rules git_repository( name = "io_bazel_rules_docker", remote = "https://github.com/bazelbuild/rules_docker.git", tag = "v0.7.0", ) load( "@io_bazel_rules_docker//repositories:repositories.bzl", container_repositories = "repositories", ) container_repositories() load( "@io_bazel_rules_docker//container:container.bzl", "container_pull", ) container_pull( name = "debian_hyperkube_base_amd64", # 'tag' is also supported, but digest is encouraged for reproducibility. digest = "sha256:cc782ed16599000ca4c85d47ec6264753747ae1e77520894dca84b104a7621e2", registry = "k8s.gcr.io", repository = "debian-hyperkube-base-amd64", tag = "0.10", ) git_repository( name = "distroless", remote = "https://github.com/googlecloudplatform/distroless.git", commit = "fa0765cc86064801e42a3b35f50ff2242aca9998", ) load( "@distroless//package_manager:package_manager.bzl", "package_manager_repositories", ) package_manager_repositories() load( "@distroless//package_manager:dpkg.bzl", "dpkg_src", "dpkg_list", ) dpkg_src( name = "debian_stretch", arch = "amd64", distro = "stretch", sha256 = "4b981bd2445d85cf1d93ea9f2d2dc235d20543ecdadd0d8065a10793b94eab9b", snapshot = "20190131T155411Z", url = "http://snapshot.debian.org/archive", ) dpkg_list( name = "package_bundle", packages = [ "cgmanager", "dbus", "libapparmor1", "libcgmanager0", "libcryptsetup4", "libdbus-1-3", "libnih-dbus1", "libnih1", "libpam-systemd", "libprocps6", "libseccomp2", "procps", "systemd-shim", "systemd", ], sources = [ "@debian_stretch//file:Packages.json", ], ) # We use the prebuilt utils.tar.gz containing socat & conntrack, building it in bazel is really painful load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file") http_file( name = "utils_tar_gz", urls = ["https://kubeupv2.s3.amazonaws.com/kops/1.11.1/linux/amd64/utils.tar.gz"], sha256 = "0e685eb751a32f782705311049b2592c4724add6f19ffdad1e7ce4f55816d7d8", ) git_repository( name = "io_k8s_repo_infra", commit = "f85734f673056977d8ba04b0386394b684ca2acb", remote = "https://github.com/kubernetes/repo-infra.git", shallow_since = "1563324513 -0800", )