diff pkg/controllers/srimports.go @ 1985:8eeb0b5eb340

Imports: Made retries and the waiting between the attempts configurable.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 23 Jan 2019 17:58:57 +0100
parents 6a67cd819e93
children ae0021feaac8
line wrap: on
line diff
--- a/pkg/controllers/srimports.go	Wed Jan 23 16:25:43 2019 +0100
+++ b/pkg/controllers/srimports.go	Wed Jan 23 17:58:57 2019 +0100
@@ -171,18 +171,29 @@
 		}
 	}
 
-	retries := -1
+	var retries *int
 	if r := req.FormValue("retries"); r != "" {
-		var err error
-		if retries, err = strconv.Atoi(r); err != nil {
+		if v, err := strconv.Atoi(r); err != nil {
 			log.Printf("error: %v\n", err)
-			retries = -1
+		} else {
+			retries = &v
+		}
+	}
+
+	var waitDuration *time.Duration
+	if wd := req.FormValue("wait-duration"); wd != "" {
+		if v, err := time.ParseDuration(wd); err != nil {
+			log.Printf("error: %v\n", err)
+		} else {
+			waitDuration = &v
 		}
 	}
 
 	jobID, err := imports.AddJob(
 		imports.SRJobKind,
-		due, retries,
+		due,
+		retries,
+		waitDuration,
 		session.User,
 		sendEmail,
 		serialized)