From 9a04b3cb0865db0c3cf3d467b66e6dc95bd67a9d Mon Sep 17 00:00:00 2001 From: joshvanl Date: Thu, 27 Jan 2022 17:22:38 +0000 Subject: [PATCH] Return CR object from apply helper Signed-off-by: joshvanl --- internal/BUILD.bazel | 1 + .../certificaterequests/BUILD.bazel | 40 +++++++++++++++++++ .../controller/certificaterequests/apply.go | 8 ++-- .../certificaterequests/BUILD.bazel | 29 ++++++++++++++ 4 files changed, 73 insertions(+), 5 deletions(-) create mode 100644 internal/controller/certificaterequests/BUILD.bazel create mode 100644 test/integration/certificaterequests/BUILD.bazel diff --git a/internal/BUILD.bazel b/internal/BUILD.bazel index ccecdfa16..af2ae2ab8 100644 --- a/internal/BUILD.bazel +++ b/internal/BUILD.bazel @@ -14,6 +14,7 @@ filegroup( "//internal/apis/config/webhook:all-srcs", "//internal/apis/meta:all-srcs", "//internal/cainjector/feature:all-srcs", + "//internal/controller/certificaterequests:all-srcs", "//internal/controller/certificates:all-srcs", "//internal/controller/feature:all-srcs", "//internal/ingress:all-srcs", diff --git a/internal/controller/certificaterequests/BUILD.bazel b/internal/controller/certificaterequests/BUILD.bazel new file mode 100644 index 000000000..1c90ac14f --- /dev/null +++ b/internal/controller/certificaterequests/BUILD.bazel @@ -0,0 +1,40 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "go_default_library", + srcs = ["apply.go"], + importpath = "github.com/cert-manager/cert-manager/internal/controller/certificaterequests", + visibility = ["//:__subpackages__"], + deps = [ + "//pkg/apis/certmanager/v1:go_default_library", + "//pkg/client/clientset/versioned:go_default_library", + "@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library", + "@io_k8s_apimachinery//pkg/types:go_default_library", + "@io_k8s_utils//pointer:go_default_library", + ], +) + +go_test( + name = "go_default_test", + srcs = ["apply_test.go"], + embed = [":go_default_library"], + deps = [ + "//pkg/apis/certmanager/v1:go_default_library", + "@com_github_google_gofuzz//:go_default_library", + "@com_github_stretchr_testify//assert:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +) diff --git a/internal/controller/certificaterequests/apply.go b/internal/controller/certificaterequests/apply.go index ba031d1a0..a9b0a8199 100644 --- a/internal/controller/certificaterequests/apply.go +++ b/internal/controller/certificaterequests/apply.go @@ -35,17 +35,15 @@ import ( // The given fieldManager is will be used as the FieldManager in // the Apply call. // Always sets Force Apply to true. -func Apply(ctx context.Context, cl cmclient.Interface, fieldManager string, req *cmapi.CertificateRequest) error { +func Apply(ctx context.Context, cl cmclient.Interface, fieldManager string, req *cmapi.CertificateRequest) (*cmapi.CertificateRequest, error) { reqData, err := serializeApplyStatus(req) if err != nil { - return err + return nil, err } - _, err = cl.CertmanagerV1().CertificateRequests(req.Namespace).Patch( + return cl.CertmanagerV1().CertificateRequests(req.Namespace).Patch( ctx, req.Name, apitypes.ApplyPatchType, reqData, metav1.PatchOptions{Force: pointer.Bool(true), FieldManager: fieldManager}) - - return err } // ApplyStatus will make an Apply API call with the given client to the diff --git a/test/integration/certificaterequests/BUILD.bazel b/test/integration/certificaterequests/BUILD.bazel new file mode 100644 index 000000000..021783bc2 --- /dev/null +++ b/test/integration/certificaterequests/BUILD.bazel @@ -0,0 +1,29 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "go_default_test", + srcs = ["condition_list_type_test.go"], + deps = [ + "//pkg/apis/certmanager/v1:go_default_library", + "//pkg/util:go_default_library", + "//test/integration/framework:go_default_library", + "@com_github_stretchr_testify//assert:go_default_library", + "@io_k8s_api//core/v1:go_default_library", + "@io_k8s_apimachinery//pkg/apis/meta/v1:go_default_library", + "@io_k8s_utils//clock/testing:go_default_library", + ], +) + +filegroup( + name = "package-srcs", + srcs = glob(["**"]), + tags = ["automanaged"], + visibility = ["//visibility:private"], +) + +filegroup( + name = "all-srcs", + srcs = [":package-srcs"], + tags = ["automanaged"], + visibility = ["//visibility:public"], +)