From a1448efa84dc7bde8161d5d87e8c8415a8adbe7a Mon Sep 17 00:00:00 2001 From: Fabien Boucher Date: Fri, 29 Sep 2023 06:30:01 +0000 Subject: [PATCH] crawler: Fix target branch field not set on ChangeEvent Docs This change fixes an issue that happen when filtering by branch in the search query then resulting graphs are empty. This was because most of the graph related metrics computation relies on the ChangeEvent docs. Adding the missing field fixes that issue. fix #1065 --- CHANGELOG.md | 1 + src/Monocle/Backend/Documents.hs | 1 + src/Monocle/Backend/Index.hs | 1 + src/Monocle/Backend/Provisioner.hs | 1 + src/Monocle/Backend/Test.hs | 1 + 5 files changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2585ca51c..602df2011 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ All notable changes to this project will be documented in this file. ### Fixed - [crawler] Correctly handle errors and do not commit new changes. +- [crawler] Change target branch not field not set on ChangeEvent documents. ## [1.9.0] - 2023-09-16 diff --git a/src/Monocle/Backend/Documents.hs b/src/Monocle/Backend/Documents.hs index 556d27aec..a9c8f2af3 100644 --- a/src/Monocle/Backend/Documents.hs +++ b/src/Monocle/Backend/Documents.hs @@ -566,6 +566,7 @@ data EChangeEvent = EChangeEvent , echangeeventOnAuthor :: Author , echangeeventSelfMerged :: Maybe Bool , echangeeventBranch :: LText + , echangeeventTargetBranch :: LText , -- Set labels as a Maybe type because existing indexes do not have the event docs with labels -- TODO: implement a migration procedure in the Janitor and remove the 'Maybe' from this value echangeeventLabels :: Maybe [LText] diff --git a/src/Monocle/Backend/Index.hs b/src/Monocle/Backend/Index.hs index 10c9cf0b1..1814a3234 100644 --- a/src/Monocle/Backend/Index.hs +++ b/src/Monocle/Backend/Index.hs @@ -478,6 +478,7 @@ toEChangeEvent ChangePB.ChangeEvent {..} = EChangeMergedEvent -> Just $ onAuthor == author _ -> Nothing , echangeeventBranch = changeEventBranch + , echangeeventTargetBranch = changeEventTargetBranch , echangeeventLabels = Just . toList $ changeEventLabels , echangeeventCreatedAt = T.toUTCTime $ fromMaybe (error "changeEventCreatedAt field is mandatory") changeEventCreatedAt , echangeeventOnCreatedAt = T.toUTCTime $ fromMaybe (error "changeEventOnCreatedAt field is mandatory") changeEventOnCreatedAt diff --git a/src/Monocle/Backend/Provisioner.hs b/src/Monocle/Backend/Provisioner.hs index b9d1f720d..f254450da 100644 --- a/src/Monocle/Backend/Provisioner.hs +++ b/src/Monocle/Backend/Provisioner.hs @@ -160,6 +160,7 @@ fakeChangeEvent from' to = do echangeeventAuthor = Nothing echangeeventSelfMerged = Nothing echangeeventBranch = "" + echangeeventTargetBranch = "main" echangeeventApproval = Nothing echangeeventTasksData = Nothing echangeeventLabels = Just [] diff --git a/src/Monocle/Backend/Test.hs b/src/Monocle/Backend/Test.hs index 1f79c0344..68b79f91c 100644 --- a/src/Monocle/Backend/Test.hs +++ b/src/Monocle/Backend/Test.hs @@ -1313,6 +1313,7 @@ emptyEvent = EChangeEvent {..} echangeeventAuthor = Just fakeAuthor echangeeventOnAuthor = fakeAuthor echangeeventBranch = mempty + echangeeventTargetBranch = "main" echangeeventSelfMerged = Nothing echangeeventCreatedAt = fakeDate echangeeventOnCreatedAt = fakeDate