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

# Nix rules
http_archive(
    name = "io_tweag_rules_nixpkgs",
    strip_prefix = "rules_nixpkgs-364adc70f32c2b3982995fce06b334f4d159070e",
    urls = ["https://github.com/tweag/rules_nixpkgs/archive/364adc70f32c2b3982995fce06b334f4d159070e.tar.gz"],
)

# Nix packages

load("@io_tweag_rules_nixpkgs//nixpkgs:nixpkgs.bzl", "nixpkgs_git_repository", "nixpkgs_package")
nixpkgs_git_repository(
    name = "nixpkgs",
    revision = "2f1f9a9fe8a3c22f0677733523eaf6bd33995d50",
)

nixpkgs_package(
    name = "nixops",
	attribute_path = "nixops",
    repositories = { "nixpkgs": "@nixpkgs" },
)

# Python rules
git_repository(
    name = "io_bazel_rules_python",
    remote = "https://github.com/bazelbuild/rules_python.git",
    commit = "ebd7adcbcafcc8abe3fd8e5b0e42e10ced1bfe27",
)

# Python dependencies

load("@io_bazel_rules_python//python:pip.bzl", "pip_import")

pip_import(
    name = "py_deps",
    requirements = "//:requirements.txt",
)

load("@py_deps//:requirements.bzl", "pip_install")

pip_install()

# Docker rules

git_repository(
    name = "io_bazel_rules_docker",
    # Invoke puller.par with python2
    # TODO(q3k): use upstream when py2/py3 bazel madness if fully fixed
    remote = "https://github.com/q3k/rules_docker",
    commit = "4642a2a7775e5713596bd6e37758735a0f38aa6e",
)
load(
    "@io_bazel_rules_docker//repositories:repositories.bzl",
    container_repositories = "repositories",
)
container_repositories()

# Docker base images

load("@io_bazel_rules_docker//container:container.bzl", "container_pull")
container_pull(
    name = "prodimage-bionic",
    registry = "index.docker.io",
    repository = "library/ubuntu",
    tag = "bionic-20190515",
    digest = "sha256:b36667c98cf8f68d4b7f1fb8e01f742c2ed26b5f0c965a788e98dfe589a4b3e4",
)

# HTTP stuff from the Internet
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file")
http_file(
	name = "factorio-headless",
    urls = ["https://factorio.com/get-download/0.16.51/headless/linux64"],
	sha256 = "6cb09f5ac87f16f8d5b43cef26c0ae26cc46a57a0382e253dfda032dc5bb367f",
	downloaded_file_path = "factorio.tar.xz",
)

# Go rules

http_archive(
    name = "io_bazel_rules_go",
    urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.18.1/rules_go-0.18.1.tar.gz"],
    sha256 = "77dfd303492f2634de7a660445ee2d3de2960cbd52f97d8c0dffa9362d3ddef9",
)

load("@io_bazel_rules_go//go:deps.bzl", "go_rules_dependencies", "go_register_toolchains")

go_rules_dependencies()

go_register_toolchains()

# Go Gazelle rules

http_archive(
    name = "bazel_gazelle",
    urls = ["https://github.com/bazelbuild/bazel-gazelle/releases/download/0.17.0/bazel-gazelle-0.17.0.tar.gz"],
    sha256 = "3c681998538231a2d24d0c07ed5a7658cb72bfb5fd4bf9911157c0e9ac6a2687",
)

load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository")

gazelle_dependencies()

# Go repositories

go_repository(
    name = "io_k8s_kubernetes",
    importpath = "k8s.io/kubernetes",
    # Get from HTTP instead, this repository is _big_
    urls = ["https://github.com/kubernetes/kubernetes/archive/v1.14.2.tar.gz"],
    sha256 = "1effa926aedb0ed51eadcef3d5d49fd9799ec4d018200f95f51fcaa2a2d2cbf4",
    strip_prefix = "kubernetes-1.14.2",
)

go_repository(
    name = "io_k8s_repo_infra",
    commit = "df02ded38f9506e5bbcbf21702034b4fef815f2f",
    importpath = "k8s.io/repo-infra",
)

go_repository(
    name = "com_github_ksonnet_kubecfg",
    commit = "59bc7dedf70e7496a2837207d8723f98f0e5f8e8",
    importpath = "github.com/ksonnet/kubecfg",
)

go_repository(
    name = "com_github_projectcalico_calicoctl",
    importpath = "github.com/projectcalico/calicoctl",
    # This fork implements explicit Bazel rules
    remote = "https://github.com/q3k/calicoctl",
    vcs = "git",
    commit = "1bc31862f07e7539ca493de9137ed1ad56cc9f43",
    build_file_generation = "off",
)

go_repository(
    name = "com_github_shirou_gopsutil",
    commit = "2cbc9195c892b304060269ef280375236d2fcac9",
    importpath = "github.com/shirou/gopsutil",
)

go_repository(
    name = "com_github_cloudflare_cfssl",
    commit = "768cd563887febaad559b511aaa5964823ccb4ab",
    importpath = "github.com/cloudflare/cfssl",
)

go_repository(
    name = "com_github_mattn_go_sqlite3",
    commit = "5994cc52dfa89a4ee21ac891b06fbc1ea02c52d3",
    importpath = "github.com/mattn/go-sqlite3",
)

go_repository(
    name = "com_github_sebastiaanklippert_go_wkhtmltopdf",
    commit = "72a7793efd38728796273861bb27d590cc33d9d4",
    importpath = "github.com/sebastiaanklippert/go-wkhtmltopdf",
)
