diff --git a/CHANGELOG.md b/CHANGELOG.md index 470e58a6be..4f676b01cf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,10 @@ - v1.15.x - v1.14.x +### Improvements + +- Provide detailed error for removed apiVersions. (https://github.com/pulumi/pulumi-kubernetes/pull/809). + ## 1.1.0 (September 18, 2019) ### Supported Kubernetes versions diff --git a/pkg/kinds/deprecated_test.go b/pkg/kinds/deprecated_test.go index a439cff90e..6e3ab36404 100644 --- a/pkg/kinds/deprecated_test.go +++ b/pkg/kinds/deprecated_test.go @@ -87,32 +87,6 @@ func TestSuggestedApiVersion(t *testing.T) { } } -// func TestRemovedApiVersion(t *testing.T) { -// type args struct { -// gvk GroupVersionKind -// version ServerVersion -// } -// tests := []struct { -// name string -// args args -// want bool -// }{ -// {"API exists", args{ -// GroupVersionKind{Group: "apps", Version: "v1", Kind: "Deployment"}, -// ServerVersion{Major: 1, Minor: 16}}, false}, -// {"API removed", args{ -// GroupVersionKind{Group: "extensions", Version: "v1beta1", Kind: "Deployment"}, -// ServerVersion{Major: 1, Minor: 16}}, true}, -// } -// for _, tt := range tests { -// t.Run(tt.name, func(t *testing.T) { -// if got := RemovedApiVersion(tt.args.gvk, tt.args.version); got != tt.want { -// t.Errorf("RemovedApiVersion() = %v, want %v", got, tt.want) -// } -// }) -// } -// } - func TestRemovedApiVersion(t *testing.T) { type args struct { gvk GroupVersionKind diff --git a/pkg/provider/provider.go b/pkg/provider/provider.go index 4718faa5a4..07207c40d1 100644 --- a/pkg/provider/provider.go +++ b/pkg/provider/provider.go @@ -447,12 +447,12 @@ func (k *kubeProvider) Check(ctx context.Context, req *pulumirpc.CheckRequest) ( return nil, err } - if !k.suppressDeprecationWarnings && kinds.DeprecatedApiVersion(gvk) { - _ = k.host.Log(ctx, diag.Warning, urn, gen.ApiVersionComment(gvk)) - } if removed, version := kinds.RemovedApiVersion(gvk, k.k8sVersion); removed { return nil, &kinds.RemovedApiError{GVK: gvk, Version: version} } + if !k.suppressDeprecationWarnings && kinds.DeprecatedApiVersion(gvk) { + _ = k.host.Log(ctx, diag.Warning, urn, gen.ApiVersionComment(gvk)) + } // If a default namespace is set on the provider for this resource, check if the resource has Namespaced // or Global scope. For namespaced resources, set the namespace to the default value if unset.