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-12-11 18:37:54
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/openQA (Old)
 and      /work/SRC/openSUSE:Factory/.openQA.new.1939 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "openQA"

Thu Dec 11 18:37:54 2025 rev:782 rq:1321988 version:5.1765365298.9af08171

Changes:
--------
--- /work/SRC/openSUSE:Factory/openQA/openQA.changes    2025-12-10 
15:33:14.457109525 +0100
+++ /work/SRC/openSUSE:Factory/.openQA.new.1939/openQA.changes  2025-12-11 
18:38:00.129054072 +0100
@@ -1,0 +2,9 @@
+Wed Dec 10 15:10:39 UTC 2025 - [email protected]
+
+- Update to version 5.1765365298.9af08171:
+  * KTAP: Properly hide details of a skipped subtest
+  * docs: Restory logic of the sentence about NFT vs firewalld
+  * docs: Clarify DHCP/RA availability on MM networks
+  * feat: Allow to configure key+secret with env variables
+
+-------------------------------------------------------------------

Old:
----
  openQA-5.1765286149.3debb8ea.obscpio

New:
----
  openQA-5.1765365298.9af08171.obscpio

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

Other differences:
------------------
++++++ openQA-client-test.spec ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:02.113137445 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:02.117137614 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-client
 Name:           %{short_name}-test
-Version:        5.1765286149.3debb8ea
+Version:        5.1765365298.9af08171
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA-devel-test.spec ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:02.169139799 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:02.173139967 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-devel
 Name:           %{short_name}-test
-Version:        5.1765286149.3debb8ea
+Version:        5.1765365298.9af08171
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA-test.spec ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:02.221141984 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:02.225142152 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA
 Name:           %{short_name}-test
-Version:        5.1765286149.3debb8ea
+Version:        5.1765365298.9af08171
 Release:        0
 Summary:        Test package for openQA
 License:        GPL-2.0-or-later

++++++ openQA-worker-test.spec ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:02.277144338 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:02.281144505 +0100
@@ -18,7 +18,7 @@
 
 %define         short_name openQA-worker
 Name:           %{short_name}-test
-Version:        5.1765286149.3debb8ea
+Version:        5.1765365298.9af08171
 Release:        0
 Summary:        Test package for %{short_name}
 License:        GPL-2.0-or-later

++++++ openQA.spec ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:02.341147027 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:02.341147027 +0100
@@ -99,7 +99,7 @@
 %define devel_requires %devel_no_selenium_requires chromedriver
 
 Name:           openQA
-Version:        5.1765286149.3debb8ea
+Version:        5.1765365298.9af08171
 Release:        0
 Summary:        The openQA web-frontend, scheduler and tools
 License:        GPL-2.0-or-later

++++++ openQA-5.1765286149.3debb8ea.obscpio -> 
openQA-5.1765365298.9af08171.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/docs/Client.asciidoc 
new/openQA-5.1765365298.9af08171/docs/Client.asciidoc
--- old/openQA-5.1765286149.3debb8ea/docs/Client.asciidoc       2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/docs/Client.asciidoc       2025-12-10 
12:14:58.000000000 +0100
@@ -82,8 +82,12 @@
 secret = ABCDEF1234567890
 ----
 
-For ad-hoc use all `openqa-cli` subcommands use the `--apikey` and 
`--apisecret`
-options. Which will override whatever the config files may contain.
+Alternatively specify key and secret in environment variables `OPENQA_API_KEY`
+and `OPENQA_API_SECRET`.
+
+For ad-hoc use all `openqa-cli` subcommands use the `--apikey` and
+`--apisecret` options which will override whatever the environment or config
+files may contain.
 
 [source,sh]
 ----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1765286149.3debb8ea/docs/Networking.asciidoc 
new/openQA-5.1765365298.9af08171/docs/Networking.asciidoc
--- old/openQA-5.1765286149.3debb8ea/docs/Networking.asciidoc   2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/docs/Networking.asciidoc   2025-12-10 
12:14:58.000000000 +0100
@@ -123,8 +123,8 @@
 ===== Configure NAT with firewalld
 
 NOTE: `os-autoinst-setup-multi-machine` can set this up for you, but using
-plain NFT instead (which `os-autoinst-setup-multi-machine` can setup as well)
-or firewalld is recommended due to firewalld's suboptimal performance with
+plain NFT instead of firewalld (which `os-autoinst-setup-multi-machine` can
+setup as well) is recommended due to firewalld's suboptimal performance with
 many tap interfaces present.
 
 The required firewall rules for masquerading (NAT) and zone configuration
@@ -243,6 +243,15 @@
 example; this will not conflict with MAC addresses used by os-autoinst) and use
 a tap device not used at the same time by a SUT-VM.
 
