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

licenses(["notice"])

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

go_library(
    name = "go_default_library",
    srcs = [
        "benchmark_util.go",
        "container.go",
        "doc.go",
        "gpus.go",
        "image_list.go",
        "node_problem_detector_linux.go",
        "resource_collector.go",
        "simple_mount.go",
        "util.go",
    ],
    tags = ["automanaged"],
    deps = [
        "//pkg/api:go_default_library",
        "//pkg/api/v1:go_default_library",
        "//pkg/api/v1/node:go_default_library",
        "//pkg/api/v1/pod:go_default_library",
        "//pkg/apis/componentconfig:go_default_library",
        "//pkg/apis/componentconfig/v1alpha1:go_default_library",
        "//pkg/client/clientset_generated/clientset:go_default_library",
        "//pkg/client/clientset_generated/clientset/typed/core/v1:go_default_library",
        "//pkg/kubelet/apis/cri:go_default_library",
        "//pkg/kubelet/apis/cri/v1alpha1/runtime:go_default_library",
        "//pkg/kubelet/apis/stats/v1alpha1:go_default_library",
        "//pkg/kubelet/metrics:go_default_library",
        "//pkg/kubelet/remote:go_default_library",
        "//pkg/metrics:go_default_library",
        "//pkg/util/procfs:go_default_library",
        "//test/e2e/common:go_default_library",
        "//test/e2e/framework:go_default_library",
        "//test/e2e/perftype:go_default_library",
        "//test/e2e_node/perftype:go_default_library",
        "//vendor/github.com/golang/glog:go_default_library",
        "//vendor/github.com/google/cadvisor/client/v2:go_default_library",
        "//vendor/github.com/google/cadvisor/info/v2:go_default_library",
        "//vendor/github.com/onsi/ginkgo:go_default_library",
        "//vendor/github.com/onsi/gomega:go_default_library",
        "//vendor/github.com/opencontainers/runc/libcontainer/cgroups:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/fields:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/labels:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/runtime:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    srcs = [
        "allocatable_eviction_test.go",
        "apparmor_test.go",
        "container_manager_test.go",
        "critical_pod_test.go",
        "density_test.go",
        "disk_eviction_test.go",
        "dynamic_kubelet_configuration_test.go",
        "e2e_node_suite_test.go",
        "garbage_collector_test.go",
        "image_id_test.go",
        "inode_eviction_test.go",
        "kubelet_test.go",
        "lifecycle_hook_test.go",
        "local_storage_allocatable_eviction_test.go",
        "local_storage_isolation_eviction_test.go",
        "log_path_test.go",
        "memory_eviction_test.go",
        "mirror_pod_test.go",
        "node_container_manager_test.go",
        "pods_container_manager_test.go",
        "resource_usage_test.go",
        "restart_test.go",
        "runtime_conformance_test.go",
        "security_context_test.go",
        "summary_test.go",
        "volume_manager_test.go",
    ],
    library = ":go_default_library",
    tags = [
        "automanaged",
        "integration",
    ],
    deps = [
        "//pkg/api:go_default_library",
        "//pkg/api/v1:go_default_library",
        "//pkg/api/v1/node:go_default_library",
        "//pkg/apis/componentconfig:go_default_library",
        "//pkg/client/clientset_generated/clientset:go_default_library",
        "//pkg/kubelet:go_default_library",
        "//pkg/kubelet/apis/stats/v1alpha1:go_default_library",
        "//pkg/kubelet/cm:go_default_library",
        "//pkg/kubelet/container:go_default_library",
        "//pkg/kubelet/dockershim/libdocker:go_default_library",
        "//pkg/kubelet/images:go_default_library",
        "//pkg/kubelet/metrics:go_default_library",
        "//pkg/kubelet/types:go_default_library",
        "//pkg/metrics:go_default_library",
        "//pkg/security/apparmor:go_default_library",
        "//test/e2e/common:go_default_library",
        "//test/e2e/framework:go_default_library",
        "//test/e2e_node/services:go_default_library",
        "//test/e2e_node/system:go_default_library",
        "//test/utils:go_default_library",
        "//vendor/github.com/coreos/go-systemd/util:go_default_library",
        "//vendor/github.com/davecgh/go-spew/spew:go_default_library",
        "//vendor/github.com/golang/glog:go_default_library",
        "//vendor/github.com/kardianos/osext: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/github.com/onsi/gomega/gstruct:go_default_library",
        "//vendor/github.com/onsi/gomega/types:go_default_library",
        "//vendor/github.com/spf13/pflag:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/api/resource: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:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
        "//vendor/k8s.io/apimachinery/pkg/watch:go_default_library",
        "//vendor/k8s.io/apiserver/pkg/util/feature:go_default_library",
        "//vendor/k8s.io/client-go/tools/cache:go_default_library",
    ],
)

genrule(
    name = "gen_e2e_node.test",
    testonly = 1,
    srcs = [":go_default_test"],
    outs = ["e2e_node.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_node/builder:all-srcs",
        "//test/e2e_node/environment:all-srcs",
        "//test/e2e_node/perftype:all-srcs",
        "//test/e2e_node/remote:all-srcs",
        "//test/e2e_node/runner/local:all-srcs",
        "//test/e2e_node/runner/remote:all-srcs",
        "//test/e2e_node/services:all-srcs",
        "//test/e2e_node/system:all-srcs",
    ],
    tags = ["automanaged"],
)
