public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/openqa] rawhide: 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 : rawhide
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=rawhide

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] rawhide: 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