Skip to content

Commit

Permalink
verify that imagechangetriggers trigger all build types
Browse files Browse the repository at this point in the history
  • Loading branch information
Jim Minter committed Nov 6, 2017
1 parent bcf0a77 commit 9d9243a
Show file tree
Hide file tree
Showing 3 changed files with 258 additions and 0 deletions.
58 changes: 58 additions & 0 deletions test/extended/builds/imagechangetriggers.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package builds

import (
"time"

g "github.com/onsi/ginkgo"
o "github.com/onsi/gomega"

kerrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/util/wait"

exutil "github.com/openshift/origin/test/extended/util"
)

var _ = g.Describe("[Feature:Builds][Conformance] imagechangetriggers", func() {
defer g.GinkgoRecover()

var (
buildFixture = exutil.FixturePath("testdata", "builds", "test-imagechangetriggers.yaml")
oc = exutil.NewCLI("imagechangetriggers", exutil.KubeConfigPath())
)

g.Context("", func() {
g.JustBeforeEach(func() {
g.By("waiting for builder service account")
err := exutil.WaitForBuilderAccount(oc.AdminKubeClient().Core().ServiceAccounts(oc.Namespace()))
o.Expect(err).NotTo(o.HaveOccurred())
})

g.AfterEach(func() {
if g.CurrentGinkgoTestDescription().Failed {
exutil.DumpPodStates(oc)
exutil.DumpPodLogsStartingWith("", oc)
}
})

g.It("imagechangetriggers should trigger builds of all types", func() {
err := oc.AsAdmin().Run("create").Args("-f", buildFixture).Execute()
o.Expect(err).NotTo(o.HaveOccurred())

err = wait.Poll(time.Second, 30*time.Second, func() (done bool, err error) {
for _, build := range []string{"bc-docker-1", "bc-jenkins-1", "bc-source-1", "bc-custom-1"} {
_, err := oc.BuildClient().Build().Builds(oc.Namespace()).Get(build, metav1.GetOptions{})
if err == nil {
continue
}
if kerrors.IsNotFound(err) {
return false, nil
}
return false, err
}
return true, nil
})
o.Expect(err).NotTo(o.HaveOccurred())
})
})
})
110 changes: 110 additions & 0 deletions test/extended/testdata/bindata.go

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

90 changes: 90 additions & 0 deletions test/extended/testdata/builds/test-imagechangetriggers.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
kind: List
apiVersion: v1
items:
- kind: ImageStream
apiVersion: v1
metadata:
name: nodejs-ex
spec:
tags:
- name: latest
from:
kind: DockerImage
name: centos/nodejs-6-centos7:latest

- kind: BuildConfig
apiVersion: v1
metadata:
name: bc-source
spec:
source:
type: Git
git:
uri: https://github.com/openshift/nodejs-ex.git
strategy:
type: Source
sourceStrategy:
from:
kind: ImageStreamTag
name: nodejs-ex:latest
triggers:
- type: ImageChange
imageChange:
from:
kind: ImageStreamTag
name: nodejs-ex:latest

- kind: BuildConfig
apiVersion: v1
metadata:
name: bc-docker
spec:
source:
type: Dockerfile
dockerfile: FROM nodejs
strategy:
type: Docker
dockerStrategy:
from:
kind: ImageStreamTag
name: nodejs-ex:latest
triggers:
- type: ImageChange
imageChange:
from:
kind: ImageStreamTag
name: nodejs-ex:latest

- kind: BuildConfig
apiVersion: v1
metadata:
name: bc-custom
spec:
strategy:
type: Custom
customStrategy:
from:
kind: ImageStreamTag
name: nodejs-ex:latest
triggers:
- type: ImageChange
imageChange:
from:
kind: ImageStreamTag
name: nodejs-ex:latest

- kind: BuildConfig
apiVersion: v1
metadata:
name: bc-jenkins
spec:
strategy:
type: Jenkins
jenkinsPipelineStrategy:
jenkinsfile: node {}
triggers:
- type: ImageChange
imageChange:
from:
kind: ImageStreamTag
name: nodejs-ex:latest

0 comments on commit 9d9243a

Please sign in to comment.