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

go_library(
    name = "gkenetworkparamset",
    srcs = [
        "gkenetworkparamset_controller.go",
        "gkenetworkparamset_metrics.go",
        "gnpcontroller_validations.go",
    ],
    importpath = "k8s.io/cloud-provider-gcp/pkg/controller/gkenetworkparamset",
    visibility = ["//visibility:public"],
    deps = [
        "//pkg/controllermetrics",
        "//pkg/util/node",
        "//providers/gce",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/apis/network/v1:network",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/client/network/clientset/versioned",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/client/network/informers/externalversions",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/client/network/informers/externalversions/network/v1:network",
        "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud",
        "//vendor/github.com/hashicorp/go-multierror",
        "//vendor/google.golang.org/api/compute/v1:compute",
        "//vendor/k8s.io/api/core/v1:core",
        "//vendor/k8s.io/apimachinery/pkg/api/errors",
        "//vendor/k8s.io/apimachinery/pkg/api/meta",
        "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:meta",
        "//vendor/k8s.io/apimachinery/pkg/labels",
        "//vendor/k8s.io/apimachinery/pkg/util/runtime",
        "//vendor/k8s.io/apimachinery/pkg/util/wait",
        "//vendor/k8s.io/client-go/informers/core/v1:core",
        "//vendor/k8s.io/client-go/listers/core/v1:core",
        "//vendor/k8s.io/client-go/tools/cache",
        "//vendor/k8s.io/client-go/util/workqueue",
        "//vendor/k8s.io/component-base/metrics",
        "//vendor/k8s.io/component-base/metrics/legacyregistry",
        "//vendor/k8s.io/component-base/metrics/prometheus/controllers",
        "//vendor/k8s.io/klog/v2:klog",
        "//vendor/k8s.io/utils/net",
        "//vendor/k8s.io/utils/strings/slices",
    ],
)

go_test(
    name = "gkenetworkparamset_test",
    srcs = ["gkenetworkparamset_controller_test.go"],
    embed = [":gkenetworkparamset"],
    deps = [
        "//pkg/util/node",
        "//providers/gce",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/apis/network/v1:network",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/client/network/clientset/versioned/fake",
        "//vendor/github.com/GoogleCloudPlatform/gke-networking-api/client/network/informers/externalversions",
        "//vendor/github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta",
        "//vendor/github.com/google/go-cmp/cmp",
        "//vendor/github.com/onsi/gomega",
        "//vendor/github.com/onsi/gomega/types",
        "//vendor/google.golang.org/api/compute/v1:compute",
        "//vendor/k8s.io/api/core/v1:core",
        "//vendor/k8s.io/apimachinery/pkg/api/errors",
        "//vendor/k8s.io/apimachinery/pkg/api/meta",
        "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:meta",
        "//vendor/k8s.io/client-go/informers",
        "//vendor/k8s.io/client-go/kubernetes/fake",
        "//vendor/k8s.io/client-go/tools/cache",
        "//vendor/k8s.io/component-base/metrics/prometheus/controllers",
    ],
)
