diff --git a/ayanova/src/components/extension-tags-control.vue b/ayanova/src/components/extension-tags-control.vue index b016f39f..036574a9 100644 --- a/ayanova/src/components/extension-tags-control.vue +++ b/ayanova/src/components/extension-tags-control.vue @@ -29,6 +29,7 @@ + /// Job status for opsjobs + /// + public enum JobStatus : int + { + Absent=0, + Sleeping = 1, + Running = 2, + Completed = 3, + Failed = 4 + } */ + let jobStatus = 1; + //get status + + while (vm.seedingJobActive == true) { + await window.$gz.util.sleepAsync(1000); + //check if done + jobStatus = await window.$gz.api.get( + `job-operations/status/${jobId}` + ); + if (jobStatus.error) { + throw jobStatus.error; + } + jobStatus = jobStatus.data; + if (jobStatus == 4 || jobStatus == 0) { + throw "Seeding job failed"; + } + if (jobStatus == 3) { + vm.seedingJobActive = false; + } + } + + //Here if it's completed successfully + window.$gz.eventBus.$emit("notify-success", vm.$ay.t("JobCompleted")); + vm.$router.push("/login"); + } catch (error) { + vm.seedingJobActive = false; + window.$gz.errorHandler.handleFormError(error, vm); + window.$gz.eventBus.$emit("notify-error", vm.$ay.t("JobFailed")); + } }, normalize(value) { if (!value) {