Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package openQA for openSUSE:Factory checked 
in at 2025-09-29 16:31:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
 and      /work/SRC/openSUSE:Factory/.openQA.new.11973 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openQA"

Mon Sep 29 16:31:55 2025 rev:758 rq:1307437 version:5.1758910696.7549bb98

Changes:
--------
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes    2025-09-26 
22:25:30.740513963 +0200
+++ /work/SRC/openSUSE:Factory/.openQA.new.11973/openQA.changes 2025-09-29 
16:33:39.814029035 +0200
@@ -1,0 +2,11 @@
+Fri Sep 26 21:12:56 UTC 2025 - [email protected]
+
+- Update to version 5.1758910696.7549bb98:
+  * Replace argument assignment with signatures on ObsRsync/Task
+  * Enable automatic dependabot updates again after improvements
+  * docs: Add instructions for a continuous dashboard setup
+  * Replace argument assignment with signatures Folders package
+  * Fully cover WebAPI::Plugin::ObsRsync::Controller::Folders
+  * script: Also use OPENQA_WEBUI_MODE for related services
+
+-------------------------------------------------------------------

Old:
----
  openQA-5.1758814503.03d923a4.obscpio

New:
----
  openQA-5.1758910696.7549bb98.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:33:40.746068093 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:33:40.750068261 +0200
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-client
 Name:           %{short_name}-test
-Version:        5.1758814503.03d923a4
+Version:        5.1758910696.7549bb98
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA-devel-test.spec ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:33:40.786069770 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:33:40.790069937 +0200
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-devel
 Name:           %{short_name}-test
-Version:        5.1758814503.03d923a4
+Version:        5.1758910696.7549bb98
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:33:40.834071782 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:33:40.834071782 +0200
@@ -18,7 +18,7 @@
 
 %define         short_name openQA
 Name:           %{short_name}-test
-Version:        5.1758814503.03d923a4
+Version:        5.1758910696.7549bb98
 Release:        0
 Summary:        Test package for openQA
 License:        GPL-2.0-or-later

++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:33:40.874073457 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:33:40.874073457 +0200
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-worker
 Name:           %{short_name}-test
-Version:        5.1758814503.03d923a4
+Version:        5.1758910696.7549bb98
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:33:40.910074966 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:33:40.910074966 +0200
@@ -99,7 +99,7 @@
 %define devel_requires %devel_no_selenium_requires chromedriver
 
 Name:           openQA
-Version:        5.1758814503.03d923a4
+Version:        5.1758910696.7549bb98
 Release:        0
 Summary:        The openQA web-frontend, scheduler and tools
 License:        GPL-2.0-or-later

++++++ openQA-5.1758814503.03d923a4.obscpio -> 
openQA-5.1758910696.7549bb98.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1758814503.03d923a4/.mergify.yml 
new/openQA-5.1758910696.7549bb98/.mergify.yml
--- old/openQA-5.1758814503.03d923a4/.mergify.yml       2025-09-25 
17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/.mergify.yml       2025-09-26 
20:18:16.000000000 +0200
@@ -19,7 +19,7 @@
           - "#check-failure=0"
           - "#check-pending=0"
           - linear-history
-      - and: &manual_review
+      - and:
           - "#approved-reviews-by>=2"
           - "#changes-requested-reviews-by=0"
           # 
https://doc.mergify.io/examples.html#require-all-requested-reviews-to-be-approved
@@ -52,7 +52,6 @@
           - base=main
           - author=dependabot[bot]
           - label=waited
-      - and: *manual_review  # temporary measure due to ongoing supply chain 
attacks
     actions:
       merge:
         method: squash
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/docs/UsersGuide.asciidoc 
new/openQA-5.1758910696.7549bb98/docs/UsersGuide.asciidoc
--- old/openQA-5.1758814503.03d923a4/docs/UsersGuide.asciidoc   2025-09-25 
17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/docs/UsersGuide.asciidoc   2025-09-26 
20:18:16.000000000 +0200
@@ -580,6 +580,50 @@
 There is an optional parameter 'show_build=1' that will
 prefix the status with the build number.
 
