Skip to content

Commit

Permalink
Updated jenkins verifyservice e2e tests as it was failing on crashloo…
Browse files Browse the repository at this point in the history
…pbackoff
  • Loading branch information
waveywaves committed Aug 9, 2019
1 parent 54f20fe commit 8b5986d
Show file tree
Hide file tree
Showing 3 changed files with 46 additions and 141 deletions.
37 changes: 24 additions & 13 deletions test/extended/builds/pipeline_origin_bld.go
Original file line number Diff line number Diff line change
Expand Up @@ -274,33 +274,44 @@ var _ = g.Describe("[Feature:Builds][Feature:Jenkins][Slow] openshift pipeline b
})

g.By("should verify services successfully", func() {
// instantiate the bc
g.By("create the jenkins pipeline strategy build config that leverages openshift client plugin")
err := oc.Run("new-app").Args("-f", verifyServiceClientPluginPipelinePath).Execute()
o.Expect(err).NotTo(o.HaveOccurred())
redisTemplate := "redis-ephemeral"
redisAppName := "redis"
verifyServiceBuildConfig := "jenkins-verifyservice-pipeline"

err = exutil.WaitForDeploymentConfig(oc.KubeClient(), oc.AppsClient().AppsV1(), oc.Namespace(), "nodejs-example", 1, false, oc)
newAppRedisEphemeralArgs := []string{redisTemplate, "--name", redisAppName, "-p", "MEMORY_LIMIT=128Mi"}

// Redis deployment with the redis service
g.By("instantiate the test application")
err := oc.Run("new-app").Args(newAppRedisEphemeralArgs...).Execute()
o.Expect(err).NotTo(o.HaveOccurred())
err = exutil.WaitForDeploymentConfig(oc.KubeClient(), oc.AppsClient().AppsV1(), oc.Namespace(), redisAppName, 1, false, oc)
if err != nil {
exutil.DumpApplicationPodLogs("nodejs-example", oc)
exutil.DumpApplicationPodLogs(redisAppName, oc)
}

brservices, err := exutil.StartBuildAndWait(oc, "jenkins-verifyservice-pipeline")
// Redis headless service and jenkinsFile which runs verify service on both the services
g.By("create the jenkins pipeline strategy build config that leverages openshift client plugin")
err = oc.Run("new-app").Args("-f", verifyServiceClientPluginPipelinePath).Execute()
o.Expect(err).NotTo(o.HaveOccurred())

brservices, err := exutil.StartBuildAndWait(oc, verifyServiceBuildConfig)
if err != nil || !brservices.BuildSuccess {
debugAnyJenkinsFailure(brservices, oc.Namespace()+"-jenkins-verifyservice-pipeline", oc, true)
debugAnyJenkinsFailure(brservices, oc.Namespace()+"-"+verifyServiceBuildConfig, oc, true)
exutil.DumpBuilds(oc)
exutil.DumpDeploymentLogs("nodejs-example", 1, oc)
exutil.DumpBuildLogs("jenkins-verifyservice-pipeline", oc)
exutil.DumpDeploymentLogs(redisAppName, 1, oc)
exutil.DumpBuildLogs(verifyServiceBuildConfig, oc)
}
brservices.AssertSuccess()

g.By("get build console logs and see if succeeded")
_, err = j.GetJobConsoleLogsAndMatchViaBuildResult(brservices, "Finished: SUCCESS")
o.Expect(err).NotTo(o.HaveOccurred())
g.By("clean up openshift resources for next potential run")
err = oc.Run("delete").Args("bc", "jenkins-verifyservice-pipeline").Execute()
err = oc.Run("delete").Args("bc", verifyServiceBuildConfig).Execute()
o.Expect(err).NotTo(o.HaveOccurred())
err = oc.Run("delete").Args("dc", "nodejs-example").Execute()
err = oc.Run("delete").Args("dc", redisAppName).Execute()
o.Expect(err).NotTo(o.HaveOccurred())
err = oc.AsAdmin().Run("delete").Args("all", "-l", "app=nodejs-example").Execute()
err = oc.AsAdmin().Run("delete").Args("all", "-l", fmt.Sprintf("app=%v", redisAppName)).Execute()
o.Expect(err).NotTo(o.HaveOccurred())

})
Expand Down
75 changes: 11 additions & 64 deletions test/extended/testdata/bindata.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

75 changes: 11 additions & 64 deletions test/extended/testdata/verifyservice-pipeline-template.yaml
Original file line number Diff line number Diff line change
@@ -1,81 +1,28 @@
apiVersion: v1
kind: Template
labels:
template: nodejs-example
template: jenkins-verifyservice-pipeline
metadata:
name: nodejs-example
name: redis-verifyservice-test
app: redis
objects:
- apiVersion: v1
kind: Service
metadata:
name: nodejs-example
spec:
ports:
- name: web
port: 8080
targetPort: 8080
selector:
name: nodejs-example
- apiVersion: v1
kind: Service
metadata:
name: nodejs-example-headless
name: redis-headless
app: redis
spec:
clusterIP: None
ports:
- port: 8080
targetPort: 8080
- port: 6379
targetPort: 6379
selector:
name: nodejs-example
- apiVersion: v1
kind: DeploymentConfig
metadata:
name: nodejs-example
spec:
replicas: 2
selector:
name: nodejs-example
strategy:
type: Rolling
template:
metadata:
labels:
name: nodejs-example
name: nodejs-example
spec:
containers:
- env: []
image: ' '
livenessProbe:
httpGet:
path: /
port: 8080
initialDelaySeconds: 30
timeoutSeconds: 3
name: nodejs-example
ports:
- containerPort: 8080
readinessProbe:
httpGet:
path: /
port: 8080
initialDelaySeconds: 3
timeoutSeconds: 3
triggers:
- imageChangeParams:
automatic: true
containerNames:
- nodejs-example
from:
kind: ImageStreamTag
name: nodejs:latest
namespace: openshift
type: ImageChange
- type: ConfigChange
name: redis
- apiVersion: v1
kind: BuildConfig
metadata:
name: jenkins-verifyservice-pipeline
app: redis
spec:
strategy:
jenkinsPipelineStrategy:
Expand All @@ -87,9 +34,9 @@ objects:
// Select the default project
openshift.withProject() {
// Verify Normal Services
def connectedNormalService = openshift.verifyService('nodejs-example')
def connectedNormalService = openshift.verifyService('redis')
// Verify Headless Services with Selectors
def connectedHeadlessService = openshift.verifyService('nodejs-example-headless')
def connectedHeadlessService = openshift.verifyService('redis-headless')
}
}
}
Expand Down

0 comments on commit 8b5986d

Please sign in to comment.