Test: Remove gRPC Fortune Teller. (#12929)
Co-authored-by: Marco Ebert <marco_ebert@icloud.com>
This commit is contained in:
parent
a7f328dd9e
commit
68e06f67e4
3 changed files with 9 additions and 138 deletions
|
@ -11,13 +11,12 @@
|
|||
</table>
|
||||
|
||||
|
||||
Directory | Purpose
|
||||
------------ | -------------
|
||||
custom-error-pages | Example of Custom error pages for the Ingress-Nginx Controller
|
||||
e2e | Image to run e2e tests
|
||||
fastcgi-helloserver | FastCGI application for e2e tests
|
||||
grpc-fortune-teller | grpc server application for the nginx-ingress grpc example
|
||||
httpbun | A simple HTTP Request & Response Service for e2e tests
|
||||
httpbin | [Removed] we are no longer maintaining the httpbin image due to project being unmaintained
|
||||
nginx | NGINX base image using [alpine linux](https://www.alpinelinux.org)
|
||||
cfssl | Image to run cfssl commands
|
||||
Directory | Purpose
|
||||
---------------------- | ------------------------------------------------------------------
|
||||
cfssl | Image to run cfssl commands
|
||||
custom-error-pages | Example of Custom error pages for the Ingress-Nginx Controller
|
||||
fastcgi-helloserver | FastCGI application for e2e tests
|
||||
go-grpc-greeter-server | grpc server application for the nginx-ingress grpc example
|
||||
httpbun | A simple HTTP Request & Response Service for e2e tests
|
||||
nginx | NGINX base image using [alpine linux](https://www.alpinelinux.org)
|
||||
test-runner | Image to run e2e tests
|
||||
|
|
|
@ -45,29 +45,6 @@ const (
|
|||
var _ = framework.DescribeAnnotation("backend-protocol - GRPC", func() {
|
||||
f := framework.NewDefaultFramework("grpc", framework.WithHTTPBunEnabled())
|
||||
|
||||
ginkgo.It("should use grpc_pass in the configuration file", func() {
|
||||
f.NewGRPCFortuneTellerDeployment()
|
||||
|
||||
annotations := map[string]string{
|
||||
"nginx.ingress.kubernetes.io/backend-protocol": "GRPC",
|
||||
}
|
||||
|
||||
ing := framework.NewSingleIngress(host, "/", host, f.Namespace, "fortune-teller", 50051, annotations)
|
||||
f.EnsureIngress(ing)
|
||||
|
||||
f.WaitForNginxServer(host,
|
||||
func(server string) bool {
|
||||
return strings.Contains(server, fmt.Sprintf("server_name %v", host))
|
||||
})
|
||||
|
||||
f.WaitForNginxServer(host,
|
||||
func(server string) bool {
|
||||
return strings.Contains(server, "grpc_pass") &&
|
||||
strings.Contains(server, "grpc_set_header") &&
|
||||
!strings.Contains(server, "proxy_pass")
|
||||
})
|
||||
})
|
||||
|
||||
ginkgo.It("should return OK for service with backend protocol GRPC", func() {
|
||||
f.NewGRPCBinDeployment()
|
||||
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
/*
|
||||
Copyright 2017 The Kubernetes Authors.
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
*/
|
||||
|
||||
//nolint:dupl // Ignore dupl errors for similar test case
|
||||
package framework
|
||||
|
||||
import (
|
||||
"github.com/onsi/ginkgo/v2"
|
||||
"github.com/stretchr/testify/assert"
|
||||
appsv1 "k8s.io/api/apps/v1"
|
||||
corev1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/fields"
|
||||
"k8s.io/apimachinery/pkg/util/intstr"
|
||||
)
|
||||
|
||||
// NewGRPCFortuneTellerDeployment creates a new single replica
|
||||
// deployment of the fortune teller image in a particular namespace
|
||||
func (f *Framework) NewGRPCFortuneTellerDeployment() {
|
||||
f.NewNewGRPCFortuneTellerDeploymentWithReplicas(1)
|
||||
}
|
||||
|
||||
// NewNewGRPCFortuneTellerDeploymentWithReplicas creates a new deployment of the
|
||||
// fortune teller image in a particular namespace. Number of replicas is configurable
|
||||
func (f *Framework) NewNewGRPCFortuneTellerDeploymentWithReplicas(replicas int32) {
|
||||
deployment := &appsv1.Deployment{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "fortune-teller",
|
||||
Namespace: f.Namespace,
|
||||
},
|
||||
Spec: appsv1.DeploymentSpec{
|
||||
Replicas: NewInt32(replicas),
|
||||
Selector: &metav1.LabelSelector{
|
||||
MatchLabels: map[string]string{
|
||||
"app": "fortune-teller",
|
||||
},
|
||||
},
|
||||
Template: corev1.PodTemplateSpec{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Labels: map[string]string{
|
||||
"app": "fortune-teller",
|
||||
},
|
||||
},
|
||||
Spec: corev1.PodSpec{
|
||||
TerminationGracePeriodSeconds: NewInt64(0),
|
||||
Containers: []corev1.Container{
|
||||
{
|
||||
Name: "fortune-teller",
|
||||
Image: "quay.io/kubernetes-ingress-controller/grpc-fortune-teller:0.1",
|
||||
Env: []corev1.EnvVar{},
|
||||
Ports: []corev1.ContainerPort{
|
||||
{
|
||||
Name: "grpc",
|
||||
ContainerPort: 50051,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
d := f.EnsureDeployment(deployment)
|
||||
|
||||
err := waitForPodsReady(f.KubeClientSet, DefaultTimeout, int(replicas), f.Namespace, &metav1.ListOptions{
|
||||
LabelSelector: fields.SelectorFromSet(fields.Set(d.Spec.Template.ObjectMeta.Labels)).String(),
|
||||
})
|
||||
assert.Nil(ginkgo.GinkgoT(), err, "failed to wait for to become ready")
|
||||
|
||||
service := &corev1.Service{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "fortune-teller",
|
||||
Namespace: f.Namespace,
|
||||
},
|
||||
Spec: corev1.ServiceSpec{
|
||||
Ports: []corev1.ServicePort{
|
||||
{
|
||||
Name: "grpc",
|
||||
Port: 50051,
|
||||
TargetPort: intstr.FromInt(50051),
|
||||
Protocol: "TCP",
|
||||
},
|
||||
},
|
||||
Selector: map[string]string{
|
||||
"app": "fortune-teller",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
f.EnsureService(service)
|
||||
}
|
Loading…
Reference in a new issue