+=== Build a continuous openQA monitoring dashboard
+
+With just some common tools a dashboard showing the openQA index page with
+continuously updated results can be setup. Example setup using the
+`fullscreen=1` parameter to use the entire page for the build results:
+
+Content of /home/tux/.xinitrc
+
+[source,sh]
+----
+#!/bin/bash
+
+unclutter &
+openbox &
+xset s off
+xset -dpms
+sleep 5
+url="https://openqa.opensuse.org?group=openSUSE Tumbleweed\$|openSUSE Leap 
[0-9]{2}.?[0-9]*\$|openSUSE Leap.\*JeOS\$|openSUSE Krypton|openQA|GNOME 
Next&limit_builds=2&time_limit_days=14&&show_tags=1&fullscreen=1#build-results"
+chromium --kiosk "$url" &
+
+while sleep 300 ; do
+        xdotool windowactivate $(xdotool search --class Chromium)
+        xdotool key F5
+        xdotool windowactivate $(xdotool getactivewindow)
+done
+----
+
+Content of /usr/share/lightdm/lightdm.conf.d/50-suse-defaults.conf
+
+[source,ini]
+----
+[Seat:*]
+pam-service = lightdm
+pam-autologin-service = lightdm-autologin
+pam-greeter-service = lightdm-greeter
+xserver-command=/usr/bin/X
+session-wrapper=/etc/X11/xdm/Xsession
+greeter-setup-script=/etc/X11/xdm/Xsetup
+session-setup-script=/etc/X11/xdm/Xstartup
+session-cleanup-script=/etc/X11/xdm/Xreset
+autologin-user=tux
+autologin-timeout=0
+----
+
 
 [id="carry-over"]
 === Carry over of bug references from previous jobs in same scenario
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/lib/OpenQA/WebAPI/Plugin/ObsRsync/Controller/Folders.pm
 
new/openQA-5.1758910696.7549bb98/lib/OpenQA/WebAPI/Plugin/ObsRsync/Controller/Folders.pm
--- 
old/openQA-5.1758814503.03d923a4/lib/OpenQA/WebAPI/Plugin/ObsRsync/Controller/Folders.pm
    2025-09-25 17:35:03.000000000 +0200
+++ 
new/openQA-5.1758910696.7549bb98/lib/OpenQA/WebAPI/Plugin/ObsRsync/Controller/Folders.pm
    2025-09-26 20:18:16.000000000 +0200
@@ -2,14 +2,13 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 package OpenQA::WebAPI::Plugin::ObsRsync::Controller::Folders;
-use Mojo::Base 'Mojolicious::Controller';
+use Mojo::Base 'Mojolicious::Controller', -signatures;
 use Mojo::File;
 use POSIX 'strftime';
 
 my $non_project_folders = '^(t|profiles|script|xml)$';
 
