Quellcode durchsuchen

bugfix: Unexpected message #283 (#284)

James Read vor 2 Jahren
Ursprung
Commit
6991724258
4 geänderte Dateien mit 24 neuen und 19 gelöschten Zeilen
  1. 3 0
      OliveTin.proto
  2. 18 16
      internal/websocket/websocket.go
  3. 2 2
      webui.dev/js/marshaller.js
  4. 1 1
      webui.dev/js/websocket.js

+ 3 - 0
OliveTin.proto

@@ -185,6 +185,9 @@ message GetReadyzResponse {
 }
 
 message EventConfigChanged {}
+message EventExecutionFinished {
+	LogEntry log_entry = 1;
+}
 
 service OliveTinApiService {
 	rpc GetDashboardComponents(GetDashboardComponentsRequest) returns (GetDashboardComponentsResponse) {

+ 18 - 16
internal/websocket/websocket.go

@@ -62,24 +62,26 @@ func checkOriginPermissive(r *http.Request) bool {
 }
 
 func (WebsocketExecutionListener) OnExecutionFinished(logEntry *executor.InternalLogEntry) {
-	le := &pb.LogEntry{
-		ActionTitle:         logEntry.ActionTitle,
-		ActionIcon:          logEntry.ActionIcon,
-		ActionId:            logEntry.ActionId,
-		DatetimeStarted:     logEntry.DatetimeStarted.Format("2006-01-02 15:04:05"),
-		DatetimeFinished:    logEntry.DatetimeFinished.Format("2006-01-02 15:04:05"),
-		Stdout:              logEntry.Stdout,
-		Stderr:              logEntry.Stderr,
-		TimedOut:            logEntry.TimedOut,
-		Blocked:             logEntry.Blocked,
-		ExitCode:            logEntry.ExitCode,
-		Tags:                logEntry.Tags,
-		ExecutionTrackingId: logEntry.ExecutionTrackingID,
-		ExecutionStarted:    logEntry.ExecutionStarted,
-		ExecutionFinished:   logEntry.ExecutionFinished,
+	evt := &pb.EventExecutionFinished{
+		LogEntry: &pb.LogEntry{
+			ActionTitle:         logEntry.ActionTitle,
+			ActionIcon:          logEntry.ActionIcon,
+			ActionId:            logEntry.ActionId,
+			DatetimeStarted:     logEntry.DatetimeStarted.Format("2006-01-02 15:04:05"),
+			DatetimeFinished:    logEntry.DatetimeFinished.Format("2006-01-02 15:04:05"),
+			Stdout:              logEntry.Stdout,
+			Stderr:              logEntry.Stderr,
+			TimedOut:            logEntry.TimedOut,
+			Blocked:             logEntry.Blocked,
+			ExitCode:            logEntry.ExitCode,
+			Tags:                logEntry.Tags,
+			ExecutionTrackingId: logEntry.ExecutionTrackingID,
+			ExecutionStarted:    logEntry.ExecutionStarted,
+			ExecutionFinished:   logEntry.ExecutionFinished,
+		},
 	}
 
-	broadcast(le)
+	broadcast(evt)
 }
 
 func broadcast(pbmsg protoreflect.ProtoMessage) {

+ 2 - 2
webui.dev/js/marshaller.js

@@ -12,7 +12,7 @@ export function initMarshaller () {
 
   window.logEntries = {}
 
-  window.addEventListener('ExecutionFinished', onExecutionFinished)
+  window.addEventListener('EventExecutionFinished', onExecutionFinished)
 }
 
 export function marshalDashboardComponentsJsonToHtml (json) {
@@ -52,7 +52,7 @@ function marshalActionsJsonToHtml (json) {
 }
 
 function onExecutionFinished (evt) {
-  const logEntry = evt.payload
+  const logEntry = evt.payload.logEntry
 
   const actionButton = window.actionButtons[logEntry.actionTitle]
 

+ 1 - 1
webui.dev/js/websocket.js

@@ -41,7 +41,7 @@ function websocketOnMessage (msg) {
 
   switch (j.type) {
     case 'EventConfigChanged':
-    case 'ExecutionFinished':
+    case 'EventExecutionFinished':
       window.dispatchEvent(e)
       break
     default: