diff --git a/test/e2e/kubectl/kubectl.go b/test/e2e/kubectl/kubectl.go index 8eea0e53eab..1095d082f1f 100644 --- a/test/e2e/kubectl/kubectl.go +++ b/test/e2e/kubectl/kubectl.go @@ -99,21 +99,21 @@ var ( ) var testImages = struct { - FrontendImage string + GBFrontendImage string PauseImage string NginxSlimImage string NginxSlimNewImage string RedisImage string - RedisslaveImage string + GBRedisSlaveImage string NautilusImage string KittenImage string }{ - imageutils.GetE2EImage(imageutils.Frontend), + imageutils.GetE2EImage(imageutils.GBFrontend), imageutils.GetE2EImage(imageutils.Pause), imageutils.GetE2EImage(imageutils.NginxSlim), imageutils.GetE2EImage(imageutils.NginxSlimNew), imageutils.GetE2EImage(imageutils.Redis), - imageutils.GetE2EImage(imageutils.Redisslave), + imageutils.GetE2EImage(imageutils.GBRedisSlave), imageutils.GetE2EImage(imageutils.Nautilus), imageutils.GetE2EImage(imageutils.Kitten), } @@ -340,16 +340,17 @@ var _ = SIGDescribe("Kubectl client", func() { framework.KubeDescribe("Guestbook application", func() { forEachGBFile := func(run func(s string)) { + guestbookRoot := "test/e2e/testing-manifests/guestbook" for _, gbAppFile := range []string{ - "examples/guestbook/frontend-deployment.yaml", - "examples/guestbook/frontend-service.yaml", - "examples/guestbook/redis-master-deployment.yaml", - "examples/guestbook/redis-master-service.yaml", - "examples/guestbook/redis-slave-deployment.yaml", - "examples/guestbook/redis-slave-service.yaml", + "frontend-deployment.yaml.in", + "frontend-service.yaml", + "redis-master-deployment.yaml.in", + "redis-master-service.yaml", + "redis-slave-deployment.yaml.in", + "redis-slave-service.yaml", } { - contents := generated.ReadOrDie(gbAppFile) - run(string(contents)) + contents := substituteImageName(string(generated.ReadOrDie(filepath.Join(guestbookRoot, gbAppFile)))) + run(contents) } } diff --git a/test/e2e/testing-manifests/guestbook/frontend-deployment.yaml.in b/test/e2e/testing-manifests/guestbook/frontend-deployment.yaml.in new file mode 100644 index 00000000000..6cbd92fe717 --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/frontend-deployment.yaml.in @@ -0,0 +1,29 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: frontend +spec: + replicas: 3 + template: + metadata: + labels: + app: guestbook + tier: frontend + spec: + containers: + - name: php-redis + image: {{.GBFrontendImage}} + resources: + requests: + cpu: 100m + memory: 100Mi + env: + - name: GET_HOSTS_FROM + value: dns + # If your cluster config does not include a dns service, then to + # instead access environment variables to find service host + # info, comment out the 'value: dns' line above, and uncomment the + # line below: + # value: env + ports: + - containerPort: 80 diff --git a/test/e2e/testing-manifests/guestbook/frontend-service.yaml b/test/e2e/testing-manifests/guestbook/frontend-service.yaml new file mode 100644 index 00000000000..ee50fd847cf --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/frontend-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: frontend + labels: + app: guestbook + tier: frontend +spec: + # if your cluster supports it, uncomment the following to automatically create + # an external load-balanced IP for the frontend service. + # type: LoadBalancer + ports: + - port: 80 + selector: + app: guestbook + tier: frontend diff --git a/test/e2e/testing-manifests/guestbook/redis-master-deployment.yaml.in b/test/e2e/testing-manifests/guestbook/redis-master-deployment.yaml.in new file mode 100644 index 00000000000..6de8c5590ff --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/redis-master-deployment.yaml.in @@ -0,0 +1,22 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: redis-master +spec: + replicas: 1 + template: + metadata: + labels: + app: redis + role: master + tier: backend + spec: + containers: + - name: master + image: {{.RedisImage}} + resources: + requests: + cpu: 100m + memory: 100Mi + ports: + - containerPort: 6379 diff --git a/test/e2e/testing-manifests/guestbook/redis-master-service.yaml b/test/e2e/testing-manifests/guestbook/redis-master-service.yaml new file mode 100644 index 00000000000..a484014f1fe --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/redis-master-service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-master + labels: + app: redis + role: master + tier: backend +spec: + ports: + - port: 6379 + targetPort: 6379 + selector: + app: redis + role: master + tier: backend diff --git a/test/e2e/testing-manifests/guestbook/redis-slave-deployment.yaml.in b/test/e2e/testing-manifests/guestbook/redis-slave-deployment.yaml.in new file mode 100644 index 00000000000..38210542007 --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/redis-slave-deployment.yaml.in @@ -0,0 +1,30 @@ +apiVersion: extensions/v1beta1 +kind: Deployment +metadata: + name: redis-slave +spec: + replicas: 2 + template: + metadata: + labels: + app: redis + role: slave + tier: backend + spec: + containers: + - name: slave + image: {{.GBRedisSlaveImage}} + resources: + requests: + cpu: 100m + memory: 100Mi + env: + - name: GET_HOSTS_FROM + value: dns + # If your cluster config does not include a dns service, then to + # instead access an environment variable to find the master + # service's host, comment out the 'value: dns' line above, and + # uncomment the line below: + # value: env + ports: + - containerPort: 6379 diff --git a/test/e2e/testing-manifests/guestbook/redis-slave-service.yaml b/test/e2e/testing-manifests/guestbook/redis-slave-service.yaml new file mode 100644 index 00000000000..238fd63fb6a --- /dev/null +++ b/test/e2e/testing-manifests/guestbook/redis-slave-service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + name: redis-slave + labels: + app: redis + role: slave + tier: backend +spec: + ports: + - port: 6379 + selector: + app: redis + role: slave + tier: backend diff --git a/test/utils/image/manifest.go b/test/utils/image/manifest.go index 31349c4c417..25f18917eff 100644 --- a/test/utils/image/manifest.go +++ b/test/utils/image/manifest.go @@ -25,6 +25,7 @@ const ( e2eRegistry = "gcr.io/kubernetes-e2e-test-images" gcRegistry = "gcr.io/google-containers" PrivateRegistry = "gcr.io/k8s-authenticated-test" + sampleRegistry = "gcr.io/google-samples" ) type ImageConfig struct { @@ -51,7 +52,8 @@ var ( Dnsutils = ImageConfig{e2eRegistry, "dnsutils", "1.0"} EntrypointTester = ImageConfig{e2eRegistry, "entrypoint-tester", "1.0"} Fakegitserver = ImageConfig{e2eRegistry, "fakegitserver", "1.0"} - Frontend = ImageConfig{e2eRegistry, "frontend", "1.0"} + GBFrontend = ImageConfig{sampleRegistry, "gb-frontend", "v5"} + GBRedisSlave = ImageConfig{sampleRegistry, "gb-redisslave", "v2"} Goproxy = ImageConfig{e2eRegistry, "goproxy", "1.0"} Hostexec = ImageConfig{e2eRegistry, "hostexec", "1.0"} Iperf = ImageConfig{e2eRegistry, "iperf", "1.0"} @@ -74,7 +76,6 @@ var ( Porter = ImageConfig{e2eRegistry, "porter", "1.0"} PortForwardTester = ImageConfig{e2eRegistry, "port-forward-tester", "1.0"} Redis = ImageConfig{e2eRegistry, "redis", "1.0"} - Redisslave = ImageConfig{e2eRegistry, "redis-slave", "1.0"} ResourceConsumer = ImageConfig{e2eRegistry, "resource-consumer", "1.1"} ResourceController = ImageConfig{e2eRegistry, "resource-consumer/controller", "1.0"} ServeHostname = ImageConfig{e2eRegistry, "serve-hostname", "1.0"}