Initial version of user reconciliation loop and seed jobs

This commit is contained in:
antoniaklja
2018-12-19 22:40:08 +01:00
parent 7e64f2f06e
commit 4c8e61624e
22 changed files with 622 additions and 44 deletions
+13 -1
View File
@@ -15,7 +15,7 @@ import (
var (
retryInterval = time.Second * 5
timeout = time.Second * 30
timeout = time.Second * 60
)
// checkConditionFunc is used to check if a condition for the jenkins CR is true
@@ -33,6 +33,18 @@ func waitForJenkinsBaseConfigurationToComplete(t *testing.T, jenkins *virtuslabv
t.Log("Jenkins pod is running")
}
func waitForJenkinsUserConfigurationToComplete(t *testing.T, jenkins *virtuslabv1alpha1.Jenkins) {
t.Log("Waiting for Jenkins user configuration to complete")
_, err := WaitUntilJenkinsConditionTrue(retryInterval, 30, jenkins, func(jenkins *virtuslabv1alpha1.Jenkins) bool {
t.Logf("Current Jenkins status '%+v'", jenkins.Status)
return jenkins.Status.UserConfigurationCompletedTime != nil
})
if err != nil {
t.Fatal(err)
}
t.Log("Jenkins pod is running")
}
// WaitUntilJenkinsConditionTrue retries until the specified condition check becomes true for the jenkins CR
func WaitUntilJenkinsConditionTrue(retryInterval time.Duration, retries int, jenkins *virtuslabv1alpha1.Jenkins, checkCondition checkConditionFunc) (*virtuslabv1alpha1.Jenkins, error) {
jenkinsStatus := &virtuslabv1alpha1.Jenkins{}