Port Guestbook tests to mutiarch

This commit is contained in:
Manjunath A Kumatagi 2017-09-09 11:18:38 +05:30
parent 42e2ca8c18
commit 96c0945e69
8 changed files with 144 additions and 14 deletions

View File

@ -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)
}
}

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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"}