package(default_visibility = ["//visibility:public"])

load(
    "@io_bazel_rules_go//go:def.bzl",
    "go_library",
    "go_test",
)

go_test(
    name = "go_default_test",
    srcs = ["e2e_test.go"],
    importpath = "k8s.io/kubernetes/test/e2e",
    library = ":go_default_library",
    tags = ["e2e"],
    deps = [
        "//test/e2e/apimachinery:go_default_library",
        "//test/e2e/apps:go_default_library",
        "//test/e2e/auth:go_default_library",
        "//test/e2e/autoscaling:go_default_library",
        "//test/e2e/common:go_default_library",
        "//test/e2e/framework:go_default_library",
        "//test/e2e/instrumentation:go_default_library",
        "//test/e2e/kubectl:go_default_library",
        "//test/e2e/lifecycle:go_default_library",
        "//test/e2e/lifecycle/bootstrap:go_default_library",
        "//test/e2e/multicluster:go_default_library",
        "//test/e2e/network:go_default_library",
        "//test/e2e/node:go_default_library",
        "//test/e2e/scalability:go_default_library",
        "//test/e2e/scheduling:go_default_library",
        "//test/e2e/servicecatalog:go_default_library",
        "//test/e2e/storage:go_default_library",
        "//test/e2e/ui:go_default_library",
    ],
)

go_library(
    name = "go_default_library",
    srcs = [
        "e2e.go",
        "examples.go",
        "gke_local_ssd.go",
        "gke_node_pools.go",
    ],
    importpath = "k8s.io/kubernetes/test/e2e",
    deps = [
        "//pkg/api/testapi:go_default_library",
        "//pkg/api/v1/pod:go_default_library",
        "//pkg/cloudprovider/providers/azure:go_default_library",
        "//pkg/cloudprovider/providers/gce:go_default_library",
        "//pkg/kubectl/util/logs:go_default_library",
        "//pkg/version:go_default_library",
        "//test/e2e/common:go_default_library",
        "//test/e2e/framework:go_default_library",
        "//test/e2e/framework/ginkgowrapper:go_default_library",
        "//test/e2e/framework/metrics:go_default_library",
        "//test/e2e/generated:go_default_library",
        "//test/e2e/manifest:go_default_library",
        "//test/utils:go_default_library",
        "//vendor/github.com/golang/glog:go_default_library",
        "//vendor/github.com/onsi/ginkgo:go_default_library",
        "//vendor/github.com/onsi/ginkgo/config:go_default_library",
        "//vendor/github.com/onsi/ginkgo/reporters:go_default_library",
        "//vendor/github.com/onsi/gomega:go_default_library",
        "//vendor/k8s.io/api/core/v1:go_default_library",
        "//vendor/k8s.io/api/rbac/v1beta1:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/labels:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
        "//vendor/k8s.io/apiserver/pkg/authentication/serviceaccount:go_default_library",
        "//vendor/k8s.io/client-go/kubernetes:go_default_library",
    ],
)

# This is a handwritten rule. Do not delete, it will not be regenerated by
# update-bazel.sh.
genrule(
    name = "gen_e2e.test",
    testonly = 1,
    srcs = [":go_default_test"],
    outs = ["e2e.test"],
    cmd = "srcs=($(SRCS)); cp $$(dirname $${srcs[0]})/go_default_test $@;",
    output_to_bindir = 1,
)

filegroup(
    name = "package-srcs",
    srcs = glob(["**"]),
    tags = ["automanaged"],
    visibility = ["//visibility:private"],
)

filegroup(
    name = "all-srcs",
    srcs = [
        ":package-srcs",
        "//test/e2e/apimachinery:all-srcs",
        "//test/e2e/apps:all-srcs",
        "//test/e2e/auth:all-srcs",
        "//test/e2e/autoscaling:all-srcs",
        "//test/e2e/chaosmonkey:all-srcs",
        "//test/e2e/common:all-srcs",
        "//test/e2e/framework:all-srcs",
        "//test/e2e/generated:all-srcs",
        "//test/e2e/instrumentation:all-srcs",
        "//test/e2e/kubectl:all-srcs",
        "//test/e2e/lifecycle:all-srcs",
        "//test/e2e/manifest:all-srcs",
        "//test/e2e/multicluster:all-srcs",
        "//test/e2e/network:all-srcs",
        "//test/e2e/node:all-srcs",
        "//test/e2e/perftype:all-srcs",
        "//test/e2e/scalability:all-srcs",
        "//test/e2e/scheduling:all-srcs",
        "//test/e2e/servicecatalog:all-srcs",
        "//test/e2e/storage:all-srcs",
        "//test/e2e/testing-manifests:all-srcs",
        "//test/e2e/ui:all-srcs",
        "//test/e2e/upgrades:all-srcs",
    ],
    tags = ["automanaged"],
)
