Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package openQA for openSUSE:Factory checked in at 2026-10-21 20:57:25 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/openQA (Old) and /work/SRC/openSUSE:Factory/.openQA.new.2252680 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "openQA" Wed Oct 21 20:57:25 2026 rev:895 rq:1386665 version:5.1792527840.d945a1a7 Changes: -------- --- /work/SRC/openSUSE:Factory/openQA/openQA.changes 2026-10-20 12:42:55.502047218 +0200 +++ /work/SRC/openSUSE:Factory/.openQA.new.2252680/openQA.changes 2026-10-21 20:59:06.752070671 +0200 @@ -1,0 +2,16 @@ +Tue Oct 20 20:24:14 UTC 2026 - [email protected] + +- Update to version 5.1792527840.d945a1a7: + * docs: document OVS worker health check and REQUIRED_TAP_DEVS + * chore(deps): bump the all-actions group with 3 updates (#7987) + * chore(deps-dev): bump globals from 17.4.0 to 17.13.0 (#7986) + * chore(deps-dev): bump postcss from 8.5.23 to 8.5.31 (#7984) + * feat: Extend auto_clone_regex to cover OVS DBus.Error.NoReply failures + * fix(mergify): ignore openqa-in-openqa checks + * Revert "fix(deps): align MCP version requirement" + * chore(deps): Dependency cron 2026-10-20 + * fix(worker): honour TAPDEV and NICOFFSET in OVS health check + * chore(deps-dev): bump postcss-safe-parser from 7.0.1 to 7.1.0 + * feat: mark deleted needle in collapsed needle selector + +------------------------------------------------------------------- Old: ---- openQA-5.1792422872.0ae0959e.obscpio New: ---- openQA-5.1792527840.d945a1a7.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ openQA-client-test.spec ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:08.912161228 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:08.914161312 +0200 @@ -18,7 +18,7 @@ %define short_name openQA-client Name: %{short_name}-test -Version: 5.1792422872.0ae0959e +Version: 5.1792527840.d945a1a7 Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA-test.spec ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:08.939162360 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:08.941162444 +0200 @@ -18,7 +18,7 @@ %define short_name openQA Name: %{short_name}-test -Version: 5.1792422872.0ae0959e +Version: 5.1792527840.d945a1a7 Release: 0 Summary: Test package for openQA License: GPL-2.0-or-later ++++++ openQA-worker-test.spec ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:08.985164289 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:08.986164331 +0200 @@ -18,7 +18,7 @@ %define short_name openQA-worker Name: %{short_name}-test -Version: 5.1792422872.0ae0959e +Version: 5.1792527840.d945a1a7 Release: 0 Summary: Test package for %{short_name} License: GPL-2.0-or-later ++++++ openQA.spec ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:09.021165798 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:09.023165882 +0200 @@ -73,7 +73,7 @@ # The following line is generated from dependencies.yaml %define worker_requires bsdtar openQA-client optipng os-autoinst perl(Capture::Tiny) perl(File::Map) perl(Minion::Backend::SQLite) >= 5.0.7 perl(Mojo::IOLoop::ReadWriteProcess) >= 0.26 perl(Mojo::SQLite) psmisc sqlite3 >= 3.24.0 # The following line is generated from dependencies.yaml -%define mcp_requires perl(MCP) >= 0.15.0 +%define mcp_requires perl(MCP) >= 0.80.0 %if 0%{?suse_version} < 1570 # SLE <= 15 has older Perl not providing a sufficiently recent # ExtUtils::ParseXS needed by ExtUtils::CppGuess @@ -104,7 +104,7 @@ %define devel_requires %devel_no_selenium_requires chromedriver Name: openQA -Version: 5.1792422872.0ae0959e +Version: 5.1792527840.d945a1a7 Release: 0 Summary: Framework for automated system-level testing (web-frontend, scheduler and tools) Group: Development/Tools/Other ++++++ node_modules.obscpio ++++++ Binary files old/globals-17.13.0.tgz and new/globals-17.13.0.tgz differ Binary files old/globals-17.4.0.tgz and new/globals-17.4.0.tgz differ Binary files old/postcss-8.5.23.tgz and new/postcss-8.5.23.tgz differ Binary files old/postcss-8.5.30.tgz and new/postcss-8.5.30.tgz differ Binary files old/postcss-safe-parser-7.0.1.tgz and new/postcss-safe-parser-7.0.1.tgz differ Binary files old/postcss-safe-parser-7.1.0.tgz and new/postcss-safe-parser-7.1.0.tgz differ ++++++ node_modules.spec.inc ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:09.730195523 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:09.734195690 +0200 @@ -135,7 +135,7 @@ Source1134: https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz#/glob-parent-6.0.2.tgz Source1135: https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz#/global-modules-2.0.0.tgz Source1136: https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz#/global-prefix-3.0.0.tgz -Source1137: https://registry.npmjs.org/globals/-/globals-17.4.0.tgz#/globals-17.4.0.tgz +Source1137: https://registry.npmjs.org/globals/-/globals-17.13.0.tgz#/globals-17.13.0.tgz Source1138: https://registry.npmjs.org/globby/-/globby-16.2.4.tgz#/globby-16.2.4.tgz Source1139: https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz#/globjoin-0.1.4.tgz Source1140: https://registry.npmjs.org/graphlib/-/graphlib-2.1.8.tgz#/graphlib-2.1.8.tgz @@ -198,10 +198,10 @@ Source1197: https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#/path-key-3.1.1.tgz Source1198: https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz#/picocolors-1.1.1.tgz Source1199: https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz#/picomatch-2.3.2.tgz -Source1200: https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz#/postcss-8.5.23.tgz +Source1200: https://registry.npmjs.org/postcss/-/postcss-8.5.30.tgz#/postcss-8.5.30.tgz Source1201: https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz#/postcss-media-query-parser-0.2.3.tgz Source1202: https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.6.tgz#/postcss-resolve-nested-selector-0.1.6.tgz -Source1203: https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz#/postcss-safe-parser-7.0.1.tgz +Source1203: https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.1.0.tgz#/postcss-safe-parser-7.1.0.tgz Source1204: https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz#/postcss-scss-4.0.9.tgz Source1205: https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.6.tgz#/postcss-selector-parser-7.1.6.tgz Source1206: https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#/postcss-value-parser-4.2.0.tgz ++++++ openQA-5.1792422872.0ae0959e.obscpio -> openQA-5.1792527840.d945a1a7.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/.github/workflows/check-helm-chart.yml new/openQA-5.1792527840.d945a1a7/.github/workflows/check-helm-chart.yml --- old/openQA-5.1792422872.0ae0959e/.github/workflows/check-helm-chart.yml 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/.github/workflows/check-helm-chart.yml 2026-10-20 22:24:00.000000000 +0200 @@ -22,7 +22,7 @@ python-version: 3.13 - name: Set up chart-testing - uses: helm/chart-testing-action@6ec842c01de15ebb84c8627d2744a0c2f2755c9f # v2 + uses: helm/chart-testing-action@720270857a28afd41e2426521a7801db09e9b510 # v2.9.0 - name: Run chart-testing run: make test-helm-lint @@ -53,7 +53,7 @@ chmod +x /usr/local/bin/retry - name: Set up chart-testing - uses: helm/chart-testing-action@6ec842c01de15ebb84c8627d2744a0c2f2755c9f # v2 + uses: helm/chart-testing-action@720270857a28afd41e2426521a7801db09e9b510 # v2.9.0 - name: Create kind cluster uses: helm/kind-action@1544676c07bb3570fcb70166beaa07c4528fd4aa # v1.15.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/.github/workflows/javascript.yml new/openQA-5.1792527840.d945a1a7/.github/workflows/javascript.yml --- old/openQA-5.1792422872.0ae0959e/.github/workflows/javascript.yml 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/.github/workflows/javascript.yml 2026-10-20 22:24:00.000000000 +0200 @@ -16,7 +16,7 @@ steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 - name: Setup Node (version ${{ matrix.node-version }}) - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 + uses: actions/setup-node@949feb2413d6458794dcd2491c4babbbce0c15c1 # v7.1.0 with: node-version: ${{ matrix.node-version }} - name: npm clean-install diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/.github/workflows/prove.yml new/openQA-5.1792527840.d945a1a7/.github/workflows/prove.yml --- old/openQA-5.1792422872.0ae0959e/.github/workflows/prove.yml 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/.github/workflows/prove.yml 2026-10-20 22:24:00.000000000 +0200 @@ -32,7 +32,7 @@ run: cover -write cover_db cover_db* - name: Generate coverage report run: make coverage-report-html - - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 + - uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2 with: name: Upload artifacts path: | diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/.mergify.yml new/openQA-5.1792527840.d945a1a7/.mergify.yml --- old/openQA-5.1792422872.0ae0959e/.mergify.yml 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/.mergify.yml 2026-10-20 22:24:00.000000000 +0200 @@ -19,7 +19,9 @@ # https://trello.com/c/0N3jHq5M/2257-report-back-to-scm-when-build-results-arent-failed-and-succeeded # So we need to require the number of tests explicitly: - '#check-success>=39' - - status-success=openqa-in-openqa-tests + # the openQA-in-openQA checks are not configured yet, the PR adding them + # is still under discussion, see https://progress.opensuse.org/issues/208764 + # - status-success=openqa-in-openqa-tests - '#check-pending=0' - and: - '#approved-reviews-by>=2' @@ -46,7 +48,8 @@ - name: automatic merge on merge-skip-obs-tests conditions: - and: *core_checks - - status-success=openqa-in-openqa-tests + # see comment about the openQA-in-openQA checks above + # - status-success=openqa-in-openqa-tests - label=merge-skip-obs-tests - -label=merge-skip-extended-tests actions: *merge diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/cpanfile new/openQA-5.1792527840.d945a1a7/cpanfile --- old/openQA-5.1792422872.0ae0959e/cpanfile 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/cpanfile 2026-10-20 22:24:00.000000000 +0200 @@ -53,7 +53,7 @@ requires 'JavaScript::Minifier::XS', '>= 0.11'; requires 'LWP::Protocol::https'; requires 'LWP::UserAgent'; -requires 'MCP', '>= 0.15.0'; +requires 'MCP', '>= 0.80.0'; requires 'Minion', '>= 10.25'; requires 'Minion::Backend::SQLite', '>= 5.0.7'; requires 'Module::Load::Conditional'; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/dependencies.yaml new/openQA-5.1792527840.d945a1a7/dependencies.yaml --- old/openQA-5.1792422872.0ae0959e/dependencies.yaml 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/dependencies.yaml 2026-10-20 22:24:00.000000000 +0200 @@ -187,7 +187,7 @@ psmisc: mcp_requires: - perl(MCP): '>= 0.15.0' + perl(MCP): '>= 0.80.0' test_requires: '%common_requires': diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/dist/rpm/openQA.spec new/openQA-5.1792527840.d945a1a7/dist/rpm/openQA.spec --- old/openQA-5.1792422872.0ae0959e/dist/rpm/openQA.spec 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/dist/rpm/openQA.spec 2026-10-20 22:24:00.000000000 +0200 @@ -73,7 +73,7 @@ # The following line is generated from dependencies.yaml %define worker_requires bsdtar openQA-client optipng os-autoinst perl(Capture::Tiny) perl(File::Map) perl(Minion::Backend::SQLite) >= 5.0.7 perl(Mojo::IOLoop::ReadWriteProcess) >= 0.26 perl(Mojo::SQLite) psmisc sqlite3 >= 3.24.0 # The following line is generated from dependencies.yaml -%define mcp_requires perl(MCP) >= 0.15.0 +%define mcp_requires perl(MCP) >= 0.80.0 %if 0%{?suse_version} < 1570 # SLE <= 15 has older Perl not providing a sufficiently recent # ExtUtils::ParseXS needed by ExtUtils::CppGuess diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/docs/Networking.md new/openQA-5.1792527840.d945a1a7/docs/Networking.md --- old/openQA-5.1792422872.0ae0959e/docs/Networking.md 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/docs/Networking.md 2026-10-20 22:24:00.000000000 +0200 @@ -195,6 +195,14 @@ > worker instances. For example, if you have set up 3 worker instances, the > same > number of tap devices should be configured. +While idle, each worker instance with the `tap` worker class checks via +os-autoinst-openvswitch whether VLAN tags can be assigned to the tap devices it +would use, as computed from `TAPDEV`, `NICOFFSET` and the instance number. If +the check fails, the worker is reported as broken. Set `REQUIRED_TAP_DEVS` to a +comma-separated list (e.g. `REQUIRED_TAP_DEVS = tap0,tap64`) to check +different devices instead, preferably in the section of the specific worker +instance. + Enable worker instances to be started on system boot: ```sh diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/etc/openqa/openqa.ini new/openQA-5.1792527840.d945a1a7/etc/openqa/openqa.ini --- old/openQA-5.1792422872.0ae0959e/etc/openqa/openqa.ini 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/etc/openqa/openqa.ini 2026-10-20 22:24:00.000000000 +0200 @@ -106,7 +106,7 @@ ## Causes jobs reported as incomplete by the worker to be cloned automatically when the ## reason matches; set to 0 to disable -#auto_clone_regex = ^(cache failure: |terminated prematurely: |api failure: Failed to register .* 503|backend died: .*VNC.*(timeout|timed out|refused)|QEMU terminated: Failed to allocate KVM HPT of order 25.* Cannot allocate memory|timeout: setup exceeded MAX_SETUP_TIME) +#auto_clone_regex = ^(cache failure: |terminated prematurely: |api failure: Failed to register .* 503|backend died: .*VNC.*(timeout|timed out|refused)|QEMU terminated: Failed to allocate KVM HPT of order 25.* Cannot allocate memory|timeout: setup exceeded MAX_SETUP_TIME|backend died: Open vSwitch command .* failed: org\.freedesktop\.DBus\.Error\.NoReply) ## The maximum amount of times a job will be restarted if the auto_clone_regex matches #auto_clone_limit = 20 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/lib/OpenQA/Setup.pm new/openQA-5.1792527840.d945a1a7/lib/OpenQA/Setup.pm --- old/openQA-5.1792422872.0ae0959e/lib/OpenQA/Setup.pm 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/lib/OpenQA/Setup.pm 2026-10-20 22:24:00.000000000 +0200 @@ -147,7 +147,7 @@ auto_duplicate_stale_jobs => 1, search_results_limit => 50000, auto_clone_regex => -'^(cache failure: |terminated prematurely: |api failure: Failed to register .* 503|backend died: .*VNC.*(timeout|timed out|refused)|QEMU terminated: Failed to allocate KVM HPT of order 25.* Cannot allocate memory)', +'^(cache failure: |terminated prematurely: |api failure: Failed to register .* 503|backend died: .*VNC.*(timeout|timed out|refused)|QEMU terminated: Failed to allocate KVM HPT of order 25.* Cannot allocate memory|backend died: Open vSwitch command .* failed: org\.freedesktop\.DBus\.Error\.NoReply)', auto_clone_limit => 20, force_result_regex => '', parallel_children_collapsable_results => join(' ', OK_RESULTS), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/lib/OpenQA/WebAPI/Controller/Step.pm new/openQA-5.1792527840.d945a1a7/lib/OpenQA/WebAPI/Controller/Step.pm --- old/openQA-5.1792422872.0ae0959e/lib/OpenQA/WebAPI/Controller/Step.pm 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/lib/OpenQA/WebAPI/Controller/Step.pm 2026-10-20 22:24:00.000000000 +0200 @@ -513,7 +513,10 @@ } # ensure we have a label assigned - $needle_info->{label} //= $needle_info->{avg_similarity} . '%: ' . $needle_info->{name}; + $needle_info->{label} + //= $needle_info->{avg_similarity} . '%: ' + . $needle_info->{name} + . ($needle_info->{deleted} ? ' (needle deleted)' : ''); # add the needle info to tags ... for my $tag (@$tags) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/lib/OpenQA/Worker.pm new/openQA-5.1792527840.d945a1a7/lib/OpenQA/Worker.pm --- old/openQA-5.1792422872.0ae0959e/lib/OpenQA/Worker.pm 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/lib/OpenQA/Worker.pm 2026-10-20 22:24:00.000000000 +0200 @@ -712,7 +712,8 @@ return "D-Bus method '$name/switch' is not available" unless defined $switch; # check whether VLAN assignments work for required tap devices my $settings = $self->settings->global_settings; - my @devices = split /,/, $settings->{REQUIRED_TAP_DEVS} // ('tap' . ($self->instance_number - 1)); + my $required = $settings->{REQUIRED_TAP_DEVS}; + my @devices = defined $required ? split(/\s*,\s*/, $required) : $self->_default_tap_devs; for my $device (@devices) { my ($res, $msg) = $switch->set_vlan($device, 1); # test set_vlan return $msg if $res != 0; # return e.g. "'tap0' is not connected to 'br1'" in case of improper setup @@ -724,6 +725,15 @@ catch ($e) { return "Unable to query D-Bus service '$name': $e" } } +# mirrors the TAPDEV computation of os-autoinst's qemu backend +sub _default_tap_devs ($self) { + my $settings = $self->settings->global_settings; + my @tapdevs = split /\s*,\s*/, $settings->{TAPDEV} || 'auto'; + my $nic_offset = $settings->{NICOFFSET} // 64; + my $base = $self->instance_number - 1; + return map { $tapdevs[$_] eq 'auto' ? 'tap' . ($base + $_ * $nic_offset) : $tapdevs[$_] } 0 .. $#tapdevs; +} + # returns whether the worker is available and a reason # note: This is used to check certain error conditions *before* starting a job to prevent incompletes and # being able to propagate the brokenness to the web UIs. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/package-lock.json new/openQA-5.1792527840.d945a1a7/package-lock.json --- old/openQA-5.1792422872.0ae0959e/package-lock.json 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/package-lock.json 2026-10-20 22:24:00.000000000 +0200 @@ -27,7 +27,7 @@ "eslint": "^10.2.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.5", - "globals": "^17.4.0", + "globals": "^17.13.0", "prettier": "^3.9.6", "stylelint": "^17.14.1", "stylelint-config-standard-scss": "^17.0.0", @@ -1860,9 +1860,9 @@ } }, "node_modules/globals": { - "version": "17.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-17.4.0.tgz", - "integrity": "sha512-hjrNztw/VajQwOLsMNT1cbJiH2muO3OROCHnbehc8eY5JyD2gqz4AcMHPqgaOR59DjgUjYAYLeH699g/eWi2jw==", + "version": "17.13.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-17.13.0.tgz", + "integrity": "sha512-RwMTC61u7hrG3ZJMkZQOK4JLJrKS8QtoTii63EmWvFXHqycY9FObBJQCbsLxSO8kjKhWE5kV1GC+Vb1g3RI0Zg==", "dev": true, "license": "MIT", "engines": { @@ -2509,9 +2509,9 @@ } }, "node_modules/postcss": { - "version": "8.5.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.23.tgz", - "integrity": "sha512-g50586zr4bZmwFiTlflMu8E0bDTb5I5gertgwAKmsdUlTQIhZtunzUlD1WSzwcVWPoAVpsrA6vlfCD7oXvRwgg==", + "version": "8.5.30", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.30.tgz", + "integrity": "sha512-zkd+e9S1AQHhmaBKye9zlFHWjOwVgqXl1q3ECYy8561K7qxR2cREf/STLskulBFd78k6AOFeA+ff1TtEzk9bAA==", "dev": true, "funding": [ { @@ -2529,9 +2529,9 @@ ], "license": "MIT", "dependencies": { - "nanoid": "^3.3.16", + "nanoid": "^3.3.20", "picocolors": "^1.1.1", - "source-map-js": "^1.2.1" + "source-map-js": "^1.2.2" }, "engines": { "node": "^10 || ^12 || >=14" @@ -2552,9 +2552,9 @@ "license": "MIT" }, "node_modules/postcss-safe-parser": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz", - "integrity": "sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.1.0.tgz", + "integrity": "sha512-1WzZxRLaAFwEh6Do+zyGpjWV3nGJNxxhuh7Ubu/q1ICImMgZJnLwhoaEpRbG4pJppp2Y1ncL9ffA2f+LhrefQg==", "dev": true, "funding": [ { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/package.json new/openQA-5.1792527840.d945a1a7/package.json --- old/openQA-5.1792422872.0ae0959e/package.json 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/package.json 2026-10-20 22:24:00.000000000 +0200 @@ -17,7 +17,7 @@ "eslint": "^10.2.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.5", - "globals": "^17.4.0", + "globals": "^17.13.0", "prettier": "^3.9.6", "stylelint": "^17.14.1", "stylelint-config-standard-scss": "^17.0.0", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/t/24-worker-overall.t new/openQA-5.1792527840.d945a1a7/t/24-worker-overall.t --- old/openQA-5.1792422872.0ae0959e/t/24-worker-overall.t 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/t/24-worker-overall.t 2026-10-20 22:24:00.000000000 +0200 @@ -749,6 +749,28 @@ is_deeply \@checked_devices, ['tap10', 'tap11'], 'tested specified required tap devices'; delete $worker->settings->global_settings->{REQUIRED_TAP_DEVS}; }; + + subtest 'TAPDEV and NICOFFSET honoured like os-autoinst' => sub { + my @checked_devices; + $fake_switch->set_vlan_result(sub ($dev, $tag) { push @checked_devices, $dev; return (0, '') }); + my $global_settings = $worker->settings->global_settings; + $global_settings->{TAPDEV} = 'tap42'; + $worker->ovs_dbus_service_error; + is_deeply \@checked_devices, ['tap42'], 'explicit TAPDEV is tested'; + @checked_devices = (); + $global_settings->{TAPDEV} = 'auto, tap7,auto'; + $worker->ovs_dbus_service_error; + is_deeply \@checked_devices, [qw(tap0 tap7 tap128)], 'auto entries computed with default NICOFFSET'; + @checked_devices = (); + $global_settings->{NICOFFSET} = 10; + $worker->ovs_dbus_service_error; + is_deeply \@checked_devices, [qw(tap0 tap7 tap20)], 'auto entries computed with custom NICOFFSET'; + @checked_devices = (); + $global_settings->{REQUIRED_TAP_DEVS} = 'tap10'; + $worker->ovs_dbus_service_error; + is_deeply \@checked_devices, ['tap10'], 'REQUIRED_TAP_DEVS takes precedence over TAPDEV'; + delete $global_settings->@{qw(TAPDEV NICOFFSET REQUIRED_TAP_DEVS)}; + }; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/t/27-errorpages.t new/openQA-5.1792527840.d945a1a7/t/27-errorpages.t --- old/openQA-5.1792422872.0ae0959e/t/27-errorpages.t 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/t/27-errorpages.t 2026-10-20 22:24:00.000000000 +0200 @@ -48,8 +48,7 @@ $t->get_ok("/tests/$existing_job/modules/installer_timezone/steps/1", {'X-Requested-With' => 'XMLHttpRequest'}) ->status_is(200, 'step viewimg loads with needle present') ->content_like(qr/inst-timezone-text/, 'needle name is shown') - ->content_unlike(qr/<span class="badge bg-danger text-light ms-1">deleted<\/span>/, - 'needle is not marked deleted') + ->content_unlike(qr/deleted/, 'needle is not marked deleted') ->content_like(qr/inst-timezone-text.*show-needle-info/s, 'needle info action icon is displayed'); unlink $needle_path or die "Failed to remove needle: $!"; @@ -58,6 +57,8 @@ ->status_is(200, 'step viewimg loads with deleted needle') ->content_like(qr/inst-timezone-text/, 'needle name is shown') ->content_like(qr/<span class="badge bg-danger text-light ms-1">deleted<\/span>/, 'needle is marked deleted') + ->content_like(qr/id="current_needle_label">\s*[^<]*inst-timezone-text \(needle deleted\)/, + 'deleted needle is marked in collapsed selector label') ->content_unlike(qr/inst-timezone-text.*show-needle-info/s, 'needle info action icon is hidden'); $t->get_ok("/tests/$existing_job/modules/installer_timezone/steps/1/src")->status_is(200) ->content_type_is('text/html;charset=UTF-8'); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/openQA-5.1792422872.0ae0959e/tools/ci/autoinst.sha new/openQA-5.1792527840.d945a1a7/tools/ci/autoinst.sha --- old/openQA-5.1792422872.0ae0959e/tools/ci/autoinst.sha 2026-10-19 17:14:32.000000000 +0200 +++ new/openQA-5.1792527840.d945a1a7/tools/ci/autoinst.sha 2026-10-20 22:24:00.000000000 +0200 @@ -1 +1 @@ -5.044000-50bc19e891aec51e4f61cec73e78abb6b308ce4b \ No newline at end of file +5.044000-2bd94ba81d9b441255ddd19aad6368f900501724 \ No newline at end of file ++++++ openQA.obsinfo ++++++ --- /var/tmp/diff_new_pack.61MRg0/_old 2026-10-21 20:59:25.523857712 +0200 +++ /var/tmp/diff_new_pack.61MRg0/_new 2026-10-21 20:59:25.530858006 +0200 @@ -1,5 +1,5 @@ name: openQA -version: 5.1792422872.0ae0959e -mtime: 1792422872 -commit: 0ae0959e946d6cd2ade2fae5258d7a83790d87f3 +version: 5.1792527840.d945a1a7 +mtime: 1792527840 +commit: d945a1a7467aaf6ac963b16bb77b4e53836bb996
