public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/openqa] f44: Bump to latest git, re-sync spec, backport a couple of patches
@ 2026-06-05 23:33 Adam Williamson
0 siblings, 0 replies; only message in thread
From: Adam Williamson @ 2026-06-05 23:33 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/openqa
Branch : f44
Commit : 82415f02740bef2ae3c377b9eecb9e2544f5ed79
Author : Adam Williamson <awilliam@redhat.com>
Date : 2026-06-05T16:32:31-07:00
Stats : +194/-19 in 7 file(s)
URL : https://src.fedoraproject.org/rpms/openqa/c/82415f02740bef2ae3c377b9eecb9e2544f5ed79?branch=f44
Log:
Bump to latest git, re-sync spec, backport a couple of patches
---
diff --git a/.gitignore b/.gitignore
index f3334e8..61c5c4d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -144,3 +144,5 @@
/assetcache-28a0214524bafe06f9866f9043fb5fe0975f4b51.tar.xz
/openQA-19189f0ef4b285279f0492a5c5f4ded6304984b0.tar.gz
/assetcache-19189f0ef4b285279f0492a5c5f4ded6304984b0.tar.xz
+/openQA-637609536026a0950adf5d3aa30b54f16c73e178.tar.gz
+/assetcache-637609536026a0950adf5d3aa30b54f16c73e178.tar.xz
diff --git a/0001-fix-Support-invent.kde.org-and-work_items-in-bug-URL.patch b/0001-fix-Support-invent.kde.org-and-work_items-in-bug-URL.patch
new file mode 100644
index 0000000..e6193cc
--- /dev/null
+++ b/0001-fix-Support-invent.kde.org-and-work_items-in-bug-URL.patch
@@ -0,0 +1,75 @@
+From a5465d3a37632a503c772f0c87f4d03f198ecdbf Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Fri, 5 Jun 2026 16:14:57 -0700
+Subject: [PATCH] fix: Support invent.kde.org and 'work_items' in bug URL
+ handling
+
+https://invent.kde.org is another issue tracker we should know
+about. It's Gitlab.
+
+While we're here, also handle Gitlab URLs with 'work_items' in
+them instead of 'issues', as Gitlab rebranded that recently. We
+don't need to support this in the other direction (ref to URL)
+yet, fortunately - Gitlab redirects /issues/ to /work_items/.
+
+Signed-off-by: Adam Williamson <awilliam@redhat.com>
+---
+ lib/OpenQA/Utils.pm | 7 ++++++-
+ t/16-utils.t | 2 ++
+ 2 files changed, 8 insertions(+), 1 deletion(-)
+
+diff --git a/lib/OpenQA/Utils.pm b/lib/OpenQA/Utils.pm
+index 4bb40db6e..e73617d15 100644
+--- a/lib/OpenQA/Utils.pm
++++ b/lib/OpenQA/Utils.pm
+@@ -49,6 +49,7 @@ BEGIN {
+ poo => 'https://progress.opensuse.org/issues/',
+ gh => 'https://github.com/',
+ kde => 'https://bugs.kde.org/show_bug.cgi?id=',
++ kdi => 'https://invent.kde.org/',
+ fdo => 'https://bugs.freedesktop.org/show_bug.cgi?id=',
+ jsc => 'https://jira.suse.com/browse/',
+ pio => 'https://pagure.io/',
+@@ -66,6 +67,7 @@ BEGIN {
+ $BUGREFS{poo} => 'poo',
+ $BUGREFS{gh} => 'gh',
+ $BUGREFS{kde} => 'kde',
++ $BUGREFS{kdi} => 'kdi',
+ $BUGREFS{fdo} => 'fdo',
+ $BUGREFS{jsc} => 'jsc',
+ $BUGREFS{pio} => 'pio',
+@@ -441,6 +443,8 @@ sub bugurl ($bugref) {
+ # same page as https://github.com/os-autoinst/openQA/pull/966 and vice
+ # versa for both an issue as well as pull request
+ # for pagure.io it has to be "issue", not "issues"
++ # gitlab rebranded "issues" to "work_items" in 2026, but so far
++ # they're keeping a redirect so we can still use "issues" for now
+ $bugref =~ BUGREF_REGEX or return $bugref;
+ my $issuetext = $+{marker} eq 'pio' ? 'issue' : 'issues';
+ return $BUGREFS{$+{marker}} . ($+{repo} ? "$+{repo}/$issuetext/" : '') . $+{id};
+@@ -464,7 +468,8 @@ sub href_to_bugref ($text) {
+ # interchangeable, see comment in 'bugurl', too
+ # gitlab URLs have an odd /-/ after the repo name, e.g.
+ # https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/5244
+- $regex = qr{(?<!["\(\[])(?<url_root>$regex)((?<repo>.*?)/(-/)?(issues?|pull)/)?(?<id>([A-Z]+-)?\d+)(?![\w])};
++ $regex
++ = qr{(?<!["\(\[])(?<url_root>$regex)((?<repo>.*?)/(-/)?(issues?|pull|work_items)/)?(?<id>([A-Z]+-)?\d+)(?![\w])};
+ $text =~ s{$regex}{@{[$BUGURLS{$+{url_root}} . ($+{repo} ? '#' . $+{repo} : '')]}#$+{id}}gi;
+ return $text;
+ }
+diff --git a/t/16-utils.t b/t/16-utils.t
+index 111acb6ff..fc910cb6c 100644
+--- a/t/16-utils.t
++++ b/t/16-utils.t
+@@ -142,6 +142,8 @@ is href_to_bugref('https://gitlab.gnome.org/GNOME/foo/-/issues/1234'), 'ggo#GNOM
+ is href_to_bugref('https://gitlab.com/fedora/sigs/flatpak/fedora-flatpaks/-/issues/26'),
+ 'gfs#flatpak/fedora-flatpaks#26',
+ 'Fedora SIGs gitlab url to bugref';
++is href_to_bugref('https://invent.kde.org/plasma/systemsettings/-/work_items/49'), 'kdi#plasma/systemsettings#49',
++ 'KDE Invent gitlab url to bugref (with newer "work_items" name)';
+ is find_bug_number('yast_roleconf-ntp-servers-empty-bsc1114818-20181115.png'), 'bsc1114818',
+ 'find the bug number from the needle name';
+
+--
+2.54.0
+
diff --git a/0001-t-Skip-earlier-in-tests_dependencies.t.patch b/0001-t-Skip-earlier-in-tests_dependencies.t.patch
new file mode 100644
index 0000000..f0ca2bd
--- /dev/null
+++ b/0001-t-Skip-earlier-in-tests_dependencies.t.patch
@@ -0,0 +1,45 @@
+From b744b8a9033260380c359b068497d264088e6a10 Mon Sep 17 00:00:00 2001
+From: Adam Williamson <awilliam@redhat.com>
+Date: Thu, 4 Jun 2026 16:00:11 -0700
+Subject: [PATCH] t: Skip earlier in tests_dependencies.t
+
+Skipping after the first subtest causes the test system to get
+confused and fail:
+
+Test Summary Report
+-------------------
+t/ui/16-tests_dependencies.t (Wstat: 0 Tests: 1 Failed: 0)
+ Parse errors: Bad plan. You planned 0 tests but ran 1.
+
+So we must skip the whole thing if Selenium isn't present, even
+though that first subtest doesn't really need it.
+
+Signed-off-by: Adam Williamson <awilliam@redhat.com>
+---
+ t/ui/16-tests_dependencies.t | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/t/ui/16-tests_dependencies.t b/t/ui/16-tests_dependencies.t
+index 6dfa7e4ff..53600db26 100644
+--- a/t/ui/16-tests_dependencies.t
++++ b/t/ui/16-tests_dependencies.t
+@@ -19,6 +19,8 @@ use OpenQA::JobDependencies::Constants qw(CHAINED DIRECTLY_CHAINED PARALLEL);
+ use OpenQA::Jobs::Constants;
+ use OpenQA::WebAPI::Controller::Test;
+
++driver_missing unless my $driver = call_driver;
++
+ subtest 'detailed behavior of merging parallel jobs into clusters' => sub {
+ my (%clusters, %cluster_by_job);
+ my %data = (cluster => \%clusters, cluster_by_job => \%cluster_by_job);
+@@ -79,7 +81,6 @@ $dependencies->create({child_job_id => 99945, parent_job_id => 99937, dependency
+ $dependencies->create({child_job_id => 99927, parent_job_id => 99961, dependency => DIRECTLY_CHAINED});
+
+ my $t = Test::Mojo->new('OpenQA::WebAPI');
+-driver_missing unless my $driver = call_driver;
+
+ sub get_tooltip ($job_id) {
+ $driver->execute_script("return \$('#nodeTable$job_id').closest('.node').data('bs-original-title');");
+--
+2.54.0
+
diff --git a/23-fedora-messaging.t b/23-fedora-messaging.t
index 58ef204..841b518 100644
--- a/23-fedora-messaging.t
+++ b/23-fedora-messaging.t
@@ -260,7 +260,6 @@ subtest 'duplicate and pass job' => sub {
subtest 'create update job' => sub {
$plugin_mock_callcount = 0;
- diag("Count: $plugin_mock_callcount");
$settings->{BUILD} = 'Update-FEDORA-2019-6bda4c81f4';
# this is intentionally not in alphabetical order
$settings->{ADVISORY_NVRS} = 'kernel-5.2.7-100.fc29 kernel-tools-5.2.7-100.fc29 kernel-headers-5.2.7-100.fc29';
@@ -272,7 +271,6 @@ subtest 'create update job' => sub {
delete $settings->{SUBVARIANT};
$t->post_ok("/api/v1/jobs" => form => $settings)->status_is(200);
ok(my $updatejob = $t->tx->res->json->{id}, 'got ID of update job');
- diag("Count: $plugin_mock_callcount");
ok($plugin_mock_callcount == 1, 'mock was called');
my ($body, $headerframe) = @{$published{'org.fedoraproject.stg.ci.fedora-update.test.queued'}};
$expected_artifact = {
@@ -317,14 +315,12 @@ subtest 'create update job' => sub {
subtest 'create update job (new-style ADVISORY_NVR_N)' => sub {
$plugin_mock_callcount = 0;
- diag("Count: $plugin_mock_callcount");
delete $settings->{ADVISORY_NVRS};
# these are intentionally not in alphabetical order
$settings->{ADVISORY_NVRS_1} = 'kernel-5.2.8-100.fc29 kernel-tools-5.2.8-100.fc29';
$settings->{ADVISORY_NVRS_2} = 'kernel-headers-5.2.8-100.fc29';
$t->post_ok("/api/v1/jobs" => form => $settings)->status_is(200);
ok(my $newupdatejob = $t->tx->res->json->{id}, 'got ID of new-style update job');
- diag("Count: $plugin_mock_callcount");
ok($plugin_mock_callcount == 1, 'mock was called');
my ($body, $headerframe) = @{$published{'org.fedoraproject.stg.ci.fedora-update.test.queued'}};
$expected_artifact = {
diff --git a/openqa.spec b/openqa.spec
index 1bbdaab..258d194 100644
--- a/openqa.spec
+++ b/openqa.spec
@@ -23,9 +23,9 @@
%global github_owner os-autoinst
%global github_name openQA
%global github_version 5
-%global github_commit 19189f0ef4b285279f0492a5c5f4ded6304984b0
+%global github_commit 637609536026a0950adf5d3aa30b54f16c73e178
# if set, will be a post-release snapshot build, otherwise a 'normal' build
-%global github_date 20260126
+%global github_date 20260604
%global shortcommit %(c=%{github_commit}; echo ${c:0:7})
# can't use linebreaks here!
@@ -52,11 +52,11 @@
# their versioning of mojolicious is different due to
# https://github.com/openSUSE/cpanspec/issues/47
# The following line is generated from dependencies.yaml (upstream)
-%define common_requires chrony perl-interpreter >= 5.20.0 perl(Carp::Always) >= 0.14.02 perl(Config::IniFiles) perl(Config::Tiny) perl(Cpanel::JSON::XS) >= 4.09 perl(Cwd) perl(Data::Dump) perl(Data::Dumper) perl(Digest::MD5) perl(Feature::Compat::Try) perl(Filesys::Df) perl(Getopt::Long) perl(Minion) >= 10.25 perl(Mojolicious) >= 9.34 perl(Regexp::Common) perl(Storable) perl(Text::Glob) perl(Time::Moment)
+%define common_requires chrony perl-interpreter >= 5.20.0 perl(Carp::Always) >= 0.14.02 perl(Config::IniFiles) perl(Cpanel::JSON::XS) >= 4.09 perl(Cwd) perl(Data::Dump) perl(Data::Dumper) perl(Digest::MD5) perl(Feature::Compat::Try) perl(Filesys::Df) perl(Getopt::Long) perl(HTTP::Status) perl(Minion) >= 10.25 perl(Mojolicious) >= 9.34 perl(Regexp::Common) perl(Storable) perl(Text::Glob) perl(Time::Moment)
# Diff from SUSE: we package bsdcat and bsdtar separately
# runtime requirements for the main package that are not required by other sub-packages
# The following line is generated from dependencies.yaml (upstream)
-%define main_requires %assetpack_requires bsdcat bsdtar git-core hostname openssh-clients perl(BSD::Resource) perl(Carp) perl(CommonMark) perl(Config::Tiny) perl(DBD::Pg) >= 3.7.4 perl(DBI) >= 1.632 perl(DBIx::Class) >= 0.082801 perl(DBIx::Class::DeploymentHandler) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::OptimisticLocking) perl(DBIx::Class::ResultClass::HashRefInflator) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(Date::Format) perl(DateTime) perl(DateTime::Duration) perl(DateTime::Format::Pg) perl(Exporter) perl(Fcntl) perl(File::Basename) perl(File::Copy) perl(File::Copy::Recursive) perl(File::Path) perl(File::Spec) perl(FindBin) perl(Getopt::Long::Descriptive) perl(IO::Handle) perl(IPC::Run) perl(JSON::Validator) perl(LWP::UserAgent) perl(Module::Load::Conditional) perl(Module::Pluggable) perl(Mojo::Base) perl(Mojo::ByteStream) perl(Mojo::IOLoop) perl(Mojo::JSON) perl(Mojo::Pg) perl(Mojo::RabbitMQ::Client) >= 0.2 perl(Mojo::URL) perl(Mojo::Util) perl(Mojolicious::Commands) perl(Mojolicious::Plugin) perl(Mojolicious::Plugin::OAuth2) perl(Mojolicious::Static) perl(Net::OpenID::Consumer) perl(POSIX) perl(Pod::POM) perl(SQL::Translator) perl(Scalar::Util) perl(Sort::Versions) perl(Text::Diff) perl(Time::HiRes) perl(Time::ParseDate) perl(Time::Piece) perl(Time::Seconds) perl(URI::Escape) perl(YAML::PP) >= 0.026 perl(YAML::XS) perl(aliased) perl(base) perl(constant) perl(diagnostics) perl(strict) perl(warnings)
+%define main_requires %assetpack_requires bsdcat bsdtar git-core hostname openssh-clients perl(BSD::Resource) perl(Carp) perl(CommonMark) perl(DBD::Pg) >= 3.7.4 perl(DBI) >= 1.632 perl(DBIx::Class) >= 0.082801 perl(DBIx::Class::DeploymentHandler) perl(DBIx::Class::DynamicDefault) perl(DBIx::Class::OptimisticLocking) perl(DBIx::Class::ResultClass::HashRefInflator) perl(DBIx::Class::Schema::Config) perl(DBIx::Class::Storage::Statistics) perl(Date::Format) perl(DateTime) perl(DateTime::Duration) perl(DateTime::Format::Pg) perl(Exporter) perl(Fcntl) perl(File::Basename) perl(File::Copy) perl(File::Copy::Recursive) perl(File::Path) perl(File::Spec) perl(FindBin) perl(Getopt::Long::Descriptive) perl(IO::Handle) perl(IPC::Run) perl(JSON::Validator) perl(LWP::UserAgent) perl(Module::Load::Conditional) perl(Module::Pluggable) perl(Mojo::Base) perl(Mojo::ByteStream) perl(Mojo::IOLoop) perl(Mojo::JSON) perl(Mojo::Pg) perl(Mojo::RabbitMQ::Client) >= 0.2 perl(Mojo::URL) perl(Mojo::Util) perl(Mojolicious::Commands) perl(Mojolicious::Plugin) perl(Mojolicious::Plugin::OAuth2) perl(Mojolicious::Static) perl(Net::OpenID::Consumer) perl(POSIX) perl(Pod::POM) perl(SQL::Translator) perl(Scalar::Util) perl(Sort::Versions) perl(Text::Diff) perl(Time::HiRes) perl(Time::ParseDate) perl(Time::Piece) perl(Time::Seconds) perl(URI::Escape) perl(YAML::PP) >= 0.026 perl(YAML::XS) perl(aliased) perl(base) perl(constant) perl(diagnostics) perl(strict) perl(warnings)
# The following line is generated from dependencies.yaml (upstream)
%define client_requires curl git-core jq perl(Getopt::Long::Descriptive) perl(IO::Socket::SSL) >= 2.009 perl(IPC::Run) perl(JSON::Validator) perl(LWP::Protocol::https) perl(LWP::UserAgent) perl(Test::More) perl(YAML::PP) >= 0.020 perl(YAML::XS)
# Diff from SUSE 1: case (they have openQA-client, we have openqa-client)
@@ -81,17 +81,18 @@
# (openssh-common in SUSE), Syntax::Keyword::Try::Deparse seems to be
# missing upstream
# The following line is generated from dependencies.yaml (upstream)
-%define test_requires %common_requires %main_requires %mcp_requires %python_scripts_requires %worker_requires curl jq openssh os-autoinst perl(App::cpanminus) perl(Test::Exception) perl(Test::Fatal) perl(Test::MockModule) perl(Test::MockObject) perl(Test::Mojo) perl(Test::Most) perl(Test::Output) perl(Test::Pod) perl(Test::Strict) perl(Test::Warnings) >= 0.029 perl(Syntax::Keyword::Try::Deparse) postgresql-server
+%define test_requires %common_requires %main_requires %mcp_requires %python_scripts_requires %worker_requires curl file jq openssh os-autoinst perl(App::cpanminus) perl(Test::Compile) perl(Test::Exception) perl(Test::Fatal) perl(Test::Mock::Time) perl(Test::MockModule) perl(Test::MockObject) perl(Test::Mojo) perl(Test::Most) perl(Test::Output) perl(Test::Pod) perl(Test::Strict) perl(Test::Warnings) >= 0.029 perl(Syntax::Keyword::Try::Deparse) postgresql-server
%ifarch x86_64
%define qemu qemu qemu-kvm
%else
%define qemu qemu
%endif
# Diff from SUSE: perl::Critic::Community is omitted as we do not package it,
-# SUSE has python3-yamllint but we just have yamllint
+# SUSE has python3-yamllint but we just have yamllint,
+# SUSE has python3-gitlint and python3-ruff but we just have gitlint and ruff
# shfmt is omitted as our package for it was orphaned and retired
# The following line is generated from dependencies.yaml (upstream)
-%define style_check_requires ShellCheck perl(Code::TidyAll) perl(Perl::Critic) yamllint
+%define style_check_requires ShellCheck perl(Code::TidyAll) perl(Perl::Critic) >= 1.156.0 perl(Pod::Markdown) perl(Test::Perl::Critic) gitlint ruff yamllint
# diff from SUSE: perl(Devel::Cover::Report::Codecovbash) dropped because
# it's not in Fedora (this means you can't run 'make coverage-codecov')
# The following line is generated from dependencies.yaml (upstream)
@@ -101,7 +102,7 @@
# multiple binary packages) and I can't find any reason for it
# diff from SUSE 2: we don't have perl(Test::CheckGitStatus) packaged
# The following line is generated from dependencies.yaml (upstream)
-%define devel_no_selenium_requires %build_requires %cover_requires %qemu %style_check_requires %test_requires curl perl(Perl::Tidy) postgresql-devel rsync sudo tar
+%define devel_no_selenium_requires %build_requires %cover_requires %qemu %style_check_requires %test_requires curl make pandoc perl(Perl::Tidy) perl(TAP::Harness::JUnit) postgresql-devel python3-weasyprint rsync sudo tar xorg-x11-fonts
# diff from SUSE: chromedriver dropped as we don't package it
# that makes this look fairly silly, but we want to follow the SUSE
# spec as close as we can
@@ -113,7 +114,7 @@
Name: openqa
Version: %{github_version}%{?github_date:^%{github_date}git%{shortcommit}}
Release: %{autorelease}
-Summary: OS-level automated testing framework
+Summary: Framework for automated system-level testing (web-frontend, scheduler and tools)
# openQA is mostly GPLv2+. some scripts and bundled Node modules are
# MIT, ace-builds is BSD-3-Clause
License: GPL-2.0-or-later AND MIT AND BSD-3-Clause
@@ -139,6 +140,12 @@ Source4: 23-fedora-messaging.t
# but we need to change the groups so we have our own versions here
Source5: geekotest.conf
Source6: openQA-worker.conf
+# https://github.com/os-autoinst/openQA/pull/7504
+# Fix 16-tests_dependencies.t when selenium is not present
+Patch: 0001-t-Skip-earlier-in-tests_dependencies.t.patch
+# https://github.com/os-autoinst/openQA/pull/7509
+# Support invent.kde.org as a bug tracker (for bug links)
+Patch: 0001-fix-Support-invent.kde.org-and-work_items-in-bug-URL.patch
BuildRequires: make
BuildRequires: %{python_scripts_requires}
@@ -330,7 +337,7 @@ Summary: Helper package to ease setup of postgresql DB
Requires: %{name} = %{version}
Requires: postgresql-server
BuildRequires: postgresql-server
-Supplements: packageand(%name:postgresql-server)
+Supplements: (%{name} and postgresql-server)
%description local-db
You only need this package if you have a local postgresql server
@@ -387,6 +394,33 @@ Requires: perl-interpreter
Use this package to install munin scripts that allow to monitor some openQA
statistics.
+%package client-bash-completion
+Summary: Bash Completion for %{name}
+Group: Development/Tools/Other
+Requires: bash-completion
+Supplements: (%{name}-client and bash-completion)
+
+%description client-bash-completion
+The official bash completion script for openqa-cli.
+
+%package client-zsh-completion
+Summary: Zsh Completion for %{name}
+Group: Development/Tools/Other
+Supplements: (%{name}-client and zsh)
+
+%description client-zsh-completion
+The official zsh completion script for openqa-cli.
+
+%package llm-server
+Summary: Local LLM Server features for openQA workers
+Requires: %{name}-worker = %{version}
+Requires: podman
+
+%description llm-server
+openQA workers can optionally host a local llama.cpp server to provide
+LLM features directly from the worker node. This package provides the
+Podman Quadlet configuration to automatically manage the server.
+
%prep
%autosetup -p1 -n %{github_name}-%{github_commit} -a 1
sed -e 's,/bin/env python,/bin/python,' -i script/openqa-label-all
@@ -434,7 +468,7 @@ ln -s %{_datadir}/openqa/script/dump-db %{buildroot}%{_bindir}/openqa-dump-db
ln -s %{_datadir}/openqa/script/openqa-label-all %{buildroot}%{_bindir}/openqa-label-all
install -d -m 755 %{buildroot}%{_datadir}/openqa/client
-install -m 755 public/openqa-cli.yaml %{buildroot}%{_datadir}/openqa/client/openqa-cli.yaml
+install -m 644 public/openqa-cli.yaml %{buildroot}%{_datadir}/openqa/client/openqa-cli.yaml
# munin
install -d -m 755 %{buildroot}/%{_datadir}/munin/plugins
@@ -545,8 +579,19 @@ fi
%postun local-db
%systemd_postun_with_restart %{openqa_localdb_services}
+%post llm-server
+# ensure the Podman Quadlet generator is run to create the .service unit
+[ -x /usr/bin/systemctl ] && /usr/bin/systemctl daemon-reload || :
+%systemd_post openqa-llm-server.service
+
+%preun llm-server
+%systemd_preun openqa-llm-server.service
+
+%postun llm-server
+%systemd_postun openqa-llm-server.service
+
%files
-%doc README.asciidoc
+%doc README.md
%ghost %config(noreplace) %attr(0644,geekotest,root) %{_sysconfdir}/openqa/openqa.ini
%ghost %config(noreplace) %attr(0640,geekotest,root) %{_sysconfdir}/openqa/database.ini
%dir %{_sysconfdir}/openqa
@@ -636,6 +681,12 @@ fi
%files devel
+%files client-bash-completion
+%{_datadir}/bash-completion/completions/openqa-cli
+
+%files client-zsh-completion
+%{_datadir}/zsh/site-functions/_openqa-cli
+
%files common
%license COPYING
%dir %{_datadir}/doc/openqa
@@ -725,6 +776,7 @@ fi
%dir %{_sysconfdir}/nginx
%dir %{_sysconfdir}/nginx/conf.d
%config %{_sysconfdir}/nginx/conf.d/openqa.conf.template
+%config %{_sysconfdir}/nginx/conf.d/openqa-llm.conf.template
%config(noreplace) %{_sysconfdir}/nginx/conf.d/openqa-assets.inc
%config(noreplace) %{_sysconfdir}/nginx/conf.d/openqa-endpoints.inc
%config(noreplace) %{_sysconfdir}/nginx/conf.d/openqa-locations.inc
@@ -801,5 +853,10 @@ fi
%files plugin-fedoraupdaterestart
%{_datadir}/openqa/lib/OpenQA/WebAPI/Plugin/FedoraUpdateRestart.pm
+%files llm-server
+%dir %{_datadir}/containers
+%dir %{_datadir}/containers/systemd
+%{_datadir}/containers/systemd/openqa-llm-server.container
+
%changelog
%{autochangelog}
diff --git a/sources b/sources
index a660431..36b69da 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (openQA-19189f0ef4b285279f0492a5c5f4ded6304984b0.tar.gz) = de813d86dca92d74f3277914d23d301a24ba2334ec96f3256d9243afc955f63f981ac790b01dc3a04f5775bd293cfb1f517a5b876c7a135fc409d4692a26634e
-SHA512 (assetcache-19189f0ef4b285279f0492a5c5f4ded6304984b0.tar.xz) = 7922c9a5e35ffc76de2d90dde770078662b00b241d795f6d09326a45c73d1202af385f087bf1c63ca04e051eed9df7bdb9ceaf9e4164456d945281ee69d7fc74
+SHA512 (openQA-637609536026a0950adf5d3aa30b54f16c73e178.tar.gz) = bac6cf66cf20f9b12c545ccb56b65ff3649e8ce875ecfc697b72280080ab731b72d34ecc1c190c7d3957fa4254026ed5cf3a5d95ee7b15364267fb8a71384e72
+SHA512 (assetcache-637609536026a0950adf5d3aa30b54f16c73e178.tar.xz) = 6bbe25d2dd673eb2753d2da573e78796cf6aade5f33f7d260ae73583979787d361a1aa800c46d82152c2dbbf3d440d46538b0f0383308875caf7abee715585e6
diff --git a/update-cache.sh b/update-cache.sh
index 0b8b788..ddfa7c3 100755
--- a/update-cache.sh
+++ b/update-cache.sh
@@ -9,7 +9,7 @@ rpm -qi perl-Mojolicious-Plugin-AssetPack > /dev/null 2>&1 || baddeps="${baddeps
rpm -qi perl-JavaScript-Minifier-XS > /dev/null 2>&1 || baddeps="${baddeps} perl-JavaScript-Minifier-XS"
rpm -qi perl-CSS-Minifier-XS > /dev/null 2>&1 || baddeps="${baddeps} perl-CSS-Minifier-XS"
rpm -qi perl-YAML-PP > /dev/null 2>&1 || baddeps="${baddeps} perl-YAML-PP"
-rpm -qi nodejs-npm > /dev/null 2>&1 || baddeps="${baddeps} nodejs-npm"
+rpm -qi $(rpm -q --whatprovides nodejs-npm) > /dev/null 2>&1 || baddeps="${baddeps} nodejs-npm"
if [ -n "${baddeps}" ]; then
echo "${baddeps} must be installed!"
exit 1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-06-05 23:33 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-05 23:33 [rpms/openqa] f44: Bump to latest git, re-sync spec, backport a couple of patches Adam Williamson
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox