load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository")
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

# App Engine
git_repository(
    name = "rules_appengine",
    remote = "https://github.com/bazelbuild/rules_appengine.git",
    # Check https://github.com/bazelbuild/rules_appengine/releases for the latest version.
    tag = "0.0.9",
)
load(
    "@rules_appengine//appengine:sdk.bzl",
    "appengine_repositories",
)
appengine_repositories()
load(
    "@rules_appengine//appengine:py_appengine.bzl",
    "py_appengine_repositories",
)
py_appengine_repositories()

# Protobuf
http_archive(
    name = "rules_proto",
    sha256 = "602e7161d9195e50246177e7c55b2f39950a9cf7366f74ed5f22fd45750cd208",
    strip_prefix = "rules_proto-97d8af4dc474595af3900dd85cb3a29ad28cc313",
    urls = [
        "https://mirror.bazel.build/github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.tar.gz",
        "https://github.com/bazelbuild/rules_proto/archive/97d8af4dc474595af3900dd85cb3a29ad28cc313.tar.gz",
    ],
)
load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains")
rules_proto_dependencies()
rules_proto_toolchains()

# Protobuf (Google)
http_archive(
    name = "com_google_protobuf",
    strip_prefix = "protobuf-3.11.0",
    urls = ["https://github.com/google/protobuf/archive/v3.11.0.zip"],
    sha256 = "60d2012e3922e429294d3a4ac31f336016514a91e5a63fd33f35743ccfe1bd7d",
)
load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps")
protobuf_deps()

# Python
git_repository(
    name = "rules_python",
    remote = "https://github.com/bazelbuild/rules_python.git",
    commit = "94677401bc56ed5d756f50b441a6a5c7f735a6d4",
)
load("@rules_python//python:repositories.bzl", "py_repositories")
py_repositories()
load("@rules_python//python:pip.bzl", "pip_import", "pip_repositories", "pip3_import")
pip_repositories()
pip_import(
    name = "third_party",
    requirements = "//tradefed_cluster:requirements.txt",
)
load("@third_party//:requirements.bzl", "pip_install")
pip_install()
pip3_import(
    name = "third_party_py3",
    requirements = "//tradefed_cluster:requirements_py3.txt",
)
load("@third_party_py3//:requirements.bzl", pip3_install = "pip_install")
pip3_install()