-sub list {
-    my $self = shift;
+sub list ($self) {
     my $helper = $self->obs_rsync;
     my $folders = Mojo::File->new($helper->home)->list({dir => 1})->grep(sub { 
-d $_ })->map('basename')->to_array;
     my @res;
@@ -26,8 +25,7 @@
     return $self->render(json => \@res, status => 200);
 }
 
-sub index {
-    my ($self, $obs_project, $folders) = @_;
+sub index ($self, $obs_project = undef, $folders = undef) {
     my $helper = $self->obs_rsync;
     my %folder_info_by_name;
     if (!$folders) {
@@ -85,8 +83,7 @@
     $self->render('ObsRsync_index', folder_info_by_name => 
\%folder_info_by_name, project => $obs_project);
 }
 
-sub folder {
-    my $self = shift;
+sub folder ($self) {
     my $alias = $self->param('alias');
     my $helper = $self->obs_rsync;
     return undef if $helper->check_and_render_error($alias);
@@ -113,8 +110,7 @@
         openqa_sh => $files->grep(qr/print_openqa\.sh/)->join());
 }
 
-sub runs {
-    my $self = shift;
+sub runs ($self) {
     my $alias = $self->param('alias');
     my $helper = $self->obs_rsync;
     return undef if $helper->check_and_render_error($alias);
@@ -126,8 +122,7 @@
     $self->render('ObsRsync_logs', alias => $alias, full => $full->to_string, 
subfolders => $files);
 }
 
-sub run {
-    my $self = shift;
+sub run ($self) {
     my $alias = $self->param('alias');
     my $subfolder = $self->param('subfolder');
     my $helper = $self->obs_rsync;
@@ -145,8 +140,7 @@
     );
 }
 
-sub download_file {
-    my $self = shift;
+sub download_file ($self) {
     my $alias = $self->param('alias');
     my $subfolder = $self->param('subfolder');
     my $filename = $self->param('filename');
@@ -159,8 +153,7 @@
     $self->reply->file($full->child($filename));
 }
 
-sub get_run_last {
-    my $self = shift;
+sub get_run_last ($self) {
     my $alias = $self->param('alias');
     my $helper = $self->obs_rsync;
     return undef if $helper->check_and_render_error($alias);
@@ -172,8 +165,7 @@
     return $self->render(json => {message => $run_last}, status => 200);
 }
 
-sub forget_run_last {
-    my $self = shift;
+sub forget_run_last ($self) {
     my $alias = $self->param('alias');
     my $helper = $self->obs_rsync;
     return undef if $helper->check_and_render_error($alias);
@@ -186,14 +178,11 @@
     my $project_lock = Mojo::File->new($helper->home, $project, 'rsync.lock');
     -f $project_lock and return $self->render(json => {message => 'Project 
lock exists'}, status => 423);
 
-    if (unlink($dest)) {
-        return $self->render(json => {message => 'success'}, status => 200);
-    }
-    return $self->render(json => {message => "error $!"}, status => 500);
+    unlink($dest) or return $self->render(json => {message => "error $!"}, 
status => 500);
+    return $self->render(json => {message => 'success'}, status => 200);
 }
 
-sub test_result {
-    my $self = shift;
+sub test_result ($self) {
     my $alias = $self->param('alias');
     my $helper = $self->obs_rsync;
     return undef if $helper->check_and_render_error($alias);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/lib/OpenQA/WebAPI/Plugin/ObsRsync/Task.pm 
new/openQA-5.1758910696.7549bb98/lib/OpenQA/WebAPI/Plugin/ObsRsync/Task.pm
--- old/openQA-5.1758814503.03d923a4/lib/OpenQA/WebAPI/Plugin/ObsRsync/Task.pm  
2025-09-25 17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/lib/OpenQA/WebAPI/Plugin/ObsRsync/Task.pm  
2025-09-26 20:18:16.000000000 +0200
@@ -2,20 +2,18 @@
 # SPDX-License-Identifier: GPL-2.0-or-later
 
 package OpenQA::WebAPI::Plugin::ObsRsync::Task;
-use Mojo::Base 'Mojolicious::Plugin';
+use Mojo::Base 'Mojolicious::Plugin', -signatures;
 use Mojo::File;
 use IPC::Run;
 use Feature::Compat::Try;
 
-sub register {
-    my ($self, $app) = @_;
+sub register ($self, $app, $conf) {
     $app->minion->add_task(obs_rsync_run => \&run);
     $app->minion->add_task(obs_rsync_update_dirty_status => 
\&update_dirty_status);
     $app->minion->add_task(obs_rsync_update_builds_text => 
\&update_obs_builds_text);
 }
 
-sub _retry_or_finish {
-    my ($job, $helper, $project, $retry_interval, $retry_max_count) = @_;
+sub _retry_or_finish ($job, $helper, $project = undef, $retry_interval = 
undef, $retry_max_count = undef) {
     $retry_interval ||= $helper->retry_interval;
     $retry_max_count ||= $helper->retry_max_count;
 
@@ -34,9 +32,7 @@
 #       a retry but is otherwise not concerned with any details (such as 
invoking rsync or creating openQA jobs).
 #       Jobs of this task are enqueued by the "/obs_rsync/#project/runs" route 
(POST request) which can be triggered via the
 #       "Sync now" button on the web UI (e.g. on a page like 
"/admin/obs_rsync/openSUSE:Factory:Staging:C").
-sub run {
-    my ($job, $args) = @_;
-
+sub run ($job, $args) {
     my $app = $job->app;
     my $project = $args->{project};
     my $helper = $app->obs_rsync;
@@ -79,9 +75,7 @@
     return $job->finish({code => $exit_code, message => $error});
 }
 
-sub update_dirty_status {
-    my ($job, $args) = @_;
-
+sub update_dirty_status ($job, $args) {
     my $app = $job->app;
     my $project = $args->{project};
     my $helper = $app->obs_rsync;
@@ -89,9 +83,7 @@
     return $job->finish(0);
 }
 
-sub update_obs_builds_text {
-    my ($job, $args) = @_;
-
+sub update_obs_builds_text ($job, $args) {
     my $app = $job->app;
     my $alias = $args->{alias};
     my $helper = $app->obs_rsync;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1758814503.03d923a4/script/openqa-gru 
new/openQA-5.1758910696.7549bb98/script/openqa-gru
--- old/openQA-5.1758814503.03d923a4/script/openqa-gru  2025-09-25 
17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/script/openqa-gru  2025-09-26 
20:18:16.000000000 +0200
@@ -1,3 +1,4 @@
 #!/bin/sh -e
 [ "$1" = "-h" ] || [ "$1" = "--help" ] && echo "Start openQA GRU service" && 
exit
-exec "$(dirname "$0")"/openqa gru -m production run --reset-locks --jobs 4 
--spare 2 --spare-min-priority 10 "$@"
+OPENQA_WEBUI_MODE=${OPENQA_WEBUI_MODE:-"production"}
+exec "$(dirname "$0")"/openqa gru -m "$OPENQA_WEBUI_MODE" run --reset-locks 
--jobs 4 --spare 2 --spare-min-priority 10 "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/script/openqa-livehandler-daemon 
new/openQA-5.1758910696.7549bb98/script/openqa-livehandler-daemon
--- old/openQA-5.1758814503.03d923a4/script/openqa-livehandler-daemon   
2025-09-25 17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/script/openqa-livehandler-daemon   
2025-09-26 20:18:16.000000000 +0200
@@ -1,3 +1,4 @@
 #!/bin/sh -e
+OPENQA_WEBUI_MODE=${OPENQA_WEBUI_MODE:-"production"}
 # Our API commands are very expensive, so the default timeouts are too tight
-exec "$(dirname "$0")"/openqa-livehandler daemon -m production --proxy -i 100 
"$@"
+exec "$(dirname "$0")"/openqa-livehandler daemon -m "$OPENQA_WEBUI_MODE" 
--proxy -i 100 "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/script/openqa-scheduler-daemon 
new/openQA-5.1758910696.7549bb98/script/openqa-scheduler-daemon
--- old/openQA-5.1758814503.03d923a4/script/openqa-scheduler-daemon     
2025-09-25 17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/script/openqa-scheduler-daemon     
2025-09-26 20:18:16.000000000 +0200
@@ -1,2 +1,3 @@
 #!/bin/sh -e
-exec "$(dirname "$0")"/openqa-scheduler daemon -m production "$@"
+OPENQA_WEBUI_MODE=${OPENQA_WEBUI_MODE:-"production"}
+exec "$(dirname "$0")"/openqa-scheduler daemon -m "$OPENQA_WEBUI_MODE" "$@"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1758814503.03d923a4/script/openqa-websockets-daemon 
new/openQA-5.1758910696.7549bb98/script/openqa-websockets-daemon
--- old/openQA-5.1758814503.03d923a4/script/openqa-websockets-daemon    
2025-09-25 17:35:03.000000000 +0200
+++ new/openQA-5.1758910696.7549bb98/script/openqa-websockets-daemon    
2025-09-26 20:18:16.000000000 +0200
@@ -1,2 +1,3 @@
 #!/bin/sh -e
-exec "$(dirname "$0")"/openqa-websockets daemon -m production "$@"
+OPENQA_WEBUI_MODE=${OPENQA_WEBUI_MODE:-"production"}
+exec "$(dirname "$0")"/openqa-websockets daemon -m "$OPENQA_WEBUI_MODE" "$@"

++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.2JbGnP/_old  2025-09-29 16:34:01.830951840 +0200
+++ /var/tmp/diff_new_pack.2JbGnP/_new  2025-09-29 16:34:01.834952009 +0200
@@ -1,5 +1,5 @@
 name: openQA
-version: 5.1758814503.03d923a4
-mtime: 1758814503
-commit: 03d923a4d26c56beca03bfc720974e9ea6ea978c
+version: 5.1758910696.7549bb98
+mtime: 1758910696
+commit: 7549bb983f1ce008c0d2755112b15a4e98e067b6
 

Reply via email to