+NOTE: Different from the qemu user mode network setup there is no DHCP or
+router advertisement on the multi machine network. IP addresses, routes and DNS
+needs to be set up by test scripts. By default IP ranges are similar to the
+ones used by qemu usermode networking - except for the IPv6 default route which
+is via `fec0::2` for MM networks instead of `fe80::2` for usermode networks.
+
+NOTE: There is no default/builtin DNS server on MM networks - if you need DNS,
+use an upstream dns server on the local network of the worker host or the 
internet.
+
 Within the VM configure the network *like* this (you may need to adjust 
concrete
 IP addresses, subnets and interface names):
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1765286149.3debb8ea/lib/OpenQA/Parser/Format/KTAP.pm 
new/openQA-5.1765365298.9af08171/lib/OpenQA/Parser/Format/KTAP.pm
--- old/openQA-5.1765286149.3debb8ea/lib/OpenQA/Parser/Format/KTAP.pm   
2025-12-09 14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/lib/OpenQA/Parser/Format/KTAP.pm   
2025-12-10 12:14:58.000000000 +0100
@@ -94,6 +94,7 @@
     }
     elsif ($line =~ /#\s*SKIP\b/i) {
         $steps->{result} = 'skip';
+        $steps->{details} = [];
     }
 
     $steps->{name} = $self->test->{name};
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/lib/OpenQA/UserAgent.pm 
new/openQA-5.1765365298.9af08171/lib/OpenQA/UserAgent.pm
--- old/openQA-5.1765286149.3debb8ea/lib/OpenQA/UserAgent.pm    2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/lib/OpenQA/UserAgent.pm    2025-12-10 
12:14:58.000000000 +0100
@@ -15,6 +15,8 @@
 sub new {
     my $self = shift->SUPER::new(@_);
     my %args = @_;
+    $args{apikey} //= $ENV{OPENQA_API_KEY};
+    $args{apisecret} //= $ENV{OPENQA_API_SECRET};
     for my $i (qw(apikey apisecret)) {
         $self->$i($args{$i}) if $args{$i};
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/public/openqa-cli.yaml 
new/openQA-5.1765365298.9af08171/public/openqa-cli.yaml
--- old/openQA-5.1765286149.3debb8ea/public/openqa-cli.yaml     2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/public/openqa-cli.yaml     2025-12-10 
12:14:58.000000000 +0100
@@ -22,10 +22,11 @@
 
 
         Configuration:
-          API key and secret are read from "client.conf" if not specified via 
CLI
-          arguments. The config file is checked for under "$OPENQA_CONFIG",
-          "~/.config/openqa" and "/etc/openqa" in this order. It must look like
-          this:
+          API key and secret are read from "client.conf" or environment
+          variables "OPENQA_API_KEY" and "OPENQA_API_SECRET" if not specified
+          via CLI arguments. The config file is checked for under
+          "$OPENQA_CONFIG", "~/.config/openqa" and "/etc/openqa" in this
+          order. It must look like this:
 
             [openqa.opensuse.org]
             key = 45ABCEB4562ACB04
@@ -36,8 +37,10 @@
 
 options:
   - apibase=s       --API base, defaults to /api/v1
-  - apikey=s        --API key
-  - apisecret=s     --API secret
+  - apikey=s        --API key. Use is discouraged due to risk of leaking
+                      credentials. Prefer config file or env variables.
+  - apisecret=s     --API secret. Use is discouraged due to risk of leaking
+                      credentials. Prefer config file or env variables.
   - host=s          --Target host, defaults to http://localhost
   - help|h          --Get more information on a specific command
   - osd             --Set target host to http://openqa.suse.de
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/script/openqa-clone-job 
new/openQA-5.1765365298.9af08171/script/openqa-clone-job
--- old/openQA-5.1765286149.3debb8ea/script/openqa-clone-job    2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/script/openqa-clone-job    2025-12-10 
12:14:58.000000000 +0100
@@ -58,9 +58,9 @@
 part of the URL or as its own parameter.
 
 API key and secret are read from "client.conf" if not specified via CLI
-arguments. The config file is checked for under "$OPENQA_CONFIG",
-"~/.config/openqa" and "/etc/openqa" in this order. It must look like
-this:
+arguments or environment variables "OPENQA_API_KEY" and "OPENQA_API_SECRET".
+The config file is checked for under "$OPENQA_CONFIG", "~/.config/openqa" and
+"/etc/openqa" in this order. It must look like this:
 
   [openqa.opensuse.org]
   key = 45ABCEB4562ACB04
@@ -181,11 +181,15 @@
 
 =item B<--apikey> <value>
 
-Specifies the public key needed for API authentication.
+Specifies the public key needed for API authentication. Overrides config file
+setting and environment variable C<OPENQA_API_KEY>. Use is discouraged due to
+risk of leaking credentials.
 
 =item B<--apisecret> <value>
 
-Specifies the secret key needed for API authentication.
+Specifies the secret key needed for API authentication. Overrides config file
+setting and environment variable C<OPENQA_API_SECRET>. Use is discouraged due
+to risk of leaking credentials.
 
 =item B<--verbose, -v>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1765286149.3debb8ea/script/openqa-dump-templates 
new/openQA-5.1765365298.9af08171/script/openqa-dump-templates
--- old/openQA-5.1765286149.3debb8ea/script/openqa-dump-templates       
2025-12-09 14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/script/openqa-dump-templates       
2025-12-10 12:14:58.000000000 +0100
@@ -25,9 +25,9 @@
 
 =item B<--apikey> KEY, B<--apisecret> SECRET
 
-Specify api key and secret to use, overrides use of config file 
~/.config/openqa/client.conf
-
-override values from config file
+Specify api key and secret to use, overrides use of config file
+~/.config/openqa/client.conf and environment variable C<OPENQA_API_KEY>. Use
+is discouraged due to risk of leaking credentials.
 
 =item B<--group> GROUP
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/openQA-5.1765286149.3debb8ea/script/openqa-load-templates 
new/openQA-5.1765365298.9af08171/script/openqa-load-templates
--- old/openQA-5.1765286149.3debb8ea/script/openqa-load-templates       
2025-12-09 14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/script/openqa-load-templates       
2025-12-10 12:14:58.000000000 +0100
@@ -25,9 +25,9 @@
 
 =item B<--apikey> KEY, B<--apisecret> SECRET
 
-Specify api key and secret to use, overrides use of config file 
~/.config/openqa/client.conf
-
-override values from config file
+Specify api key and secret to use, overrides use of config file
+~/.config/openqa/client.conf and environment variable C<OPENQA_API_KEY>. Use
+is discouraged due to risk of leaking credentials.
 
 =item B<--clean>
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/script/worker 
new/openQA-5.1765365298.9af08171/script/worker
--- old/openQA-5.1765286149.3debb8ea/script/worker      2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/script/worker      2025-12-10 
12:14:58.000000000 +0100
@@ -24,11 +24,15 @@
 
 =item B<--apikey> <value>
 
-specify the public key needed for API authentication
+specify the public key needed for API authentication. Overrides config file
+setting and environment variable C<OPENQA_API_KEY>. Use is discouraged due to
+risk of leaking credentials.
 
 =item B<--apisecret> <value>
 
-specify the secret key needed for API authentication
+specify the secret key needed for API authentication. Overrides config file
+setting and environment variable C<OPENQA_API_SECRET>. Use is discouraged due
+to risk of leaking credentials.
 
 =item B<--isotovideo> PATH
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/openQA-5.1765286149.3debb8ea/t/api/03-auth.t 
new/openQA-5.1765365298.9af08171/t/api/03-auth.t
--- old/openQA-5.1765286149.3debb8ea/t/api/03-auth.t    2025-12-09 
14:15:49.000000000 +0100
+++ new/openQA-5.1765365298.9af08171/t/api/03-auth.t    2025-12-10 
12:14:58.000000000 +0100
@@ -49,6 +49,16 @@
 
 client($t, apikey => undef, apisecret => undef);
 
+subtest 'key+secret from env variables' => sub {
+    my $t_new = Test::Mojo->new('OpenQA::WebAPI');
+    $t_new->delete_ok('/api/v1/assets/1')->status_is(403, 'clean user agent 
has no credentials');
+    local $ENV{OPENQA_API_KEY} = 'LANCELOTKEY01';
+    local $ENV{OPENQA_API_SECRET} = 'MANYPEOPLEKNOW';
+    client($t_new, apikey => undef, apisecret => undef);
+    $t_new->delete_ok('/api/v1/assets/1')->status_is(403)
+      ->json_is('/error' => 'Administrator level required', 'key read from env 
(but missing administrator level)');
+};
+
 subtest 'access limiting for non authenticated users' => sub {
     $t->get_ok('/api/v1/jobs')->status_is(200);
     is $t->tx->res->headers->access_control_allow_origin, '*', 'CORS header 
set for non authenticated routes';

++++++ openQA.obsinfo ++++++
--- /var/tmp/diff_new_pack.DBeX9S/_old  2025-12-11 18:38:19.217856210 +0100
+++ /var/tmp/diff_new_pack.DBeX9S/_new  2025-12-11 18:38:19.273858563 +0100
@@ -1,5 +1,5 @@
 name: openQA
-version: 5.1765286149.3debb8ea
-mtime: 1765286149
-commit: 3debb8ea6096217a80e20b52a705fb0186382cbf
+version: 5.1765365298.9af08171
+mtime: 1765365298
+commit: 9af081713946f8a6bc765d509a3ce855b547fdcf
 

Reply via email to