All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH yocto-autobuilder2 0/3] yocto_console_view: Fix various small issues after migration
@ 2025-02-11 14:48 Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 1/3] yocto_console_view: Group similar builder builds Mathieu Dubois-Briand
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-02-11 14:48 UTC (permalink / raw)
  To: yocto-patches; +Cc: Thomas Petazzoni, Mathieu Dubois-Briand

Now the migration to buildbot 4.2 has been made, several small issues
have been found. This series tries to mix most of them.

Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
---
Mathieu Dubois-Briand (3):
      yocto_console_view: Group similar builder builds
      yocto_console_view: Keep known revision mappings
      yocto_console_view: Fix output link on valkyrie

 .../src/views/ConsoleView/ConsoleView.scss         |  2 +-
 .../src/views/ConsoleView/ConsoleView.tsx          | 37 +++++++---------------
 2 files changed, 12 insertions(+), 27 deletions(-)
---
base-commit: dab2c9bb81540511e3cc9581f53db1c103714913
change-id: 20250211-mathieu-console_view_colspan-a6ad40201c9c

Best regards,
-- 
Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>



^ permalink raw reply	[flat|nested] 7+ messages in thread

* [PATCH yocto-autobuilder2 1/3] yocto_console_view: Group similar builder builds
  2025-02-11 14:48 [PATCH yocto-autobuilder2 0/3] yocto_console_view: Fix various small issues after migration Mathieu Dubois-Briand
@ 2025-02-11 14:48 ` Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 3/3] yocto_console_view: Fix output link on valkyrie Mathieu Dubois-Briand
  2 siblings, 0 replies; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-02-11 14:48 UTC (permalink / raw)
  To: yocto-patches; +Cc: Thomas Petazzoni, Mathieu Dubois-Briand

Builds from similar builders have to be in the same <td>, compacting a
bit the whole view.

Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
---
 yocto_console_view/src/views/ConsoleView/ConsoleView.scss |  2 +-
 yocto_console_view/src/views/ConsoleView/ConsoleView.tsx  | 11 +++++++----
 2 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.scss b/yocto_console_view/src/views/ConsoleView/ConsoleView.scss
index a3421d9742f0..7969b229706c 100644
--- a/yocto_console_view/src/views/ConsoleView/ConsoleView.scss
+++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.scss
@@ -17,7 +17,7 @@ tr.bb-console-table-first-row {
   font-size: 1em;
   width: 1.5em;
   text-align: center;
-  transform: rotate(-45deg) translate(.5em, 1em);
+  transform: rotate(-45deg) translate(-.2em, .8em);
   transform-origin: bottom left;
   text-decoration: none;
   white-space: nowrap;
diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
index a44be811caf9..973c26424233 100644
--- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
+++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
@@ -412,14 +412,17 @@ export const ConsoleView = observer(() => {
   const changeRows = changesToShow.map(changeInfo => {
     const change = changeInfo.change;
 
-    const builderColumns = buildersToShow.map(builder => {
-      const builds = changeInfo.buildsByBuilderId.get(builder.builderid) ?? [];
+    const builderColumns = builderGroups.map((builderGroup, i) => {
+      const builds: Build[] = [];
+      for (const builder of builderGroup.builders) {
+        const builderBuilds = changeInfo.buildsByBuilderId.get(builder.builderid) ?? []
+        builds.push(...builderBuilds);
+      }
       const buildLinks = builds.map(build => (
         <BuildLinkWithSummaryTooltip key={build.buildid} build={build}/>
       ));
-
       return (
-        <td key={builder.name} title={builder.name} className="column">
+        <td key={i} title={builderGroup.name} colSpan={builderGroup.colspan} className="column">
           {buildLinks}
         </td>
       );

-- 
2.39.5



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings
  2025-02-11 14:48 [PATCH yocto-autobuilder2 0/3] yocto_console_view: Fix various small issues after migration Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 1/3] yocto_console_view: Group similar builder builds Mathieu Dubois-Briand
@ 2025-02-11 14:48 ` Mathieu Dubois-Briand
  2025-02-12  0:01   ` [yocto-patches] " Richard Purdie
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 3/3] yocto_console_view: Fix output link on valkyrie Mathieu Dubois-Briand
  2 siblings, 1 reply; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-02-11 14:48 UTC (permalink / raw)
  To: yocto-patches; +Cc: Thomas Petazzoni, Mathieu Dubois-Briand

The yp_build_revision property disappears from the build instance once
the build is done. There is no reason for its value to change, so keep
the last seen value in revision mapping. This will prevent finished
builds to jump back to "Unresolved Revision".

Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
---
 .../src/views/ConsoleView/ConsoleView.tsx          | 25 +++-------------------
 1 file changed, 3 insertions(+), 22 deletions(-)

diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
index 973c26424233..93c51b340b17 100644
--- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
+++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
@@ -208,6 +208,9 @@ function selectChangeForBuild(build: Build, buildset: Buildset,
   return fakeChange
 }
 
+const revMapping = new Map<int, string>();
+const branchMapping = new Map<int, string>();
+
 export const ConsoleView = observer(() => {
   const accessor = useDataAccessor([]);
 
@@ -263,8 +266,6 @@ export const ConsoleView = observer(() => {
     builderIdsWithBuilds.add(build.builderid);
   }
 
-  const revMapping = new Map<int, string>();
-  const branchMapping = new Map<int, string>();
   for (const build of buildsQuery.array) {
     let change = false;
     let {
@@ -278,26 +279,6 @@ export const ConsoleView = observer(() => {
       branchMapping[build.buildid] = build.properties.yp_build_branch[0];
       change = true;
     }
-    if ((!revMapping[buildid] || !branchMapping[buildid]) && !build.complete_at) {
-      build.getProperties().onChange = properties => {
-        change = false;
-        buildid = properties.endpoint.split('/')[1];
-        if (!revMapping[buildid]) {
-          const rev = getBuildProperty(properties[0], 'yp_build_revision');
-          if (rev != null) {
-            revMapping[buildid] = rev;
-            change = true;
-          }
-        }
-        if (!branchMapping[buildid]) {
-          const branch = getBuildProperty(properties[0], 'yp_build_branch');
-          if (branch != null) {
-            branchMapping[buildid] = branch;
-            change = true;
-          }
-        }
-      };
-    }
   }
 
   function getBuildProperty(properties, property) {

-- 
2.39.5



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH yocto-autobuilder2 3/3] yocto_console_view: Fix output link on valkyrie
  2025-02-11 14:48 [PATCH yocto-autobuilder2 0/3] yocto_console_view: Fix various small issues after migration Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 1/3] yocto_console_view: Group similar builder builds Mathieu Dubois-Briand
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings Mathieu Dubois-Briand
@ 2025-02-11 14:48 ` Mathieu Dubois-Briand
  2 siblings, 0 replies; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-02-11 14:48 UTC (permalink / raw)
  To: yocto-patches; +Cc: Thomas Petazzoni, Mathieu Dubois-Briand

Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
---
 yocto_console_view/src/views/ConsoleView/ConsoleView.tsx | 1 +
 1 file changed, 1 insertion(+)

diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
index 93c51b340b17..a1a338684fd6 100644
--- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
+++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
@@ -191,6 +191,7 @@ function selectChangeForBuild(build: Build, buildset: Buildset,
       if (build.properties !== null && ('publish_destination' in build.properties)) {
         change.change.publishurl = build.properties['publish_destination'][0].replace("/srv/autobuilder/autobuilder.yoctoproject.org/", "https://autobuilder.yocto.io/");
         change.change.publishurl = change.change.publishurl.replace("/srv/autobuilder/autobuilder.yocto.io/", "https://autobuilder.yocto.io/");
+        change.change.publishurl = change.change.publishurl.replace("/srv/autobuilder/valkyrie.yocto.io/", "https://valkyrie.yocto.io/");
       }
     }
 

-- 
2.39.5



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [yocto-patches] [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings
  2025-02-11 14:48 ` [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings Mathieu Dubois-Briand
@ 2025-02-12  0:01   ` Richard Purdie
  2025-02-12  8:14     ` Mathieu Dubois-Briand
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2025-02-12  0:01 UTC (permalink / raw)
  To: yocto-patches; +Cc: Thomas Petazzoni, Mathieu Dubois-Briand

On Tue, 2025-02-11 at 15:48 +0100, Mathieu Dubois-Briand via lists.yoctoproject.org wrote:
> The yp_build_revision property disappears from the build instance once
> the build is done. There is no reason for its value to change, so keep
> the last seen value in revision mapping. This will prevent finished
> builds to jump back to "Unresolved Revision".
> 
> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
> ---
>  .../src/views/ConsoleView/ConsoleView.tsx          | 25 +++-------------------
>  1 file changed, 3 insertions(+), 22 deletions(-)
> 
> diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> index 973c26424233..93c51b340b17 100644
> --- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> +++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> @@ -208,6 +208,9 @@ function selectChangeForBuild(build: Build, buildset: Buildset,
>    return fakeChange
>  }
>  
> +const revMapping = new Map<int, string>();
> +const branchMapping = new Map<int, string>();
> +
>  export const ConsoleView = observer(() => {
>    const accessor = useDataAccessor([]);
>  
> @@ -263,8 +266,6 @@ export const ConsoleView = observer(() => {
>      builderIdsWithBuilds.add(build.builderid);
>    }
>  
> -  const revMapping = new Map<int, string>();
> -  const branchMapping = new Map<int, string>();
>    for (const build of buildsQuery.array) {
>      let change = false;
>      let {
> @@ -278,26 +279,6 @@ export const ConsoleView = observer(() => {
>        branchMapping[build.buildid] = build.properties.yp_build_branch[0];
>        change = true;
>      }
> -    if ((!revMapping[buildid] || !branchMapping[buildid]) && !build.complete_at) {
> -      build.getProperties().onChange = properties => {
> -        change = false;
> -        buildid = properties.endpoint.split('/')[1];
> -        if (!revMapping[buildid]) {
> -          const rev = getBuildProperty(properties[0], 'yp_build_revision');
> -          if (rev != null) {
> -            revMapping[buildid] = rev;
> -            change = true;
> -          }
> -        }
> -        if (!branchMapping[buildid]) {
> -          const branch = getBuildProperty(properties[0], 'yp_build_branch');
> -          if (branch != null) {
> -            branchMapping[buildid] = branch;
> -            change = true;
> -          }
> -        }
> -      };
> -    }
>    }
>  
>    function getBuildProperty(properties, property) {

When you start a build, it gets "Unresolved Revision" and I think by
removing this code, it remains there even when the revision becomes
known. The code would have allowed it to move to the correct line in
the display. This therefore may fix one issue at the expense of
another...

Cheers,

Richard




^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [yocto-patches] [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings
  2025-02-12  0:01   ` [yocto-patches] " Richard Purdie
@ 2025-02-12  8:14     ` Mathieu Dubois-Briand
  2025-02-12 10:08       ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Mathieu Dubois-Briand @ 2025-02-12  8:14 UTC (permalink / raw)
  To: Richard Purdie, yocto-patches; +Cc: Thomas Petazzoni

On Wed Feb 12, 2025 at 1:01 AM CET, Richard Purdie wrote:
> On Tue, 2025-02-11 at 15:48 +0100, Mathieu Dubois-Briand via lists.yoctoproject.org wrote:
> > The yp_build_revision property disappears from the build instance once
> > the build is done. There is no reason for its value to change, so keep
> > the last seen value in revision mapping. This will prevent finished
> > builds to jump back to "Unresolved Revision".
> > 
> > Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
> > ---
> >  .../src/views/ConsoleView/ConsoleView.tsx          | 25 +++-------------------
> >  1 file changed, 3 insertions(+), 22 deletions(-)
> > 
> > diff --git a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > index 973c26424233..93c51b340b17 100644
> > --- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > +++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > @@ -208,6 +208,9 @@ function selectChangeForBuild(build: Build, buildset: Buildset,
> >    return fakeChange
> >  }
> >  
> > +const revMapping = new Map<int, string>();
> > +const branchMapping = new Map<int, string>();
> > +
> >  export const ConsoleView = observer(() => {
> >    const accessor = useDataAccessor([]);
> >  
> > @@ -263,8 +266,6 @@ export const ConsoleView = observer(() => {
> >      builderIdsWithBuilds.add(build.builderid);
> >    }
> >  
> > -  const revMapping = new Map<int, string>();
> > -  const branchMapping = new Map<int, string>();
> >    for (const build of buildsQuery.array) {
> >      let change = false;
> >      let {
> > @@ -278,26 +279,6 @@ export const ConsoleView = observer(() => {
> >        branchMapping[build.buildid] = build.properties.yp_build_branch[0];
> >        change = true;
> >      }
> > -    if ((!revMapping[buildid] || !branchMapping[buildid]) && !build.complete_at) {
> > -      build.getProperties().onChange = properties => {
> > -        change = false;
> > -        buildid = properties.endpoint.split('/')[1];
> > -        if (!revMapping[buildid]) {
> > -          const rev = getBuildProperty(properties[0], 'yp_build_revision');
> > -          if (rev != null) {
> > -            revMapping[buildid] = rev;
> > -            change = true;
> > -          }
> > -        }
> > -        if (!branchMapping[buildid]) {
> > -          const branch = getBuildProperty(properties[0], 'yp_build_branch');
> > -          if (branch != null) {
> > -            branchMapping[buildid] = branch;
> > -            change = true;
> > -          }
> > -        }
> > -      };
> > -    }
> >    }
> >  
> >    function getBuildProperty(properties, property) {
>
> When you start a build, it gets "Unresolved Revision" and I think by
> removing this code, it remains there even when the revision becomes
> known. The code would have allowed it to move to the correct line in
> the display. This therefore may fix one issue at the expense of
> another...
>

The issue is this part of the code actually did nothing. I believe I
imported this from the previous version of the plugin but never really
tested it.

I've been trying a few variations, yesterday but it looks like we never
get the property update.

-- 
Mathieu Dubois-Briand, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [yocto-patches] [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings
  2025-02-12  8:14     ` Mathieu Dubois-Briand
@ 2025-02-12 10:08       ` Richard Purdie
  0 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2025-02-12 10:08 UTC (permalink / raw)
  To: Mathieu Dubois-Briand, yocto-patches; +Cc: Thomas Petazzoni

On Wed, 2025-02-12 at 09:14 +0100, Mathieu Dubois-Briand wrote:
> On Wed Feb 12, 2025 at 1:01 AM CET, Richard Purdie wrote:
> > On Tue, 2025-02-11 at 15:48 +0100, Mathieu Dubois-Briand via
> > lists.yoctoproject.org wrote:
> > > The yp_build_revision property disappears from the build instance
> > > once
> > > the build is done. There is no reason for its value to change, so
> > > keep
> > > the last seen value in revision mapping. This will prevent
> > > finished
> > > builds to jump back to "Unresolved Revision".
> > > 
> > > Signed-off-by: Mathieu Dubois-Briand
> > > <mathieu.dubois-briand@bootlin.com>
> > > ---
> > >  .../src/views/ConsoleView/ConsoleView.tsx          | 25 +++-----
> > > --------------
> > >  1 file changed, 3 insertions(+), 22 deletions(-)
> > > 
> > > diff --git
> > > a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > > b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > > index 973c26424233..93c51b340b17 100644
> > > --- a/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > > +++ b/yocto_console_view/src/views/ConsoleView/ConsoleView.tsx
> > > @@ -208,6 +208,9 @@ function selectChangeForBuild(build: Build,
> > > buildset: Buildset,
> > >    return fakeChange
> > >  }
> > >  
> > > +const revMapping = new Map<int, string>();
> > > +const branchMapping = new Map<int, string>();
> > > +
> > >  export const ConsoleView = observer(() => {
> > >    const accessor = useDataAccessor([]);
> > >  
> > > @@ -263,8 +266,6 @@ export const ConsoleView = observer(() => {
> > >      builderIdsWithBuilds.add(build.builderid);
> > >    }
> > >  
> > > -  const revMapping = new Map<int, string>();
> > > -  const branchMapping = new Map<int, string>();
> > >    for (const build of buildsQuery.array) {
> > >      let change = false;
> > >      let {
> > > @@ -278,26 +279,6 @@ export const ConsoleView = observer(() => {
> > >        branchMapping[build.buildid] =
> > > build.properties.yp_build_branch[0];
> > >        change = true;
> > >      }
> > > -    if ((!revMapping[buildid] || !branchMapping[buildid]) &&
> > > !build.complete_at) {
> > > -      build.getProperties().onChange = properties => {
> > > -        change = false;
> > > -        buildid = properties.endpoint.split('/')[1];
> > > -        if (!revMapping[buildid]) {
> > > -          const rev = getBuildProperty(properties[0],
> > > 'yp_build_revision');
> > > -          if (rev != null) {
> > > -            revMapping[buildid] = rev;
> > > -            change = true;
> > > -          }
> > > -        }
> > > -        if (!branchMapping[buildid]) {
> > > -          const branch = getBuildProperty(properties[0],
> > > 'yp_build_branch');
> > > -          if (branch != null) {
> > > -            branchMapping[buildid] = branch;
> > > -            change = true;
> > > -          }
> > > -        }
> > > -      };
> > > -    }
> > >    }
> > >  
> > >    function getBuildProperty(properties, property) {
> > 
> > When you start a build, it gets "Unresolved Revision" and I think
> > by
> > removing this code, it remains there even when the revision becomes
> > known. The code would have allowed it to move to the correct line
> > in
> > the display. This therefore may fix one issue at the expense of
> > another...
> > 
> 
> The issue is this part of the code actually did nothing. I believe I
> imported this from the previous version of the plugin but never
> really tested it.
> 
> I've been trying a few variations, yesterday but it looks like we
> never get the property update.

I know it was one of the more problematic elements in the code in the
past and can result in a lot more queries. The idea was that when the
property became available, we'd update the UI. I'd probably have to
replicate a test environment to be able to offer much help at this
point...

Cheers,

Richard


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2025-02-12 10:08 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-11 14:48 [PATCH yocto-autobuilder2 0/3] yocto_console_view: Fix various small issues after migration Mathieu Dubois-Briand
2025-02-11 14:48 ` [PATCH yocto-autobuilder2 1/3] yocto_console_view: Group similar builder builds Mathieu Dubois-Briand
2025-02-11 14:48 ` [PATCH yocto-autobuilder2 2/3] yocto_console_view: Keep known revision mappings Mathieu Dubois-Briand
2025-02-12  0:01   ` [yocto-patches] " Richard Purdie
2025-02-12  8:14     ` Mathieu Dubois-Briand
2025-02-12 10:08       ` Richard Purdie
2025-02-11 14:48 ` [PATCH yocto-autobuilder2 3/3] yocto_console_view: Fix output link on valkyrie Mathieu Dubois-Briand

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.