From ec022149559dc9f2b9ff1109d41c1011b8168db2 Mon Sep 17 00:00:00 2001 From: Satish Matti Date: Tue, 28 Jan 2020 11:01:00 -0800 Subject: [PATCH] Promote backend config to GA --- pkg/annotations/service.go | 21 +++++++-- pkg/backendconfig/backendconfig.go | 10 ++-- pkg/backendconfig/backendconfig_test.go | 13 +++++- pkg/backendconfig/utils.go | 19 +++++++- pkg/backendconfig/validation.go | 8 ++-- pkg/backendconfig/validation_test.go | 46 +++++++++---------- pkg/backends/features/affinity_test.go | 30 ++++++------ pkg/backends/features/cdn_test.go | 34 +++++++------- .../features/customrequestheaders_test.go | 18 ++++---- pkg/backends/features/draining_test.go | 24 +++++----- pkg/backends/features/features_test.go | 14 +++--- pkg/backends/features/iap_test.go | 46 +++++++++---------- pkg/backends/features/securitypolicy_test.go | 32 ++++++------- pkg/backends/features/timeout_test.go | 12 ++--- pkg/common/operator/backendconfig.go | 4 +- pkg/common/operator/ingress.go | 4 +- pkg/common/operator/service.go | 4 +- pkg/common/typed/backendconfig.go | 24 +++++----- pkg/controller/controller.go | 12 ++--- pkg/controller/errors/errors.go | 4 +- pkg/controller/translator/translator.go | 4 +- pkg/controller/translator/translator_test.go | 2 +- pkg/metrics/metrics_test.go | 36 +++++++-------- pkg/test/utils.go | 2 +- pkg/utils/serviceport.go | 4 +- 25 files changed, 233 insertions(+), 194 deletions(-) diff --git a/pkg/annotations/service.go b/pkg/annotations/service.go index c133081c32..1d4b4d7335 100644 --- a/pkg/annotations/service.go +++ b/pkg/annotations/service.go @@ -48,14 +48,17 @@ const ( // on the Service, and is applied by the NEG Controller. NEGStatusKey = "cloud.google.com/neg-status" - // BackendConfigKey is a stringified JSON with two fields: + // BetaBackendConfigKey is a stringified JSON with two fields: // - "ports": a map of port names or port numbers to backendConfig names // - "default": denotes the default backendConfig name for all ports except // those are explicitly referenced. // Examples: // - '{"ports":{"my-https-port":"config-https","my-http-port":"config-http"}}' // - '{"default":"config-default","ports":{"my-https-port":"config-https"}}' - BackendConfigKey = "beta.cloud.google.com/backend-config" + BetaBackendConfigKey = "beta.cloud.google.com/backend-config" + + // BackendConfigKey is GA version of backend config key. + BackendConfigKey = "cloud.google.com/backend-config" // ProtocolHTTP protocol for a service ProtocolHTTP AppProtocol = "HTTP" @@ -256,7 +259,7 @@ type BackendConfigs struct { // GetBackendConfigs returns BackendConfigs for the service. func (svc *Service) GetBackendConfigs() (*BackendConfigs, error) { - val, ok := svc.v[BackendConfigKey] + val, ok := svc.getBackendConfigAnnotation() if !ok { return nil, ErrBackendConfigAnnotationMissing } @@ -270,3 +273,15 @@ func (svc *Service) GetBackendConfigs() (*BackendConfigs, error) { } return &configs, nil } + +// getBackendConfigAnnotation returns specified backendconfig annotation value. +// Returns false if both beta and ga annotations are not specified. +func (svc *Service) getBackendConfigAnnotation() (string, bool) { + for _, bcKey := range []string{BackendConfigKey, BetaBackendConfigKey} { + val, ok := svc.v[bcKey] + if ok { + return val, ok + } + } + return "", false +} diff --git a/pkg/backendconfig/backendconfig.go b/pkg/backendconfig/backendconfig.go index 9a4f9b7b2b..bb62188569 100644 --- a/pkg/backendconfig/backendconfig.go +++ b/pkg/backendconfig/backendconfig.go @@ -25,7 +25,7 @@ import ( "k8s.io/ingress-gce/pkg/annotations" apisbackendconfig "k8s.io/ingress-gce/pkg/apis/backendconfig" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/crd" ) @@ -44,13 +44,13 @@ func CRDMeta() *crd.CRDMeta { "backendconfig", "backendconfigs", ) - meta.AddValidationInfo("k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1.BackendConfig", backendconfigv1beta1.GetOpenAPIDefinitions) + meta.AddValidationInfo("k8s.io/ingress-gce/pkg/apis/backendconfig/v1.BackendConfig", backendconfigv1.GetOpenAPIDefinitions) return meta } // GetBackendConfigForServicePort returns the corresponding BackendConfig for // the given ServicePort if specified. -func GetBackendConfigForServicePort(backendConfigLister cache.Store, svc *apiv1.Service, svcPort *apiv1.ServicePort) (*backendconfigv1beta1.BackendConfig, error) { +func GetBackendConfigForServicePort(backendConfigLister cache.Store, svc *apiv1.Service, svcPort *apiv1.ServicePort) (*backendconfigv1.BackendConfig, error) { backendConfigs, err := annotations.FromService(svc).GetBackendConfigs() if err != nil { // If the user did not provide the annotation at all, then we @@ -67,7 +67,7 @@ func GetBackendConfigForServicePort(backendConfigLister cache.Store, svc *apiv1. } obj, exists, err := backendConfigLister.Get( - &backendconfigv1beta1.BackendConfig{ + &backendconfigv1.BackendConfig{ ObjectMeta: metav1.ObjectMeta{ Name: configName, Namespace: svc.Namespace, @@ -80,5 +80,5 @@ func GetBackendConfigForServicePort(backendConfigLister cache.Store, svc *apiv1. return nil, ErrBackendConfigDoesNotExist } - return obj.(*backendconfigv1beta1.BackendConfig), nil + return obj.(*backendconfigv1.BackendConfig), nil } diff --git a/pkg/backendconfig/backendconfig_test.go b/pkg/backendconfig/backendconfig_test.go index 0ba30a213d..4c2a0d298c 100644 --- a/pkg/backendconfig/backendconfig_test.go +++ b/pkg/backendconfig/backendconfig_test.go @@ -24,7 +24,7 @@ import ( apiv1 "k8s.io/api/core/v1" "k8s.io/client-go/tools/cache" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" ) func TestGetBackendConfigForServicePort(t *testing.T) { @@ -33,9 +33,18 @@ func TestGetBackendConfigForServicePort(t *testing.T) { svc *apiv1.Service svcPort *apiv1.ServicePort getFunc func(obj interface{}) (item interface{}, exists bool, err error) - expectedConfig *backendconfigv1beta1.BackendConfig + expectedConfig *backendconfigv1.BackendConfig expectedErr error }{ + { + desc: "service port name with backend config beta annotation key", + svc: SvcWithTestConfigBeta, + svcPort: &apiv1.ServicePort{Name: "port1"}, + getFunc: func(obj interface{}) (interface{}, bool, error) { + return TestBackendConfig, true, nil + }, + expectedConfig: TestBackendConfig, + }, { desc: "service port name with backend config", svc: SvcWithTestConfig, diff --git a/pkg/backendconfig/utils.go b/pkg/backendconfig/utils.go index 6361173183..8d2e5a4ace 100644 --- a/pkg/backendconfig/utils.go +++ b/pkg/backendconfig/utils.go @@ -17,7 +17,7 @@ import ( "strconv" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" apiv1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -25,7 +25,7 @@ import ( // The below vars are used for sharing unit testing types with multiple packages. var ( - TestBackendConfig = &backendconfigv1beta1.BackendConfig{ + TestBackendConfig = &backendconfigv1.BackendConfig{ ObjectMeta: metav1.ObjectMeta{ Name: "config-test", Namespace: "test", @@ -59,6 +59,21 @@ var ( }, } + SvcWithTestConfigBeta = &apiv1.Service{ + ObjectMeta: metav1.ObjectMeta{ + Name: "svc-test-config-beta", + Namespace: "test", + Annotations: map[string]string{ + annotations.BetaBackendConfigKey: `{"ports": {"port1": "config-test"}}`, + }, + }, + Spec: apiv1.ServiceSpec{ + Ports: []apiv1.ServicePort{ + {Name: "port1"}, + }, + }, + } + SvcWithTestConfigPortNumber = &apiv1.Service{ ObjectMeta: metav1.ObjectMeta{ Name: "svc-test-config-port-number", diff --git a/pkg/backendconfig/validation.go b/pkg/backendconfig/validation.go index 1892523463..f711380477 100644 --- a/pkg/backendconfig/validation.go +++ b/pkg/backendconfig/validation.go @@ -21,7 +21,7 @@ import ( meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" ) const ( @@ -35,7 +35,7 @@ var supportedAffinities = map[string]bool{ "GENERATED_COOKIE": true, } -func Validate(kubeClient kubernetes.Interface, beConfig *backendconfigv1beta1.BackendConfig) error { +func Validate(kubeClient kubernetes.Interface, beConfig *backendconfigv1.BackendConfig) error { if beConfig == nil { return nil } @@ -53,7 +53,7 @@ func Validate(kubeClient kubernetes.Interface, beConfig *backendconfigv1beta1.Ba // TODO(rramkumar): Return errors as constants so that the unit tests can distinguish // between which error is returned. -func validateIAP(kubeClient kubernetes.Interface, beConfig *backendconfigv1beta1.BackendConfig) error { +func validateIAP(kubeClient kubernetes.Interface, beConfig *backendconfigv1.BackendConfig) error { // If IAP settings are not found or IAP is not enabled then don't bother continuing. if beConfig.Spec.Iap == nil || beConfig.Spec.Iap.Enabled == false { return nil @@ -83,7 +83,7 @@ func validateIAP(kubeClient kubernetes.Interface, beConfig *backendconfigv1beta1 return nil } -func validateSessionAffinity(kubeClient kubernetes.Interface, beConfig *backendconfigv1beta1.BackendConfig) error { +func validateSessionAffinity(kubeClient kubernetes.Interface, beConfig *backendconfigv1.BackendConfig) error { if beConfig.Spec.SessionAffinity == nil { return nil } diff --git a/pkg/backendconfig/validation_test.go b/pkg/backendconfig/validation_test.go index f19c333097..ab1792f076 100644 --- a/pkg/backendconfig/validation_test.go +++ b/pkg/backendconfig/validation_test.go @@ -23,21 +23,21 @@ import ( meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/client-go/kubernetes" "k8s.io/client-go/kubernetes/fake" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" ) var ( goodTTL int64 = 86400 badTTL int64 = 86400 + 1 - defaultBeConfig = &backendconfigv1beta1.BackendConfig{ + defaultBeConfig = &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ SecretName: "foo", }, }, @@ -49,7 +49,7 @@ func TestValidateIAP(t *testing.T) { testCases := []struct { desc string init func(kubeClient kubernetes.Interface) - beConfig *backendconfigv1beta1.BackendConfig + beConfig *backendconfigv1.BackendConfig expectError bool }{ { @@ -120,15 +120,15 @@ func TestValidateIAP(t *testing.T) { }, { desc: "iap and cdn enabled at the same time", - beConfig: &backendconfigv1beta1.BackendConfig{ + beConfig: &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, }, - Cdn: &backendconfigv1beta1.CDNConfig{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, }, }, @@ -166,18 +166,18 @@ func TestValidateIAP(t *testing.T) { func TestValidateSessionAffinity(t *testing.T) { testCases := []struct { desc string - beConfig *backendconfigv1beta1.BackendConfig + beConfig *backendconfigv1.BackendConfig expectError bool }{ { desc: "unsupported affinity type", - beConfig: &backendconfigv1beta1.BackendConfig{ + beConfig: &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "WRONG_TYPE", }, }, @@ -186,12 +186,12 @@ func TestValidateSessionAffinity(t *testing.T) { }, { desc: "supported affinity type", - beConfig: &backendconfigv1beta1.BackendConfig{ + beConfig: &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "CLIENT_IP", }, }, @@ -200,12 +200,12 @@ func TestValidateSessionAffinity(t *testing.T) { }, { desc: "unsupported ttl value", - beConfig: &backendconfigv1beta1.BackendConfig{ + beConfig: &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityCookieTtlSec: &badTTL, }, }, @@ -214,12 +214,12 @@ func TestValidateSessionAffinity(t *testing.T) { }, { desc: "supported ttl value", - beConfig: &backendconfigv1beta1.BackendConfig{ + beConfig: &backendconfigv1.BackendConfig{ ObjectMeta: meta_v1.ObjectMeta{ Namespace: "default", }, - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityCookieTtlSec: &goodTTL, }, }, diff --git a/pkg/backends/features/affinity_test.go b/pkg/backends/features/affinity_test.go index ba34ec2343..2401e0e6cb 100644 --- a/pkg/backends/features/affinity_test.go +++ b/pkg/backends/features/affinity_test.go @@ -19,7 +19,7 @@ package features import ( "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -36,8 +36,8 @@ func TestEnsureAffinity(t *testing.T) { { desc: "affinity settings missing from spec, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{}, + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{}, }, }, be: &composite.BackendService{ @@ -49,9 +49,9 @@ func TestEnsureAffinity(t *testing.T) { { desc: "sessionaffinity setting differing, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "CLIENT_IP", }, }, @@ -65,9 +65,9 @@ func TestEnsureAffinity(t *testing.T) { { desc: "affinity ttl setting differing, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityCookieTtlSec: &testTTL, }, }, @@ -81,9 +81,9 @@ func TestEnsureAffinity(t *testing.T) { { desc: "sessionaffinity and ttl settings differing, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "CLIENT_IP", AffinityCookieTtlSec: &testTTL, }, @@ -99,9 +99,9 @@ func TestEnsureAffinity(t *testing.T) { { desc: "affinity settings identical, no updated needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "CLIENT_IP", AffinityCookieTtlSec: &testTTL, }, diff --git a/pkg/backends/features/cdn_test.go b/pkg/backends/features/cdn_test.go index 98ad7631a1..88da114348 100644 --- a/pkg/backends/features/cdn_test.go +++ b/pkg/backends/features/cdn_test.go @@ -19,7 +19,7 @@ package features import ( "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -34,8 +34,8 @@ func TestEnsureCDN(t *testing.T) { { desc: "cdn setting are missing from spec, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ Cdn: nil, }, }, @@ -53,9 +53,9 @@ func TestEnsureCDN(t *testing.T) { { desc: "cache policies are missing from spec, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Cdn: &backendconfigv1beta1.CDNConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, }, }, @@ -74,11 +74,11 @@ func TestEnsureCDN(t *testing.T) { { desc: "settings are identical, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Cdn: &backendconfigv1beta1.CDNConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, - CachePolicy: &backendconfigv1beta1.CacheKeyPolicy{ + CachePolicy: &backendconfigv1.CacheKeyPolicy{ IncludeHost: true, }, }, @@ -98,11 +98,11 @@ func TestEnsureCDN(t *testing.T) { { desc: "cache settings are different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Cdn: &backendconfigv1beta1.CDNConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, - CachePolicy: &backendconfigv1beta1.CacheKeyPolicy{ + CachePolicy: &backendconfigv1.CacheKeyPolicy{ IncludeHost: true, IncludeQueryString: false, IncludeProtocol: false, @@ -126,9 +126,9 @@ func TestEnsureCDN(t *testing.T) { { desc: "enabled setting is different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Cdn: &backendconfigv1beta1.CDNConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, }, }, diff --git a/pkg/backends/features/customrequestheaders_test.go b/pkg/backends/features/customrequestheaders_test.go index b229a8fa02..b2de00ee3c 100644 --- a/pkg/backends/features/customrequestheaders_test.go +++ b/pkg/backends/features/customrequestheaders_test.go @@ -19,7 +19,7 @@ package features import ( "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -35,16 +35,16 @@ func TestEnsureCustomRequestHeaders(t *testing.T) { }{ { desc: "custom Request Headers missing from both ends, no update needed", - sp: utils.ServicePort{BackendConfig: &backendconfigv1beta1.BackendConfig{}}, + sp: utils.ServicePort{BackendConfig: &backendconfigv1.BackendConfig{}}, be: &composite.BackendService{}, updateExpected: false, }, { desc: "settings are identical, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - CustomRequestHeaders: &backendconfigv1beta1.CustomRequestHeadersConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + CustomRequestHeaders: &backendconfigv1.CustomRequestHeadersConfig{ Headers: testCustomHeader, }, }, @@ -58,9 +58,9 @@ func TestEnsureCustomRequestHeaders(t *testing.T) { { desc: "settings are different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - CustomRequestHeaders: &backendconfigv1beta1.CustomRequestHeadersConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + CustomRequestHeaders: &backendconfigv1.CustomRequestHeadersConfig{ Headers: testCustomHeader, }, }, @@ -74,7 +74,7 @@ func TestEnsureCustomRequestHeaders(t *testing.T) { { desc: "backend config empty", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{}, + BackendConfig: &backendconfigv1.BackendConfig{}, }, be: &composite.BackendService{ CustomRequestHeaders: testCustomHeader, diff --git a/pkg/backends/features/draining_test.go b/pkg/backends/features/draining_test.go index c71eda1ed6..83b713c4f8 100644 --- a/pkg/backends/features/draining_test.go +++ b/pkg/backends/features/draining_test.go @@ -19,7 +19,7 @@ package features import ( "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -34,9 +34,9 @@ func TestEnsureDraining(t *testing.T) { { desc: "connection draining timeout setting is defined on serviceport but missing from spec, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - ConnectionDraining: &backendconfigv1beta1.ConnectionDrainingConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + ConnectionDraining: &backendconfigv1.ConnectionDrainingConfig{ DrainingTimeoutSec: 111, }, }, @@ -50,8 +50,8 @@ func TestEnsureDraining(t *testing.T) { { desc: "connection draining setting are missing from spec, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{}, + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{}, }, }, be: &composite.BackendService{ @@ -64,9 +64,9 @@ func TestEnsureDraining(t *testing.T) { { desc: "connection draining settings are identical, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - ConnectionDraining: &backendconfigv1beta1.ConnectionDrainingConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + ConnectionDraining: &backendconfigv1.ConnectionDrainingConfig{ DrainingTimeoutSec: 111, }, }, @@ -82,9 +82,9 @@ func TestEnsureDraining(t *testing.T) { { desc: "connection draining settings differs, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - ConnectionDraining: &backendconfigv1beta1.ConnectionDrainingConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + ConnectionDraining: &backendconfigv1.ConnectionDrainingConfig{ DrainingTimeoutSec: 111, }, }, diff --git a/pkg/backends/features/features_test.go b/pkg/backends/features/features_test.go index 7002e439d1..1892117e88 100644 --- a/pkg/backends/features/features_test.go +++ b/pkg/backends/features/features_test.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils" ) @@ -49,9 +49,9 @@ var ( svcPortWithSecurityPolicy = utils.ServicePort{ ID: fakeSvcPortID, - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "policy-test", }, }, @@ -61,9 +61,9 @@ var ( svcPortWithHTTP2SecurityPolicy = utils.ServicePort{ ID: fakeSvcPortID, Protocol: annotations.ProtocolHTTP2, - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "policy-test", }, }, diff --git a/pkg/backends/features/iap_test.go b/pkg/backends/features/iap_test.go index e393fe39d0..e2f99431f2 100644 --- a/pkg/backends/features/iap_test.go +++ b/pkg/backends/features/iap_test.go @@ -21,7 +21,7 @@ import ( "fmt" "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -36,8 +36,8 @@ func TestEnsureIAP(t *testing.T) { { desc: "iap settings are missing from spec, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ Iap: nil, }, }, @@ -54,11 +54,11 @@ func TestEnsureIAP(t *testing.T) { { desc: "settings are identical, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ ClientID: "foo", ClientSecret: "bar", }, @@ -78,11 +78,11 @@ func TestEnsureIAP(t *testing.T) { { desc: "no existing settings, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ ClientID: "foo", ClientSecret: "baz", }, @@ -98,11 +98,11 @@ func TestEnsureIAP(t *testing.T) { { desc: "client id is different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ ClientID: "foo", ClientSecret: "baz", }, @@ -122,11 +122,11 @@ func TestEnsureIAP(t *testing.T) { { desc: "client secret is different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ ClientID: "foo", ClientSecret: "baz", }, @@ -146,11 +146,11 @@ func TestEnsureIAP(t *testing.T) { { desc: "enabled setting is different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: false, - OAuthClientCredentials: &backendconfigv1beta1.OAuthClientCredentials{ + OAuthClientCredentials: &backendconfigv1.OAuthClientCredentials{ ClientID: "foo", ClientSecret: "baz", }, diff --git a/pkg/backends/features/securitypolicy_test.go b/pkg/backends/features/securitypolicy_test.go index d8057b71b6..2fc5081db4 100644 --- a/pkg/backends/features/securitypolicy_test.go +++ b/pkg/backends/features/securitypolicy_test.go @@ -28,7 +28,7 @@ import ( "github.com/GoogleCloudPlatform/k8s-cloud-provider/pkg/cloud/meta" "k8s.io/legacy-cloud-providers/gce" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -46,15 +46,15 @@ func TestEnsureSecurityPolicy(t *testing.T) { testCases := []struct { desc string currentBackendService *composite.BackendService - desiredConfig *backendconfigv1beta1.BackendConfig + desiredConfig *backendconfigv1.BackendConfig expectSetCall bool }{ { desc: "attach-policy", currentBackendService: &composite.BackendService{}, - desiredConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + desiredConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "policy-1", }, }, @@ -66,9 +66,9 @@ func TestEnsureSecurityPolicy(t *testing.T) { currentBackendService: &composite.BackendService{ SecurityPolicy: "https://www.googleapis.com/compute/beta/projects/test-project/global/securityPolicies/policy-2", }, - desiredConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + desiredConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "policy-1", }, }, @@ -80,9 +80,9 @@ func TestEnsureSecurityPolicy(t *testing.T) { currentBackendService: &composite.BackendService{ SecurityPolicy: "https://www.googleapis.com/compute/beta/projects/test-project/global/securityPolicies/policy-1", }, - desiredConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + desiredConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "", }, }, @@ -94,9 +94,9 @@ func TestEnsureSecurityPolicy(t *testing.T) { currentBackendService: &composite.BackendService{ SecurityPolicy: "https://www.googleapis.com/compute/beta/projects/test-project/global/securityPolicies/policy-1", }, - desiredConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + desiredConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "policy-1", }, }, @@ -105,14 +105,14 @@ func TestEnsureSecurityPolicy(t *testing.T) { { desc: "empty-policy", currentBackendService: &composite.BackendService{}, - desiredConfig: &backendconfigv1beta1.BackendConfig{}, + desiredConfig: &backendconfigv1.BackendConfig{}, }, { desc: "no-specified-policy", currentBackendService: &composite.BackendService{ SecurityPolicy: "https://www.googleapis.com/compute/beta/projects/test-project/global/securityPolicies/policy-1", }, - desiredConfig: &backendconfigv1beta1.BackendConfig{}, + desiredConfig: &backendconfigv1.BackendConfig{}, expectSetCall: false, }, } diff --git a/pkg/backends/features/timeout_test.go b/pkg/backends/features/timeout_test.go index aff9611613..83ea8079f3 100644 --- a/pkg/backends/features/timeout_test.go +++ b/pkg/backends/features/timeout_test.go @@ -19,7 +19,7 @@ package features import ( "testing" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/composite" "k8s.io/ingress-gce/pkg/utils" ) @@ -35,15 +35,15 @@ func TestEnsureTimeout(t *testing.T) { }{ { desc: "timeout setting missing from both ends, no update needed", - sp: utils.ServicePort{BackendConfig: &backendconfigv1beta1.BackendConfig{}}, + sp: utils.ServicePort{BackendConfig: &backendconfigv1.BackendConfig{}}, be: &composite.BackendService{}, updateExpected: false, }, { desc: "settings are identical, no update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ TimeoutSec: &testPortBC, }, }, @@ -56,8 +56,8 @@ func TestEnsureTimeout(t *testing.T) { { desc: "settings are different, update needed", sp: utils.ServicePort{ - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ TimeoutSec: &testPortBC, }, }, diff --git a/pkg/common/operator/backendconfig.go b/pkg/common/operator/backendconfig.go index ac701874da..8f1a017085 100644 --- a/pkg/common/operator/backendconfig.go +++ b/pkg/common/operator/backendconfig.go @@ -4,14 +4,14 @@ import ( "k8s.io/klog" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" api_v1 "k8s.io/api/core/v1" ) // doesServiceReferenceBackendConfig returns true if the passed in Service directly references // the passed in BackendConfig. -func doesServiceReferenceBackendConfig(svc *api_v1.Service, beConfig *backendconfigv1beta1.BackendConfig) bool { +func doesServiceReferenceBackendConfig(svc *api_v1.Service, beConfig *backendconfigv1.BackendConfig) bool { if svc.Namespace != beConfig.Namespace { return false } diff --git a/pkg/common/operator/ingress.go b/pkg/common/operator/ingress.go index d25c04db92..9b73249f88 100644 --- a/pkg/common/operator/ingress.go +++ b/pkg/common/operator/ingress.go @@ -3,7 +3,7 @@ package operator import ( "fmt" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" frontendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/frontendconfig/v1beta1" api_v1 "k8s.io/api/core/v1" @@ -69,7 +69,7 @@ func (op *IngressesOperator) ReferencesService(svc *api_v1.Service) *IngressesOp } // ReferencesBackendConfig returns the Ingresses that references the given BackendConfig. -func (op *IngressesOperator) ReferencesBackendConfig(beConfig *backendconfigv1beta1.BackendConfig, svcsOp *ServicesOperator) *IngressesOperator { +func (op *IngressesOperator) ReferencesBackendConfig(beConfig *backendconfigv1.BackendConfig, svcsOp *ServicesOperator) *IngressesOperator { dupes := map[string]bool{} var i []*v1beta1.Ingress diff --git a/pkg/common/operator/service.go b/pkg/common/operator/service.go index a5a62afec3..853dcffd46 100644 --- a/pkg/common/operator/service.go +++ b/pkg/common/operator/service.go @@ -3,7 +3,7 @@ package operator import ( "fmt" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils" api_v1 "k8s.io/api/core/v1" @@ -29,7 +29,7 @@ func (op *ServicesOperator) AsList() []*api_v1.Service { } // ReferencesBackendConfig returns the Services that reference the given BackendConfig. -func (op *ServicesOperator) ReferencesBackendConfig(beConfig *backendconfigv1beta1.BackendConfig) *ServicesOperator { +func (op *ServicesOperator) ReferencesBackendConfig(beConfig *backendconfigv1.BackendConfig) *ServicesOperator { dupes := map[string]bool{} var s []*api_v1.Service diff --git a/pkg/common/typed/backendconfig.go b/pkg/common/typed/backendconfig.go index 898f656797..3dc9d90823 100644 --- a/pkg/common/typed/backendconfig.go +++ b/pkg/common/typed/backendconfig.go @@ -1,7 +1,7 @@ package typed import ( - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/client-go/tools/cache" ) @@ -17,23 +17,23 @@ type BackendConfigStore struct { } // Add implements Store. -func (s *BackendConfigStore) Add(b *backendconfigv1beta1.BackendConfig) error { return s.store.Add(b) } +func (s *BackendConfigStore) Add(b *backendconfigv1.BackendConfig) error { return s.store.Add(b) } // Update implements Store. -func (s *BackendConfigStore) Update(b *backendconfigv1beta1.BackendConfig) error { +func (s *BackendConfigStore) Update(b *backendconfigv1.BackendConfig) error { return s.store.Update(b) } // Delete implements Store. -func (s *BackendConfigStore) Delete(b *backendconfigv1beta1.BackendConfig) error { +func (s *BackendConfigStore) Delete(b *backendconfigv1.BackendConfig) error { return s.store.Delete(b) } // List implements Store. -func (s *BackendConfigStore) List() []*backendconfigv1beta1.BackendConfig { - var ret []*backendconfigv1beta1.BackendConfig +func (s *BackendConfigStore) List() []*backendconfigv1.BackendConfig { + var ret []*backendconfigv1.BackendConfig for _, obj := range s.store.List() { - ret = append(ret, obj.(*backendconfigv1beta1.BackendConfig)) + ret = append(ret, obj.(*backendconfigv1.BackendConfig)) } return ret } @@ -42,25 +42,25 @@ func (s *BackendConfigStore) List() []*backendconfigv1beta1.BackendConfig { func (s *BackendConfigStore) ListKeys() []string { return s.store.ListKeys() } // Get implements Store. -func (s *BackendConfigStore) Get(b *backendconfigv1beta1.BackendConfig) (*backendconfigv1beta1.BackendConfig, bool, error) { +func (s *BackendConfigStore) Get(b *backendconfigv1.BackendConfig) (*backendconfigv1.BackendConfig, bool, error) { item, exists, err := s.store.Get(b) if item == nil { return nil, exists, err } - return item.(*backendconfigv1beta1.BackendConfig), exists, err + return item.(*backendconfigv1.BackendConfig), exists, err } // GetByKey implements Store. -func (s *BackendConfigStore) GetByKey(key string) (*backendconfigv1beta1.BackendConfig, bool, error) { +func (s *BackendConfigStore) GetByKey(key string) (*backendconfigv1.BackendConfig, bool, error) { item, exists, err := s.store.GetByKey(key) if item == nil { return nil, exists, err } - return item.(*backendconfigv1beta1.BackendConfig), exists, err + return item.(*backendconfigv1.BackendConfig), exists, err } // Resync implements Store. func (s *BackendConfigStore) Resync() error { return s.store.Resync() } // This function is mostly likely not useful for ordinary consumers. -// func (s *BackendConfigStore) Replace(items []*backendconfigv1beta1.BackendConfig, string) error {} +// func (s *BackendConfigStore) Replace(items []*backendconfigv1.BackendConfig, string) error {} diff --git a/pkg/controller/controller.go b/pkg/controller/controller.go index d0fc01640f..c51b92becf 100644 --- a/pkg/controller/controller.go +++ b/pkg/controller/controller.go @@ -34,7 +34,7 @@ import ( "k8s.io/client-go/tools/cache" "k8s.io/client-go/tools/record" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" frontendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/frontendconfig/v1beta1" "k8s.io/ingress-gce/pkg/backends" "k8s.io/ingress-gce/pkg/common/operator" @@ -204,21 +204,21 @@ func NewLoadBalancerController( // BackendConfig event handlers. ctx.BackendConfigInformer.AddEventHandler(cache.ResourceEventHandlerFuncs{ AddFunc: func(obj interface{}) { - beConfig := obj.(*backendconfigv1beta1.BackendConfig) + beConfig := obj.(*backendconfigv1.BackendConfig) ings := operator.Ingresses(ctx.Ingresses().List()).ReferencesBackendConfig(beConfig, operator.Services(ctx.Services().List())).AsList() lbc.ingQueue.Enqueue(convert(ings)...) }, UpdateFunc: func(old, cur interface{}) { if !reflect.DeepEqual(old, cur) { - beConfig := cur.(*backendconfigv1beta1.BackendConfig) + beConfig := cur.(*backendconfigv1.BackendConfig) ings := operator.Ingresses(ctx.Ingresses().List()).ReferencesBackendConfig(beConfig, operator.Services(ctx.Services().List())).AsList() lbc.ingQueue.Enqueue(convert(ings)...) } }, DeleteFunc: func(obj interface{}) { - var beConfig *backendconfigv1beta1.BackendConfig + var beConfig *backendconfigv1.BackendConfig var ok, beOk bool - beConfig, ok = obj.(*backendconfigv1beta1.BackendConfig) + beConfig, ok = obj.(*backendconfigv1.BackendConfig) if !ok { // This can happen if the watch is closed and misses the delete event state, stateOk := obj.(cache.DeletedFinalStateUnknown) @@ -227,7 +227,7 @@ func NewLoadBalancerController( return } - beConfig, beOk = state.Obj.(*backendconfigv1beta1.BackendConfig) + beConfig, beOk = state.Obj.(*backendconfigv1.BackendConfig) if !beOk { klog.Errorf("Wanted backendconfig obj, got %+v", state.Obj) return diff --git a/pkg/controller/errors/errors.go b/pkg/controller/errors/errors.go index 32a034e3a3..6ddd09da9a 100644 --- a/pkg/controller/errors/errors.go +++ b/pkg/controller/errors/errors.go @@ -23,7 +23,7 @@ import ( "k8s.io/apimachinery/pkg/types" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils" ) @@ -83,7 +83,7 @@ func (e ErrSvcBackendConfig) Error() string { // ErrBackendConfigValidation is returned when there was an error validating a BackendConfig. type ErrBackendConfigValidation struct { - backendconfigv1beta1.BackendConfig + backendconfigv1.BackendConfig Err error } diff --git a/pkg/controller/translator/translator.go b/pkg/controller/translator/translator.go index 20e8a57eee..42561ad09a 100644 --- a/pkg/controller/translator/translator.go +++ b/pkg/controller/translator/translator.go @@ -32,7 +32,7 @@ import ( "k8s.io/client-go/tools/cache" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/backendconfig" "k8s.io/ingress-gce/pkg/context" "k8s.io/ingress-gce/pkg/controller/errors" @@ -119,7 +119,7 @@ func setAppProtocol(sp *utils.ServicePort, svc *api_v1.Service, port *api_v1.Ser // maybeEnableBackendConfig sets the backendConfig for the service port if necessary func (t *Translator) maybeEnableBackendConfig(sp *utils.ServicePort, svc *api_v1.Service, port *api_v1.ServicePort) error { - var beConfig *backendconfigv1beta1.BackendConfig + var beConfig *backendconfigv1.BackendConfig beConfig, err := backendconfig.GetBackendConfigForServicePort(t.ctx.BackendConfigInformer.GetIndexer(), svc, port) if err != nil { // If we could not find a backend config name for the current diff --git a/pkg/controller/translator/translator_test.go b/pkg/controller/translator/translator_test.go index c0310400b4..ec5d3232bc 100644 --- a/pkg/controller/translator/translator_test.go +++ b/pkg/controller/translator/translator_test.go @@ -31,7 +31,7 @@ import ( "k8s.io/apimachinery/pkg/util/sets" "k8s.io/client-go/kubernetes/fake" "k8s.io/ingress-gce/pkg/annotations" - backendconfig "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfig "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" backendconfigclient "k8s.io/ingress-gce/pkg/backendconfig/client/clientset/versioned/fake" "k8s.io/ingress-gce/pkg/context" "k8s.io/ingress-gce/pkg/test" diff --git a/pkg/metrics/metrics_test.go b/pkg/metrics/metrics_test.go index 7559861c35..a5de904aa2 100644 --- a/pkg/metrics/metrics_test.go +++ b/pkg/metrics/metrics_test.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/intstr" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils" "reflect" ) @@ -42,20 +42,20 @@ var ( }, Port: intstr.FromInt(80), }, - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Cdn: &backendconfigv1beta1.CDNConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Cdn: &backendconfigv1.CDNConfig{ Enabled: true, - CachePolicy: &backendconfigv1beta1.CacheKeyPolicy{}, + CachePolicy: &backendconfigv1.CacheKeyPolicy{}, }, - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "GENERATED_COOKIE", AffinityCookieTtlSec: &testTTL, }, - SecurityPolicy: &backendconfigv1beta1.SecurityPolicyConfig{ + SecurityPolicy: &backendconfigv1.SecurityPolicyConfig{ Name: "security-policy-1", }, - ConnectionDraining: &backendconfigv1beta1.ConnectionDrainingConfig{ + ConnectionDraining: &backendconfigv1.ConnectionDrainingConfig{ DrainingTimeoutSec: testTTL, }, }, @@ -70,17 +70,17 @@ var ( Port: intstr.FromInt(80), }, NEGEnabled: true, - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, }, - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "CLIENT_IP", AffinityCookieTtlSec: &testTTL, }, TimeoutSec: &testTTL, - CustomRequestHeaders: &backendconfigv1beta1.CustomRequestHeadersConfig{ + CustomRequestHeaders: &backendconfigv1.CustomRequestHeadersConfig{ Headers: []string{}, }, }, @@ -108,16 +108,16 @@ var ( }, NEGEnabled: true, L7ILBEnabled: true, - BackendConfig: &backendconfigv1beta1.BackendConfig{ - Spec: backendconfigv1beta1.BackendConfigSpec{ - Iap: &backendconfigv1beta1.IAPConfig{ + BackendConfig: &backendconfigv1.BackendConfig{ + Spec: backendconfigv1.BackendConfigSpec{ + Iap: &backendconfigv1.IAPConfig{ Enabled: true, }, - SessionAffinity: &backendconfigv1beta1.SessionAffinityConfig{ + SessionAffinity: &backendconfigv1.SessionAffinityConfig{ AffinityType: "GENERATED_COOKIE", AffinityCookieTtlSec: &testTTL, }, - ConnectionDraining: &backendconfigv1beta1.ConnectionDrainingConfig{ + ConnectionDraining: &backendconfigv1.ConnectionDrainingConfig{ DrainingTimeoutSec: testTTL, }, }, diff --git a/pkg/test/utils.go b/pkg/test/utils.go index 3636a8ac66..c536f87eca 100644 --- a/pkg/test/utils.go +++ b/pkg/test/utils.go @@ -8,7 +8,7 @@ import ( "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/client-go/kubernetes/scheme" "k8s.io/ingress-gce/pkg/annotations" - backendconfig "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfig "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils" ) diff --git a/pkg/utils/serviceport.go b/pkg/utils/serviceport.go index 842538dd15..60a2fef160 100644 --- a/pkg/utils/serviceport.go +++ b/pkg/utils/serviceport.go @@ -25,7 +25,7 @@ import ( "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/intstr" "k8s.io/ingress-gce/pkg/annotations" - backendconfigv1beta1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1beta1" + backendconfigv1 "k8s.io/ingress-gce/pkg/apis/backendconfig/v1" "k8s.io/ingress-gce/pkg/utils/namer" ) @@ -51,7 +51,7 @@ type ServicePort struct { TargetPort string NEGEnabled bool L7ILBEnabled bool - BackendConfig *backendconfigv1beta1.BackendConfig + BackendConfig *backendconfigv1.BackendConfig BackendNamer namer.BackendNamer }