openSUSE Project Management Tool: Issueshttps://progress.opensuse.org/https://progress.opensuse.org/themes/openSUSE/favicon/favicon.ico?15829177842024-03-14T11:05:52ZopenSUSE Project Management Tool
Redmine QA - action #157237 (Resolved): dependabot PRs for the dashboard are not getting approved and mer...https://progress.opensuse.org/issues/1572372024-03-14T11:05:52Zlivdywanliv.dywan@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p>See also <a href="https://suse.slack.com/archives/C02AJ1E568M/p1710360358208519" class="external">the conversation in Slack</a>.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> dependabot PR's are merged without any human interaction</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Investigate if the <a href="https://github.com/openSUSE/qem-dashboard/blob/main/.mergify.yml#L27" class="external">mergify config</a> is effective and works as intended (hypothesis being that it doesn't)</li>
</ul>
QA - action #155755 (Resolved): OBS build errors in gitlinthttps://progress.opensuse.org/issues/1557552024-02-21T13:44:39Zokurzokurz@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p><a href="https://build.opensuse.org/package/live_build_log/devel:tools:scm/gitlint/openSUSE_Tumbleweed/x86_64" class="external">https://build.opensuse.org/package/live_build_log/devel:tools:scm/gitlint/openSUSE_Tumbleweed/x86_64</a></p>
<pre><code>[ 12s] + /usr/bin/python3.11 -mpip wheel --verbose --progress-bar off --disable-pip-version-check --use-pep517 --no-build-isolation --no-deps --wheel-dir ./build .
[ 12s] Processing /home/abuild/rpmbuild/BUILD/gitlint-core-0.18.0
…
[ 12s] ModuleNotFoundError: No module named 'setuptools'
</code></pre> QA - action #155629 (Resolved): [spike][timeboxed:6h][qem-dashboard] Order blocked incidents by p...https://progress.opensuse.org/issues/1556292024-02-19T11:12:25Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p><a href="https://smelt.suse.de/overview/#testing" class="external">https://smelt.suse.de/overview/#testing</a> shows incidents that are in testing with much more details about incidents than <a href="http://dashboard.qam.suse.de/blocked" class="external">http://dashboard.qam.suse.de/blocked</a> does. As apparently openQA test reviewers are not currently able to review all blocking test failures in time maintenance coordinators asked to better focus on incidents by priority. For this to select the higher prio incidents first the entries on <a href="http://dashboard.qam.suse.de/blocked" class="external">http://dashboard.qam.suse.de/blocked</a> should reflect the incident priority, e.g. order by priority or show the priority value.</p>
<a name="Acceptance-Criteria"></a>
<h2 >Acceptance Criteria<a href="#Acceptance-Criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> Proof-of-concept for ordering <a href="http://dashboard.qam.suse.de/blocked" class="external">http://dashboard.qam.suse.de/blocked</a> rows by incident priority</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Example of requesting incident priority for a single incident: <a href="https://smelt.suse.de/graphql/#query=%7B%0A%20%20incidents(incidentId%3A%2032579)%20%7B%0A%20%20%20%20edges%20%7B%0A%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20incidentpackagesSet%20%7B%0A%20%20%20%20%20%20%20%20%20%20edges%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20package%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20name%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20priority%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A" class="external">https://smelt.suse.de/graphql/#query=%7B%0A%20%20incidents(incidentId%3A%2032579)%20%7B%0A%20%20%20%20edges%20%7B%0A%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20incidentpackagesSet%20%7B%0A%20%20%20%20%20%20%20%20%20%20edges%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20package%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20name%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20node%20%7B%0A%20%20%20%20%20%20%20%20priority%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A</a></li>
<li>Extend qem-bot and/or qem-dashboard as necessary to have incident priority available</li>
<li>Lookup the most recent change handling embargoed updates ("embargoed" boolean value) for an example of how to add the new data from <a href="https://github.com/openSUSE/qem-dashboard/issues?q=is%3Aclosed+-label%3Adependencies+" class="external">https://github.com/openSUSE/qem-dashboard/issues?q=is%3Aclosed+-label%3Adependencies+</a> and correspondingly from qem-bot (maybe <a href="https://github.com/openSUSE/qem-bot/pull/128" class="external">https://github.com/openSUSE/qem-bot/pull/128</a> is relevant)</li>
</ul>
QA - action #155458 (Resolved): Seemingly reproducible build failures in devel:languages:perl per...https://progress.opensuse.org/issues/1554582024-02-14T08:28:43Zokurzokurz@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p><a href="https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Mojo-IOLoop-ReadWriteProcess/openSUSE_Tumbleweed/x86_64" class="external">https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Mojo-IOLoop-ReadWriteProcess/openSUSE_Tumbleweed/x86_64</a><br>
fails and I don't even see the error:</p>
<pre><code>…
[ 108s] t/12_mocked_container.t .. ok
[ 108s] t/13_shared.t ............ skipped: Skipped unless TEST_SHARED is set
[ 108s] All tests successful.
[ 108s] Files=15, Tests=69, 100 wallclock secs ( 0.08 usr 0.03 sys + 4.21 cusr 0.74 csys = 5.06 CPU)
[ 108s] Result: PASS
…
[ 108s] + RPM_EC=0
[ 108s] ++ jobs -p
[ 108s] + exit 0
[ 108s] Executing(%license): /usr/bin/bash -e /var/tmp/rpm-tmp.3qVKzU
[ 108s] + umask 022
[ 108s] + cd /home/abuild/rpmbuild/BUILD
[ 108s] + cd Mojo-IOLoop-ReadWriteProcess-0.34
[ 108s] + LICENSEDIR=/home/abuild/rpmbuild/BUILDROOT/perl-Mojo-IOLoop-ReadWriteProcess-0.340.0-38.11.x86_64/usr/share/licenses/perl-Mojo-IOLoop-ReadWriteProcess
[ 108s] + export LC_ALL=
[ 108s] + LC_ALL=
[ 108s] + export LICENSEDIR
[ 108s] + /usr/bin/mkdir -p /home/abuild/rpmbuild/BUILDROOT/perl-Mojo-IOLoop-ReadWriteProcess-0.340.0-38.11.x86_64/usr/share/licenses/perl-Mojo-IOLoop-ReadWriteProcess
[ 108s] + cp -pr /home/abuild/rpmbuild/BUILD/Mojo-IOLoop-ReadWriteProcess-0.34/LICENSE /home/abuild/rpmbuild/BUILDROOT/perl-Mojo-IOLoop-ReadWriteProcess-0.340.0-38.11.x86_64/usr/share/licenses/perl-Mojo-IOLoop-ReadWriteProcess
[ 108s] + RPM_EC=0
[ 108s] ++ jobs -p
[ 108s] + exit 0
[ 108s] Broken pipe
[ 108s] ### VM INTERACTION START ###
[ 108s] [ 105.200672][ T1] sysrq: Power Off
[ 108s] [ 105.201394][ T84] reboot: Power down
[ 108s] ### VM INTERACTION END ###
[ 108s]
[ 108s] i03-ch1c failed "build perl-Mojo-IOLoop-ReadWriteProcess.spec" at Wed Feb 14 08:02:04 UTC 2024.
</code></pre>
<p>EDIT: By now <a href="https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Mojo-IOLoop-ReadWriteProcess/openSUSE_Tumbleweed/x86_64" class="external">https://build.opensuse.org/package/live_build_log/devel:languages:perl/perl-Mojo-IOLoop-ReadWriteProcess/openSUSE_Tumbleweed/x86_64</a> is back to "succeeded" not showing "Broken pipe". I suggest to actually just report to OBS upstream about the errors, ignorable warnings, etc.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1</strong>: The problem has been reported to upstream OBS (either already reported or new report)</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Lookup if there any existing issues about such confusing error messages or report a new one</li>
<li>Learn from OBS experts how to better handle such situation and share with the team</li>
</ul>
QA - action #154759 (Resolved): Decommission qa-maintenance/openQABot size:Shttps://progress.opensuse.org/issues/1547592024-02-01T14:25:32Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p><a href="https://gitlab.suse.de/qa-maintenance/openQABot/" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/</a> is a copy&rewrite of <a href="https://github.com/openSUSE/openSUSE-release-tools/blob/master/openqa-maintenance.py" class="external">https://github.com/openSUSE/openSUSE-release-tools/blob/master/openqa-maintenance.py</a> which was already partially replaced by <a href="https://github.com/openSUSE/qem-bot/" class="external">https://github.com/openSUSE/qem-bot/</a> . openQABot was still used for L3+MR testing, see <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules</a> but according to latest runs, e.g. <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230100" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230100</a> and <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230810" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230810</a> and also because I don't see any jobs in <a href="https://openqa.suse.de/parent_group_overview/30#grouped_by_build" class="external">https://openqa.suse.de/parent_group_overview/30#grouped_by_build</a> I assume nobody needs openQABot anymore. To reduce our maintenance effort we should fully decommission openQABot.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> <a href="https://gitlab.suse.de/qa-maintenance/openQABot" class="external">https://gitlab.suse.de/qa-maintenance/openQABot</a> is archived</li>
<li><strong>AC2:</strong> No openQABot invocations happen over <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules</a></li>
<li><strong>AC3:</strong> openQABot is not referenced as active application anymore on common places like wiki pages</li>
<li><strong>AC4:</strong> Full decommissioning was announced over applicable communication channels</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li><em>DONE</em> Announce plans for decommmissioning over Slack #eng-testing, #discuss-qa-maintenance, discuss-maintenance and ask for objections
<ul>
<li><a href="https://suse.slack.com/archives/C02CANHLANP/p1707303163490919" class="external">https://suse.slack.com/archives/C02CANHLANP/p1707303163490919</a></li>
</ul></li>
<li>Wait for a reasonable reaction time</li>
<li>Stop schedules on <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules</a></li>
<li>Archive the repository</li>
<li>Remove/update any references on wiki.suse.net, confluence.suse.com, etc.</li>
</ul>
QA - coordination #154756 (Resolved): [epic] Decommission qa-maintenance/openQABothttps://progress.opensuse.org/issues/1547562024-02-01T14:20:27Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p><a href="https://gitlab.suse.de/qa-maintenance/openQABot/" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/</a> is a copy&rewrite of <a href="https://github.com/openSUSE/openSUSE-release-tools/blob/master/openqa-maintenance.py" class="external">https://github.com/openSUSE/openSUSE-release-tools/blob/master/openqa-maintenance.py</a> which was already partially replaced by <a href="https://github.com/openSUSE/qem-bot/" class="external">https://github.com/openSUSE/qem-bot/</a> . openQABot was still used for L3+MR testing, see <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules</a> but according to latest runs, e.g. <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230100" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230100</a> and <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230810" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/jobs/2230810</a> and also because I don't see any jobs in <a href="https://openqa.suse.de/parent_group_overview/30#grouped_by_build" class="external">https://openqa.suse.de/parent_group_overview/30#grouped_by_build</a> I assume nobody needs openQABot anymore. To reduce our maintenance effort we should fully decommission openQABot.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> <a href="https://gitlab.suse.de/qa-maintenance/openQABot" class="external">https://gitlab.suse.de/qa-maintenance/openQABot</a> is archived</li>
<li><strong>AC2:</strong> No openQABot invocations happen over <a href="https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules" class="external">https://gitlab.suse.de/qa-maintenance/openQABot/-/pipeline_schedules</a></li>
<li><strong>AC3:</strong> openQABot is not referenced as active application anymore on common places like wiki pages</li>
<li><strong>AC4:</strong> Full decommissioning was announced over applicable communication channels</li>
</ul>
QA - action #154699 (Resolved): https://os-autoinst.github.io/qa-tools-backlog-assistant/ not upd...https://progress.opensuse.org/issues/1546992024-02-01T09:26:22Zokurzokurz@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p><a href="https://os-autoinst.github.io/qa-tools-backlog-assistant/" class="external">https://os-autoinst.github.io/qa-tools-backlog-assistant/</a> shows Latest Run: 2024-01-31 23:19:25 UTC, should be 2024-02-01 by now</p>
<p>From the GitHub action log: <a href="https://github.com/os-autoinst/qa-tools-backlog-assistant/actions/runs/7738915674/job/21100696051#step:12:329" class="external">https://github.com/os-autoinst/qa-tools-backlog-assistant/actions/runs/7738915674/job/21100696051#step:12:329</a></p>
<pre><code>Err:49 mirror+file:/etc/apt/apt-mirrors.txt jammy-updates/main amd64 python3-pil amd64 9.0.1-1ubuntu0.1
404 Not Found [IP: 20.106.104.242 80]
E: Failed to fetch mirror+file:/etc/apt/apt-mirrors.txt/pool/main/p/pillow/python3-pil_9.0.1-1ubuntu0.1_amd64.deb 404 Not Found [IP: 20.106.104.242 80]
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?
Fetched 62.4 MB in 5s (12.0 MB/s)
Error: Process completed with exit code 100.
</code></pre>
<p>And why did nobody receive emails about failing github actions?</p>
<a name="Expected-result"></a>
<h2 >Expected result<a href="#Expected-result" class="wiki-anchor">¶</a></h2>
<ul>
<li>"Latest run" should be current again</li>
<li>We should receive some notification if github actions fail</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Look into the details of the mentioned github actions</li>
<li>Fix the problem</li>
<li>Ensure that we receive notifications for failing github actions (if they actually fail)</li>
<li>Ensure that our backlog status is current again</li>
<li>Consider improving the GHA, why do we even install dependencies. Should we build a container for deps ourselves?</li>
</ul>
QA - action #153937 (Resolved): [tools] Make the end of each meeting explicit size:Shttps://progress.opensuse.org/issues/1539372024-01-19T10:54:34Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p>Based on retro 2024-01-19. okurz: I found multiple of our meetings a bit frustrating not receiving enough feedback also because many do not have their camera enabled. I would really like if people either more actively participate.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> One mention on our team wiki about best practices</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Make the end of each meeting explicit e.g. "We are done with the call", use sound effects</li>
<li>Encourage people to leave or agree to wrap up early if participants are struggling to contribute</li>
</ul>
QA - action #153799 (Resolved): Prepare DHCP/DNS for machines coming to qe.prg2.suse.org based on...https://progress.opensuse.org/issues/1537992024-01-17T20:04:43Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p>Many former QAM machines that are now in PRG2/PRG2e which are not yet in operation were formerly already managed in <a href="https://gitlab.suse.de/OPS-Service/salt" class="external">https://gitlab.suse.de/OPS-Service/salt</a> for both DHCP as well as DNS. Now DHCP/DNS needs to be adapted for the machines that should live in qe.prg2.suse.org to be able to operate properly again.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> Valid DHCP+DNS entries exist for all former QAM machines now residing in PRG2/PRG2e</li>
<li><strong>AC2:</strong> No more references left in the OPS-Service repo for decomissioned QAM machines</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Block on #153664</li>
<li>See <a class="issue tracker-4 status-3 priority-4 priority-default closed child" title="action: Prepare DHCP/DNS for qe.prg2.suse.org based on former qa.suse.de entries size:M (Resolved)" href="https://progress.opensuse.org/issues/153796">#153796</a> for similar work for QE non-openQA machines</li>
<li>See how currently DHCP/DNS records are managed in examples like <a href="https://gitlab.suse.de/OPS-Service/salt/-/merge_requests/3839/diffs" class="external">https://gitlab.suse.de/OPS-Service/salt/-/merge_requests/3839/diffs</a></li>
<li>Go through all entries in <a href="https://gitlab.suse.de/OPS-Service/salt/-/tree/production/pillar/domain/qam_suse_de/hosts.yaml" class="external">https://gitlab.suse.de/OPS-Service/salt/-/tree/production/pillar/domain/qam_suse_de/hosts.yaml</a> and for each entry</li>
<li>Cross-check with racktables e.g. <a href="https://racktables.nue.suse.com/index.php?page=search&last_page=object&last_tab=default&q=whale" class="external">https://racktables.nue.suse.com/index.php?page=search&last_page=object&last_tab=default&q=whale</a> (put the name in the search)
<ul>
<li>Example of a valid machine <a href="https://racktables.nue.suse.com/index.php?page=object&tab=default&object_id=9594" class="external">https://racktables.nue.suse.com/index.php?page=object&tab=default&object_id=9594</a></li>
<li>Example of a machine that's gone <a href="https://racktables.nue.suse.com/index.php?page=ipaddress&ip=10.161.224.55" class="external">https://racktables.nue.suse.com/index.php?page=ipaddress&ip=10.161.224.55</a></li>
<li><em>IF</em> the machine still exists and should be in qe.prg2.suse.org (should be about 25 machines)</li>
<li>move and adapt the according entries to
<ul>
<li>pillar/domain/qe_prg2_suse_org/hosts.yaml</li>
<li>salt/profile/dns/files/prg2_suse_org/dns-qe.prg2.suse.org</li>
<li>salt/profile/dns/files/prg2_suse_org/dns-qe.prg2.suse.org-rev-10.145.0</li>
</ul></li>
<li><em>ELSE</em> if the machine does not exist anymore</li>
<li>remove all references in <a href="https://gitlab.suse.de/OPS-Service/salt" class="external">https://gitlab.suse.de/OPS-Service/salt</a></li>
</ul></li>
<li>After that remove pillar/domain/qam_suse_de/hosts.yaml as well as all not anymore used A-records in qam.suse.de as qam.suse.de should from then on only be used for CNAME entries</li>
</ul>
QA - action #153796 (Resolved): Prepare DHCP/DNS for qe.prg2.suse.org based on former qa.suse.de ...https://progress.opensuse.org/issues/1537962024-01-17T19:57:12Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p>Many machines that are now in PRG2/PRG2e which are not yet in operation were formerly managed in <a href="https://gitlab.suse.de/qa-sle/qanet-configs/" class="external">https://gitlab.suse.de/qa-sle/qanet-configs/</a> . The DNS config from qanet meanwhile is also provided by Eng-Infra maintained DNS servers managed in <a href="https://gitlab.suse.de/OPS-Service/salt" class="external">https://gitlab.suse.de/OPS-Service/salt</a> but for many machines DHCP/DNS needs to be prepared for the machines that should live in qe.prg2.suse.org to be able to operate properly again.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> Valid DHCP+DNS entries exist for all former QA non-openQA machines now residing in PRG2/PRG2e</li>
<li><strong>AC2</strong>: No more references left in the OPS-Service repo for decomissioned QA non-openQA machines</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>See how currently DHCP/DNS records are managed in examples like <a href="https://gitlab.suse.de/OPS-Service/salt/-/merge_requests/3839/diffs" class="external">https://gitlab.suse.de/OPS-Service/salt/-/merge_requests/3839/diffs</a></li>
<li>See how <a href="https://gitlab.suse.de/qa-sle/qanet-configs/" class="external">https://gitlab.suse.de/qa-sle/qanet-configs/</a> is structured to be able to find DHCP/DNS entries for machines.</li>
<li>Go through all A-record entries of <a href="https://gitlab.suse.de/OPS-Service/salt/-/tree/production/salt/profile/dns/files/prg2_suse_org/dns-qa.suse.de.zone" class="external">https://gitlab.suse.de/OPS-Service/salt/-/tree/production/salt/profile/dns/files/prg2_suse_org/dns-qa.suse.de.zone</a> and for each entry
<ul>
<li><em>IF</em> the machine still exists (There should be about 10 physical machines, for some multiple entries, e.g. all "grenache" lpars)</li>
<li>create an according entry in
<ul>
<li>pillar/domain/qe_prg2_suse_org/hosts.yaml</li>
<li>salt/profile/dns/files/prg2_suse_org/dns-qe.prg2.suse.org</li>
<li>salt/profile/dns/files/prg2_suse_org/dns-qe.prg2.suse.org-rev-10.145.0</li>
</ul></li>
<li><em>ELSE</em> if the machine does not exist anymore</li>
<li>remove all references in <a href="https://gitlab.suse.de/OPS-Service/salt" class="external">https://gitlab.suse.de/OPS-Service/salt</a></li>
</ul></li>
</ul>
QA - action #153709 (Resolved): Move of selected LSG QE machines NUE1 to PRG2e - ada size:Mhttps://progress.opensuse.org/issues/1537092024-01-16T19:48:12Zokurzokurz@suse.com
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> ada is usable from PRG2e - QA engineers can access the machine using virt-manager as well as their personal VMs over ssh</li>
<li><strong>AC2:</strong> ada is stable in our salt again</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li><em>DONE</em> Follow <a href="https://jira.suse.com/browse/ENGINFRA-3685" class="external">https://jira.suse.com/browse/ENGINFRA-3685</a></li>
<li>Ensure machine can be reached, e.g. ssh, IPv4+IPv6</li>
<li>Ensure machine is used as in before migration including VMs</li>
<li>After ensuring system is fully up, <code>systemctl is-system-running</code>, then add back to salt and ensure there are no related alerts</li>
</ul>
QA - action #153706 (Resolved): Move of selected LSG QE machines NUE1 to PRG2 - amd-zen2-gpu-sut1...https://progress.opensuse.org/issues/1537062024-01-16T19:47:18Zokurzokurz@suse.com
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> amd-zen2-gpu-sut1 is usable from PRG2</li>
</ul>
<a name="Acceptance-tests"></a>
<h2 >Acceptance tests<a href="#Acceptance-tests" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AT1-1:</strong> Run openQA test and make it look like <a href="https://openqa.opensuse.org/tests/3583693/" class="external">https://openqa.opensuse.org/tests/3583693/</a></li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li><em>DONE</em> <del>Follow <a href="https://jira.suse.com/browse/ENGINFRA-3743" class="external">https://jira.suse.com/browse/ENGINFRA-3743</a></del></li>
<li><em>DONE</em> <del>Ensure machine can be reached from o3</del></li>
<li><p>Ensure machine is used as in before migration</p>
<ul>
<li>Previously the bare-metal machine was controlled by "rebel", see <a href="https://openqa.opensuse.org/admin/workers/578" class="external">https://openqa.opensuse.org/admin/workers/578</a>, with latest succesful job on that worker instance <a href="https://openqa.opensuse.org/tests/3583693/file/vars.json" class="external">https://openqa.opensuse.org/tests/3583693/file/vars.json</a> . Now we need to run an according openQA worker instance - maybe like <a href="https://progress.opensuse.org/projects/openqav3/wiki/#o3-s390-workers" class="external">https://progress.opensuse.org/projects/openqav3/wiki/#o3-s390-workers</a> - on any existing o3 openQA worker machine and ensure the machine is able to work on bare-metal tests again.</li>
</ul></li>
</ul>
QA - action #152470 (Resolved): openqa-service fetch_openqa_bugs "requests.exceptions.ConnectTime...https://progress.opensuse.org/issues/1524702023-12-12T09:41:01Zokurzokurz@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p>Daily email with subject<br>
"Cron <a href="mailto:root@openqa-service">root@openqa-service</a> (date; fetch_openqa_bugs)> /tmp/fetch_openqa_bugs_osd.log"</p>
<p>and content</p>
<pre><code>Exception occured while fetching bsc#1212271
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 160, in _new_conn
(self._dns_host, self.port), self.timeout, **extra_kw
File "/usr/lib/python3.6/site-packages/urllib3/util/connection.py", line 84, in create_connection
raise err
File "/usr/lib/python3.6/site-packages/urllib3/util/connection.py", line 74, in create_connection
sock.connect(sa)
socket.timeout: timed out
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 677, in urlopen
chunked=chunked,
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 381, in _make_request
self._validate_conn(conn)
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 978, in _validate_conn
conn.connect()
File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 309, in connect
conn = self._new_conn()
File "/usr/lib/python3.6/site-packages/urllib3/connection.py", line 167, in _new_conn
% (self.host, self.timeout),
urllib3.exceptions.ConnectTimeoutError: (<urllib3.connection.HTTPSConnection object at 0x7f70ef00c438>, 'Connection to bugzilla.suse.com timed out. (connect timeout=10)')
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 449, in send
timeout=timeout
File "/usr/lib/python3.6/site-packages/urllib3/connectionpool.py", line 727, in urlopen
method, url, error=e, _pool=self, _stacktrace=sys.exc_info()[2]
File "/usr/lib/python3.6/site-packages/urllib3/util/retry.py", line 439, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='bugzilla.suse.com', port=443): Max retries exceeded with url: /rest/bug/1212271?api_key=XXX (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f70ef00c438>, 'Connection to bugzilla.suse.com timed out. (connect timeout=10)'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/fetch_openqa_bugs", line 62, in <module>
raise e
File "/usr/bin/fetch_openqa_bugs", line 48, in <module>
issue = issue_fetcher.get_issue(bugid)
File "/usr/lib/python3.6/site-packages/openqa_bugfetcher/issues/__init__.py", line 88, in get_issue
return self.prefix_table[prefix](self.conf, bugid)
File "/usr/lib/python3.6/site-packages/openqa_bugfetcher/issues/__init__.py", line 24, in __init__
self.fetch(conf)
File "/usr/lib/python3.6/site-packages/openqa_bugfetcher/issues/bugzilla_issue.py", line 27, in fetch
req = rest_get_bug(issue_id)
File "/usr/lib/python3.6/site-packages/openqa_bugfetcher/issues/bugzilla_issue.py", line 25, in rest_get_bug
return requests.get(url, params=get_params, timeout=10)
File "/usr/lib/python3.6/site-packages/requests/api.py", line 76, in get
return request('get', url, params=params, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 532, in request
resp = self.send(prep, **send_kwargs)
File "/usr/lib/python3.6/site-packages/requests/sessions.py", line 645, in send
r = adapter.send(request, **kwargs)
File "/usr/lib/python3.6/site-packages/requests/adapters.py", line 504, in send
raise ConnectTimeout(e, request=request)
requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='bugzilla.suse.com', port=443): Max retries exceeded with url: /rest/bug/1212271?api_key=XXX (Caused by ConnectTimeoutError(<urllib3.connection.HTTPSConnection object at 0x7f70ef00c438>, 'Connection to bugzilla.suse.com timed out. (connect timeout=10)'))
</code></pre>
<p>first occurence seems to be since 2023-12-07 04:20. Could this be related to changes in the network infrastructure?</p>
<a name="Steps-to-reproduce"></a>
<h2 >Steps to reproduce<a href="#Steps-to-reproduce" class="wiki-anchor">¶</a></h2>
<p><code>ssh root@openqa-service.suse.de</code> and execute commands from /etc/crontab</p>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Reproduce the error, fix it</li>
<li>Create new bugzilla API key</li>
</ul>
QA - action #139112 (Resolved): Ensure OSD openQA PowerPC machine grenache is operational from PRG2https://progress.opensuse.org/issues/1391122023-11-04T12:46:49Zokurzokurz@suse.com
<a name="Motivation"></a>
<h2 >Motivation<a href="#Motivation" class="wiki-anchor">¶</a></h2>
<p>Most PowerPC machines are being setup in PRG2 within <a class="issue tracker-4 status-15 priority-3 priority-lowest child" title="action: Support move of PowerPC machines to PRG2 size:M (Blocked)" href="https://progress.opensuse.org/issues/132140">#132140</a> and most machines could be discovered from the HMC but apparently not grenache.</p>
<a name="Acceptance-criteria"></a>
<h2 >Acceptance criteria<a href="#Acceptance-criteria" class="wiki-anchor">¶</a></h2>
<ul>
<li><strong>AC1:</strong> grenache openQA instances as referenced in <a href="https://gitlab.suse.de/openqa/salt-pillars-openqa/-/blob/master/openqa/workerconf.sls" class="external">https://gitlab.suse.de/openqa/salt-pillars-openqa/-/blob/master/openqa/workerconf.sls</a> are able to pass openQA jobs after the move to PRG2</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Read <a class="issue tracker-4 status-15 priority-3 priority-lowest child" title="action: Support move of PowerPC machines to PRG2 size:M (Blocked)" href="https://progress.opensuse.org/issues/132140">#132140</a> about the generic setup and in particular the HMC</li>
<li>See current infrastructure management network entry <a href="https://racktables.nue.suse.com/index.php?page=object&object_id=3120" class="external">https://racktables.nue.suse.com/index.php?page=object&object_id=3120</a> about the machine "grenache"</li>
<li>Ensure we have access to grenache manually as well as with verification openQA jobs, both for osd</li>
<li>Update the infrastructure management network entry <a href="https://racktables.nue.suse.com/index.php?page=object&object_id=3120" class="external">https://racktables.nue.suse.com/index.php?page=object&object_id=3120</a> accordingly, e.g. new FQDN</li>
<li>Inform users about the result</li>
</ul>
<a name="Rollback-steps"></a>
<h2 >Rollback steps<a href="#Rollback-steps" class="wiki-anchor">¶</a></h2>
<ul>
<li>Add back salt key with <code>salt-key -y -a grenache-1.qa.suse.de</code></li>
</ul>
QA - action #103464 (Resolved): qa-tools-backlog-assistant: Extract code into a GitHub Action for...https://progress.opensuse.org/issues/1034642021-12-03T10:11:11Ztinitatina.mueller+trick-redmine@suse.com
<a name="Observation"></a>
<h2 >Observation<a href="#Observation" class="wiki-anchor">¶</a></h2>
<p>Currently there are two projects originating from the same one:</p>
<ul>
<li><a href="https://github.com/os-autoinst/qa-tools-backlog-assistant" class="external">https://github.com/os-autoinst/qa-tools-backlog-assistant</a></li>
<li><a href="https://github.com/BillAnastasiadis/qe-c-backlog-assistant" class="external">https://github.com/BillAnastasiadis/qe-c-backlog-assistant</a></li>
</ul>
<p>Originally the script contained the code and configuration.<br>
Now both projects have diverged because they are tracking different backlogs.<br>
Also both projects have been refactored so that the configuration is not directly in the code anymore.</p>
<p>Other projects wanting to use this assistant have to fork it, but because of local changes they can't easily</p>
<ul>
<li>contribute back code improvements</li>
<li>pull in upstream improvements</li>
</ul>
<a name="Suggestions"></a>
<h2 >Suggestions<a href="#Suggestions" class="wiki-anchor">¶</a></h2>
<ul>
<li>Extract code into a GitHub Action, so that projects using it only have to configure it locally via a YAML file.</li>
<li><a href="https://docs.github.com/en/actions/creating-actions" class="external">https://docs.github.com/en/actions/creating-actions</a></li>
<li>Configuration <em>could</em> be done via the workflow file itself (via env vars), but that may include a lot of repetition</li>
<li>A YAML file read by the code directly might be better</li>
<li>The workflow configuration currently needs to define every queue separately, see <a href="https://github.com/BillAnastasiadis/qe-c-backlog-assistant/blob/master/.github/workflows/backlog_checker.yml#L30" class="external">https://github.com/BillAnastasiadis/qe-c-backlog-assistant/blob/master/.github/workflows/backlog_checker.yml#L30</a> ff. Better might be just one workflow step.</li>
</ul>