diff --git a/WORKSPACE b/WORKSPACE index f4bc175508c..3e9c8c1c67f 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -2,8 +2,8 @@ load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") http_archive( name = "io_bazel_rules_go", - sha256 = "b7a62250a3a73277ade0ce306d22f122365b513f5402222403e507f2f997d421", - urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.16.3/rules_go-0.16.3.tar.gz"], + sha256 = "7be7dc01f1e0afdba6c8eb2b43d2fa01c743be1b9273ab1eaf6c233df078d705", + urls = ["https://github.com/bazelbuild/rules_go/releases/download/0.16.5/rules_go-0.16.5.tar.gz"], ) load("@io_bazel_rules_go//go:def.bzl", "go_register_toolchains", "go_rules_dependencies") @@ -14,8 +14,8 @@ go_register_toolchains() http_archive( name = "bazel_gazelle", - sha256 = "6e875ab4b6bf64a38c352887760f21203ab054676d9c1b274963907e0768740d", - urls = ["https://github.com/bazelbuild/bazel-gazelle/releases/download/0.15.0/bazel-gazelle-0.15.0.tar.gz"], + sha256 = "7949fc6cc17b5b191103e97481cf8889217263acf52e00b560683413af204fcb", + urls = ["https://github.com/bazelbuild/bazel-gazelle/releases/download/0.16.0/bazel-gazelle-0.16.0.tar.gz"], ) load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies", "go_repository") @@ -42,6 +42,13 @@ go_repository( importpath = "github.com/google/gofuzz", ) +go_repository( + name = "io_k8s_sigs_controller_runtime", + build_extra_args = ["-exclude=vendor"], + commit = "5558165425ef", + importpath = "sigs.k8s.io/controller-runtime", +) + go_repository( name = "io_k8s_api", build_file_proto_mode = "disable_global", @@ -749,7 +756,7 @@ go_repository( go_repository( name = "org_golang_x_net", build_file_proto_mode = "disable_global", - commit = "10aee1819953", + commit = "351d144fa1fc", importpath = "golang.org/x/net", ) @@ -761,7 +768,7 @@ go_repository( go_repository( name = "org_golang_x_sync", - commit = "1d60e4601c6f", + commit = "42b317875d0f", importpath = "golang.org/x/sync", ) @@ -788,3 +795,81 @@ go_repository( commit = "6cd1fcedba52", importpath = "golang.org/x/tools", ) + +go_repository( + name = "com_github_beorn7_perks", + commit = "3a771d992973", + importpath = "github.com/beorn7/perks", +) + +go_repository( + name = "com_github_go_logr_logr", + importpath = "github.com/go-logr/logr", + tag = "v0.1.0", +) + +go_repository( + name = "com_github_go_logr_zapr", + importpath = "github.com/go-logr/zapr", + tag = "v0.1.0", +) + +go_repository( + name = "com_github_golang_protobuf", + importpath = "github.com/golang/protobuf", + tag = "v1.2.0", +) + +go_repository( + name = "com_github_mattbaird_jsonpatch", + commit = "81af80346b1a", + importpath = "github.com/mattbaird/jsonpatch", +) + +go_repository( + name = "com_github_matttproud_golang_protobuf_extensions", + importpath = "github.com/matttproud/golang_protobuf_extensions", + tag = "v1.0.1", +) + +go_repository( + name = "com_github_prometheus_client_golang", + importpath = "github.com/prometheus/client_golang", + tag = "v0.9.2", +) + +go_repository( + name = "com_github_prometheus_client_model", + commit = "5c3871d89910", + importpath = "github.com/prometheus/client_model", +) + +go_repository( + name = "com_github_prometheus_common", + commit = "4724e9255275", + importpath = "github.com/prometheus/common", +) + +go_repository( + name = "com_github_prometheus_procfs", + commit = "1dc9a6cbc91a", + importpath = "github.com/prometheus/procfs", +) + +go_repository( + name = "org_uber_go_atomic", + importpath = "go.uber.org/atomic", + tag = "v1.3.2", +) + +go_repository( + name = "org_uber_go_multierr", + importpath = "go.uber.org/multierr", + tag = "v1.1.0", +) + +go_repository( + name = "org_uber_go_zap", + importpath = "go.uber.org/zap", + tag = "v1.9.1", +) diff --git a/backend/src/apiserver/model/BUILD.bazel b/backend/src/apiserver/model/BUILD.bazel index b457c9ed914..78b961de93b 100644 --- a/backend/src/apiserver/model/BUILD.bazel +++ b/backend/src/apiserver/model/BUILD.bazel @@ -3,6 +3,7 @@ load("@io_bazel_rules_go//go:def.bzl", "go_library") go_library( name = "go_default_library", srcs = [ + "db_status.go", "experiment.go", "job.go", "listable_model.go", diff --git a/backend/src/apiserver/storage/BUILD.bazel b/backend/src/apiserver/storage/BUILD.bazel index 11b569d4cb4..16379f2bea8 100644 --- a/backend/src/apiserver/storage/BUILD.bazel +++ b/backend/src/apiserver/storage/BUILD.bazel @@ -5,6 +5,7 @@ go_library( srcs = [ "db.go", "db_fake.go", + "db_status_store.go", "experiment_store.go", "job_store.go", "list_util.go", @@ -42,6 +43,7 @@ go_library( go_test( name = "go_default_test", srcs = [ + "db_status_store_test.go", "db_test.go", "experiment_store_test.go", "job_store_test.go", diff --git a/backend/src/crd/controller/viewer/BUILD.bazel b/backend/src/crd/controller/viewer/BUILD.bazel new file mode 100644 index 00000000000..1bdf39fbd8c --- /dev/null +++ b/backend/src/crd/controller/viewer/BUILD.bazel @@ -0,0 +1,27 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") + +go_library( + name = "go_default_library", + srcs = ["main.go"], + importpath = "github.com/kubeflow/pipelines/backend/src/crd/controller/viewer", + visibility = ["//visibility:private"], + deps = [ + "//backend/src/crd/controller/viewer/reconciler:go_default_library", + "//backend/src/crd/pkg/apis/viewer/v1alpha1:go_default_library", + "//backend/src/crd/pkg/signals:go_default_library", + "@com_github_golang_glog//:go_default_library", + "@io_k8s_api//apps/v1:go_default_library", + "@io_k8s_api//core/v1:go_default_library", + "@io_k8s_client_go//kubernetes/scheme:go_default_library", + "@io_k8s_client_go//plugin/pkg/client/auth/gcp:go_default_library", + "@io_k8s_client_go//tools/clientcmd:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/builder:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/client:go_default_library", + ], +) + +go_binary( + name = "viewer", + embed = [":go_default_library"], + visibility = ["//visibility:public"], +) diff --git a/backend/src/crd/controller/viewer/main.go b/backend/src/crd/controller/viewer/main.go index 478442378e1..14e0f29009c 100644 --- a/backend/src/crd/controller/viewer/main.go +++ b/backend/src/crd/controller/viewer/main.go @@ -26,11 +26,11 @@ import ( "github.com/kubeflow/pipelines/backend/src/crd/pkg/signals" viewerV1alpha1 "github.com/kubeflow/pipelines/backend/src/crd/pkg/apis/viewer/v1alpha1" - "github.com/kubernetes-sigs/controller-runtime/pkg/builder" appsv1 "k8s.io/api/apps/v1" corev1 "k8s.io/api/core/v1" "k8s.io/client-go/kubernetes/scheme" "k8s.io/client-go/tools/clientcmd" + "sigs.k8s.io/controller-runtime/pkg/builder" "sigs.k8s.io/controller-runtime/pkg/client" _ "k8s.io/client-go/plugin/pkg/client/auth/gcp" // Needed for GCP authentication. diff --git a/backend/src/crd/controller/viewer/reconciler/BUILD.bazel b/backend/src/crd/controller/viewer/reconciler/BUILD.bazel new file mode 100644 index 00000000000..561441047e1 --- /dev/null +++ b/backend/src/crd/controller/viewer/reconciler/BUILD.bazel @@ -0,0 +1,43 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "go_default_library", + srcs = ["reconciler.go"], + importpath = "github.com/kubeflow/pipelines/backend/src/crd/controller/viewer/reconciler", + visibility = ["//visibility:public"], + deps = [ + "//backend/src/crd/pkg/apis/viewer/v1alpha1:go_default_library", + "@com_github_golang_glog//:go_default_library", + "@io_k8s_api//apps/v1:go_default_library", + "@io_k8s_api//core/v1:go_default_library", + "@io_k8s_apimachinery//pkg/api/errors:go_default_library", + "@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library", + "@io_k8s_apimachinery//pkg/runtime:go_default_library", + "@io_k8s_apimachinery//pkg/types:go_default_library", + "@io_k8s_apimachinery//pkg/util/intstr:go_default_library", + "@io_k8s_apimachinery//pkg/util/runtime:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/client:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/controller/controllerutil:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/reconcile:go_default_library", + ], +) + +go_test( + name = "go_default_test", + srcs = ["reconciler_test.go"], + embed = [":go_default_library"], + deps = [ + "//backend/src/crd/pkg/apis/viewer/v1alpha1:go_default_library", + "@com_github_google_go_cmp//cmp:go_default_library", + "@com_github_google_go_cmp//cmp/cmpopts:go_default_library", + "@io_k8s_api//apps/v1:go_default_library", + "@io_k8s_api//core/v1:go_default_library", + "@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library", + "@io_k8s_apimachinery//pkg/types:go_default_library", + "@io_k8s_apimachinery//pkg/util/intstr:go_default_library", + "@io_k8s_client_go//kubernetes/scheme:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/client:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/client/fake:go_default_library", + "@io_k8s_sigs_controller_runtime//pkg/reconcile:go_default_library", + ], +) diff --git a/backend/src/crd/pkg/apis/viewer/BUILD.bazel b/backend/src/crd/pkg/apis/viewer/BUILD.bazel new file mode 100644 index 00000000000..8bfb733d09c --- /dev/null +++ b/backend/src/crd/pkg/apis/viewer/BUILD.bazel @@ -0,0 +1,8 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = ["register.go"], + importpath = "github.com/kubeflow/pipelines/backend/src/crd/pkg/apis/viewer", + visibility = ["//visibility:public"], +) diff --git a/backend/src/crd/pkg/apis/viewer/v1alpha1/BUILD.bazel b/backend/src/crd/pkg/apis/viewer/v1alpha1/BUILD.bazel new file mode 100644 index 00000000000..84e3c83fe74 --- /dev/null +++ b/backend/src/crd/pkg/apis/viewer/v1alpha1/BUILD.bazel @@ -0,0 +1,20 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "go_default_library", + srcs = [ + "doc.go", + "register.go", + "types.go", + "zz_generated.deepcopy.go", + ], + importpath = "github.com/kubeflow/pipelines/backend/src/crd/pkg/apis/viewer/v1alpha1", + visibility = ["//visibility:public"], + deps = [ + "//backend/src/crd/pkg/apis/viewer:go_default_library", + "@io_k8s_api//core/v1:go_default_library", + "@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library", + "@io_k8s_apimachinery//pkg/runtime:go_default_library", + "@io_k8s_apimachinery//pkg/runtime/schema:go_default_library", + ], +) diff --git a/go.mod b/go.mod index 07e3b6bc931..5a697e44439 100644 --- a/go.mod +++ b/go.mod @@ -46,7 +46,6 @@ require ( github.com/json-iterator/go v0.0.0-20180701071628-ab8a2e0c74be // indirect github.com/jtolds/gls v4.2.1+incompatible // indirect github.com/kataras/iris v10.6.7+incompatible - github.com/kubernetes-sigs/controller-runtime v0.1.9 github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect github.com/lib/pq v1.0.0 // indirect diff --git a/go.sum b/go.sum index 5e62e783f27..559d330d0a2 100644 --- a/go.sum +++ b/go.sum @@ -266,6 +266,7 @@ k8s.io/api v0.0.0-20180712090710-2d6f90ab1293 h1:hROmpFC7JMobXFXMmD7ZKZLhDKvr1IK k8s.io/api v0.0.0-20180712090710-2d6f90ab1293/go.mod h1:iuAfoD4hCxJ8Onx9kaTIt30j7jUFS00AXQi6QMi99vA= k8s.io/apimachinery v0.0.0-20180621070125-103fd098999d h1:MZjlsu9igBoVPZkXpIGoxI6EonqNsXXZU7hhvfQLkd4= k8s.io/apimachinery v0.0.0-20180621070125-103fd098999d/go.mod h1:ccL7Eh7zubPUSh9A3USN90/OzHNSVN6zxzde07TDCL0= +k8s.io/apimachinery v0.0.0-20190104073114-849b284f3b75 h1:dLhsGWh58R0WYgTCX6ZdaqSz2FltMZsk+ByHsUgMWRU= k8s.io/client-go v0.0.0-20180718001006-59698c7d9724 h1:6gXlQ4rPEmQ86ugMoxdryE8Pu/+2tvcN7ulE74xAWcw= k8s.io/client-go v0.0.0-20180718001006-59698c7d9724/go.mod h1:7vJpHMYJwNQCWgzmNV+VYUl1zCObLyodBc8nIyt8L5s= k8s.io/kube-openapi v0.0.0-20180719232738-d8ea2fe547a4 h1:C8xi0mJeE8wOFsLofmG7JVxRV2ZAgjYftRc9m2ypdmo=