EnvManager: auto refresh status page despite errors

Change-Id: I2f148d6152a58176ad84e8d1a941e15460fcbdaa
diff --git a/core/installer/welcome/env-manager-tmpl/status.html b/core/installer/welcome/env-manager-tmpl/status.html
index 87ed86d..eb73c21 100644
--- a/core/installer/welcome/env-manager-tmpl/status.html
+++ b/core/installer/welcome/env-manager-tmpl/status.html
@@ -54,17 +54,22 @@
 </div>
 <script type="text/javascript">
  async function refresh() {
-	 const resp = await fetch(window.location.href);
-	 if (resp.ok) {
-		 var tmp = document.createElement("html");
-		 tmp.innerHTML = await resp.text();
-		 if (document.getElementsByTagName("form").length === 0) {
-			 document.getElementById("contents").innerHTML = tmp.getElementsByClassName("env-status")[0].innerHTML;
-		 } else {
-			 document.getElementsByClassName("progress")[0].innerHTML = tmp.getElementsByClassName("progress")[0].innerHTML;
+	 try {
+		 const resp = await fetch(window.location.href);
+		 if (resp.ok) {
+			 var tmp = document.createElement("html");
+			 tmp.innerHTML = await resp.text();
+			 if (document.getElementsByTagName("form").length === 0) {
+				 document.getElementById("contents").innerHTML = tmp.getElementsByClassName("env-status")[0].innerHTML;
+			 } else {
+				 document.getElementsByClassName("progress")[0].innerHTML = tmp.getElementsByClassName("progress")[0].innerHTML;
+			 }
 		 }
+	 } catch (error) {
+		 console.log(error);
+	 } finally {
+		 setTimeout(refresh, 5000);
 	 }
-	 setTimeout(refresh, 5000);
  }
 
  setTimeout(refresh, 5000);
diff --git a/core/installer/welcome/env.go b/core/installer/welcome/env.go
index 856526d..388cba3 100644
--- a/core/installer/welcome/env.go
+++ b/core/installer/welcome/env.go
@@ -323,6 +323,10 @@
 }
 
 func (s *EnvServer) createEnv(w http.ResponseWriter, r *http.Request) {
+	if err := s.repo.Pull(); err != nil {
+		http.Error(w, err.Error(), http.StatusInternalServerError)
+		return
+	}
 	req, err := extractRequest(r)
 	if err != nil {
 		http.Error(w, err.Error(), http.StatusInternalServerError)