Project

General

Profile

Actions

action #137105

closed

Handle Perl deprecation warning messages gracefully (Mojo::File::spurt is deprecated in favor of Mojo::File::spew) size:M

Added by tinita 7 months ago. Updated 5 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
2023-09-27
Due date:
2023-12-15
% Done:

0%

Estimated time:

Description

Handle Perl deprecation warning messages gracefully (was: auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry)

Observation

We had those warnings in our tests, making the tests fail because we use Test::Warnings which makes warnings fatal:

#   Failed test 'no (unexpected) warnings (via done_testing)'
  at ./t/03-testapi.t line 1105.
# Got the following unexpected warnings:
#   1: Mojo::File::spurt is deprecated in favor of Mojo::File::spew at /home/abuild/rpmbuild/BUILD/os-autoinst-4.6.1694444383.e6a5294/basetest.pm line 433.

Old ticket observation

openQA test in scenario sle-15-SP2-EC2-SAP-PAYG-Incidents-saptune-x86_64-sles4sap_gnome_saptune_overrides@ec2_r5.8xlarge fails in
1_saptune_overrides

[2023-09-22T17:20:41.791523+02:00] [info] [pid:34354] ::: basetest::runtest: # Test died: Can't locate object method "spew" via package "Mojo::File" at /usr/share/openqa/lib/OpenQA/Parser/Result/Output.pm line 17.

Test is from 2023-09-22T15:08:42, worker30.
currently the correct version of Mojolicious (9.340.0) is installed on that worker.

Reproducible

Fails since (at least) Build :30275:vim (current job)

Find jobs referencing this ticket with the help of
https://raw.githubusercontent.com/os-autoinst/scripts/master/openqa-query-for-job-label ,
for example to look for ticket 12345 call openqa-query-for-job-label poo#12345

Expected result

Last good: :30549:kernel-docs (or more recent)

Acceptance Criteria

  • AC1: OBS builds don't fail due to unexpected deprecation messages

Further details

Always latest result in this scenario: latest

Suggestions

  • Look into zypper logs if a new openQA version was installed before Mojolicious was updated
  • Extend perl-Test-Warnings to be able to categorize and exclude deprecation warnings
  • Submit new version to Tumbleweed, submit temporarily to devel:openQA:Leap:… as well as Leap maintenance
  • disable fatal warnings in OBS build
  • Optional: Try out how to use it in CI, e.g. variables
  • Require the new version in our code os-autoinst+openQA

Findings / Steps


Related issues 2 (0 open2 closed)

Related to openQA Infrastructure - action #135632: "Mojo::File::spurt is deprecated in favor of Mojo::File::spew" breaking os-autoinst OBS build and osd-deployment size:MResolvedokurz2023-05-08

Actions
Related to openQA Project - action #150959: openQA fails to build on SLE/Leap 15.6 Backports due to test-unit-and-integration failures size:MResolvedosukup2023-11-16

Actions
Actions #1

Updated by okurz 7 months ago

  • Tags set to infra
  • Subject changed from Test died: Can't locate object method "spew" via package "Mojo::File" to auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry
  • Status changed from New to In Progress
  • Assignee set to okurz
  • Target version set to Ready

tinita wrote:

Suggestions

  • Look into zypper logs if a new openQA version was installed before Mojolicious was updated

I rather suspect the problem is that at that time the specific worker was not fully up-to-date.

Actions #2

Updated by okurz 7 months ago

  • Related to action #135632: "Mojo::File::spurt is deprecated in favor of Mojo::File::spew" breaking os-autoinst OBS build and osd-deployment size:M added
Actions #3

Updated by okurz 7 months ago

  • Description updated (diff)
  • Due date set to 2023-10-11
  • Status changed from In Progress to Feedback
worker30:~ # grep 'perl-Mojolicious' /var/log/zypp/history 
2023-07-31 16:13:27|install|perl-Mojolicious|9.33-lp155.2.1|noarch||devel_openQA_Modules|da7c38eb71ad2d4a6e7baa5cc354b0b3643dff1fb2a2c93032b6a17fadb15228|
2023-09-22 15:28:44|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|

so that was slightly after the test ran. So indeed the update was installed later than the new version of os-autoinst or openQA relying on it. Checking all other machines:

sudo salt \* cmd.run 'grep "2023-09.*perl-Mojolicious" /var/log/zypp/history'
backup-qam.qe.nue2.suse.org:
worker31.oqa.prg2.suse.org:
    2023-09-23 07:48:25|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker30.oqa.prg2.suse.org:
    2023-09-22 15:28:44|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker39.oqa.prg2.suse.org:
    2023-09-22 15:28:42|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker40.oqa.prg2.suse.org:
    2023-09-22 15:28:42|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker38.oqa.prg2.suse.org:
    2023-09-22 15:28:42|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker29.oqa.prg2.suse.org:
    2023-09-22 15:28:44|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
sapworker3.qe.nue2.suse.org:
    2023-09-23 07:48:25|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker37.oqa.prg2.suse.org:
    2023-09-22 15:28:42|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
sapworker2.qe.nue2.suse.org:
    2023-09-23 07:48:25|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker-arm1.oqa.prg2.suse.org:
    2023-09-23 07:48:23|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
sapworker1.qe.nue2.suse.org:
    2023-09-22 15:28:43|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
worker-arm2.oqa.prg2.suse.org:
    2023-09-23 07:48:23|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
openqa.suse.de:
    2023-09-22 15:28:09|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:28:11|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
storage.oqa.suse.de:
openqaworker1.qe.nue2.suse.org:
    2023-09-22 15:29:00|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Leap_$releasever|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:29:02|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Leap_$releasever|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
openqaworker17.qa.suse.cz:
    2023-09-22 15:28:48|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
openqaworker16.qa.suse.cz:
    2023-09-22 15:28:49|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
qesapworker-prg6.qa.suse.cz:
    2023-09-22 15:28:43|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
qesapworker-prg7.qa.suse.cz:
    2023-09-22 15:28:43|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
qesapworker-prg4.qa.suse.cz:
    2023-09-22 15:28:43|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
qesapworker-prg5.qa.suse.cz:
    2023-09-22 15:28:43|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
openqaworker18.qa.suse.cz:
    2023-09-22 15:28:46|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
petrol.qe.nue2.suse.org:
    2023-09-22 15:28:54|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:28:55|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
powerqaworker-qam-1.qa.suse.de:
    2023-09-22 15:28:54|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:28:56|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
qamasternue.qa.suse.de:
worker2.oqa.suse.de:
    2023-09-22 15:29:00|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:29:05|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
openqaworker14.qa.suse.cz:
    2023-09-22 15:28:49|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
worker5.oqa.suse.de:
    2023-09-22 15:28:55|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:28:58|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
jenkins.qa.suse.de:
    2023-09-13 03:24:01|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Leap_$releasever|953407c8f225db330b92062b81c92458794bb8798d78c3bd8f5dc7e7430c801b|
    2023-09-21 03:24:45|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA|d50bab8cdc03e43a3ed4e2cea99d52c056f446e3c814dadd60af18cb6e9cfbcc|
openqaw5-xen.qa.suse.de:
openqa-monitor.qa.suse.de:
baremetal-support.qa.suse.de:
    2023-09-13 03:50:23|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Leap|953407c8f225db330b92062b81c92458794bb8798d78c3bd8f5dc7e7430c801b|
    2023-09-21 03:50:36|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Leap|537e1a181466ac93264e4e3b8deb8e16040ae35c7eb07b8983b487d44b91a60e|
imagetester.qe.nue2.suse.org:
    2023-09-05 19:05:02|install|perl-Mojolicious|9.33-lp155.2.1|noarch||devel_openQA_Modules|da7c38eb71ad2d4a6e7baa5cc354b0b3643dff1fb2a2c93032b6a17fadb15228|
    2023-09-22 13:28:55|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel_openQA_Modules|a9f576bc738304197588be3ad97045007df8fd54dc4bbe3017a76dd0a12e956d|
backup.qa.suse.de:
diesel.qe.nue2.suse.org:
    2023-09-22 15:28:54|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:28:56|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
worker10.oqa.suse.de:
    2023-09-22 15:29:09|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:29:12|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
schort-server.qa.suse.de:
malbec.arch.suse.de:
    2023-09-22 15:28:52|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
tumblesle.qa.suse.de:
openqa-piworker.qa.suse.de:
    2023-09-13 03:52:18|install|perl-Mojolicious|9.340.0-lp155.2.1|noarch||devel:openQA:Leap:15.4|207ed0a4f4b85906da1c88de72d7a52eefd051a7c0bc2383ed631c515776264c|
openqaworker-arm-2.suse.de:
    2023-09-22 15:29:36|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
openqaworker-arm-3.suse.de:
    2023-09-22 15:30:06|install|perl-Mojolicious|9.340.0-lp154.2.1|noarch||devel_openQA_Modules|6938f868f336a18b04916ab8bbca023777a7c77e85e1bca68375f41c9926c91f|
    2023-09-22 15:30:36|install|perl-Mojolicious-Plugin-AssetPack|2.14-lp154.3.1|noarch||devel_openQA_Modules|dd8e48bc6cbac482bca6f1008a10fe8adf0e01467d4a452249eb49e68e6ff6fa|
ERROR: Minions returned with non-zero exit code

comparing that against when os-autoinst was installed:

worker30.oqa.prg2.suse.org:
    2023-09-04 07:13:00|install|os-autoinst|4.6.1693332527.fb060dc-lp155.1634.1|x86_64||devel_openQA|30a56d4f6b5a734eeb786f07f9558bda28a77cfe2f9200bba0d00cedddc477a8|
    2023-09-12 07:13:59|install|os-autoinst|4.6.1694444383.e6a5294-lp155.1635.1|x86_64||devel_openQA|150210e29ecab59a999033882394044b82ec7c9cbc0ae79f4d927020d68bc0be|
    2023-09-22 15:28:44|install|os-autoinst|4.6.1695365879.b5000e3-lp155.1640.1|x86_64||devel_openQA|4b5437de2b67193894b7abc64c06dfad1277fd79f97f36cea27e9aca7f0cde16|
    2023-09-25 07:14:18|install|os-autoinst|4.6.1695365879.b5000e3-lp155.1641.1|x86_64||devel_openQA|67c699aa5ee1ad75be7204e92b4038539fe8ffe270bd45ac1494ccc985de4a29|
    2023-09-26 07:14:08|install|os-autoinst|4.6.1695644896.26abc02-lp155.1645.1|x86_64||devel_openQA|28cea07dc3266674dfc8ff6238a6ead912c1d48fa0710e51d7db3aa15c87b7cd|

where 4.6.1695365879.b5000e3 is the version relying on spew. That's the same time so the same update cycle, likely the same osd-deployment that pulls in both updates as both come from devel_openQA this is why the strong version requirements could still be fulfilled. What might have happened is that os-autoinst dynamically looked up the new code while the test was running while the perl-Mojolicious package in the updated form was not supplying that. I would say one more lesson regarding #135632 that next time again we should consider more what I proposed about not going forward with a change immediately but try backward-compatible changes at least to bridge the time where a new version of perl-Mojolicious needs to be deployed first before os-autoinst needs the new.

I will keep the ticket open for the time being to see if auto-review comes up with more occurences

Actions #4

Updated by tinita 7 months ago

/usr/share/openqa/lib/OpenQA/Parser/Result/Output.pm is provided by openQA-common, not os-autoinst.
The test was complaining at 2023-09-22T17:20:41.791523+02:00

worker30:/var/log # xzgrep Installing.*perl-Mojol zypper.log-20230923.xz
2023-09-22 15:28:44 <1> worker30(42168) [Progress++] progressdata.cc(report):75 {#22|Installing: perl-Mojolicious-9.340.0-lp155.2.1.noarch} START
2023-09-22 15:28:44 <1> worker30(42168) [Progress++] progressdata.cc(report):94 {#22|Installing: perl-Mojolicious-9.340.0-lp155.2.1.noarch} END
worker30:/var/log # xzgrep Installing.*openQA-common zypper.log-20230923.xz
2023-09-22 15:28:47 <1> worker30(42168) [Progress++] progressdata.cc(report):75 {#33|Installing: openQA-common-4.6.1695350713.4878536-lp155.6101.1.x86_64} START
2023-09-22 15:28:47 <1> worker30(42168) [Progress++] progressdata.cc(report):94 {#33|Installing: openQA-common-4.6.1695350713.4878536-lp155.6101.1.x86_64} END
Actions #5

Updated by tinita 7 months ago

okurz wrote in #note-1:

tinita wrote:

Suggestions

  • Look into zypper logs if a new openQA version was installed before Mojolicious was updated

I rather suspect the problem is that at that time the specific worker was not fully up-to-date.

That's what I was saying

Actions #6

Updated by tinita 7 months ago

So the assumption is in detail (to avoid confusions about timestamps):

  • Test started at 15:08 and loaded the old os-autoinst code and modules like Mojo::File (with version 9.33)
  • Packages were updated at 15:28
  • Test called parse_extra_log at 17:20 which does require OpenQA::Parser which loads the module at runtime if not loaded previously, so this gets the new openQA-common code which uses spew, but the old Mojo::File is already loaded.

okurz wrote in #note-3:

I would say one more lesson regarding #135632 that next time again we should consider more what I proposed about not going forward with a change immediately but try backward-compatible changes at least to bridge the time where a new version of perl-Mojolicious needs to be deployed first before os-autoinst needs the new.

I don't understand. I think we would all have preferred such a solution, but I can't remember a practicable suggestion. It's not like you had a concrete propsal and we said "No, we don't want that".

Other than that, if zypper updates are not atomic, there is no way to guarantee that an application will be able to run correctly. We might be able to write our code updates in such a way, but CPAN modules don't guarantee that. If CPAN module A requires CPAN module B in a specific version, then it does not have to be backwards compatible and provide code for the older version. (For how long should it do that anyway?)

Just like we stop and start our webui around an openQA update, we should stop and start workers around updates as well.
I know that's not nice, but there is no other way to guarantee a consistent state, because there can always be dynamically used modules somewhere.

Actions #7

Updated by tinita 7 months ago

In this case, temporarily ignoring warnings in our CI would have been the best solution IMHO.

So I would really like to make a PR to Test::Warnings with an env switch to ignore warnings.

Actions #8

Updated by okurz 7 months ago

  • Status changed from Feedback to New
  • Assignee changed from okurz to tinita

tinita wrote in #note-6:

I don't understand. I think we would all have preferred such a solution, but I can't remember a practicable suggestion. It's not like you had a concrete propsal and we said "No, we don't want that".

Sure. It's just that this shows that the alternative we took was also much effort, likely more than envisioned

Just like we stop and start our webui around an openQA update, we should stop and start workers around updates as well.
I know that's not nice, but there is no other way to guarantee a consistent state, because there can always be dynamically used modules somewhere.

Well, containers would help here :)

In this case, temporarily ignoring warnings in our CI would have been the best solution IMHO.

Agreed

So I would really like to make a PR to Test::Warnings with an env switch to ignore warnings.

Yes, sounds good. Please use this ticket here to organize that work

Actions #9

Updated by okurz 7 months ago

  • Subject changed from auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry to Handle Perl deprecation warning messages gracefully (was: auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry)
  • Category changed from Regressions/Crashes to Feature requests
Actions #10

Updated by okurz 7 months ago

  • Tags deleted (infra)
Actions #11

Updated by tinita 7 months ago

I created this feature request recently: https://github.com/karenetheridge/Test-Warnings/issues/12 Feature request: turn off the check for warnings via an environment variable
Not sure yet, if a PR implementing this would be accepted. I will create one though.

However, there would be a slightly more inconvenient way to do it without changing the module itself. We would have to put this into all our tests:

use Test::Warnings qw(:report_warnings allow_warnings); allow_warnings(1) if $ENV{ALLOW_WARNINGS};

edit: note however that the allow_warnings function is marked as experimental.

Actions #12

Updated by tinita 7 months ago

  • Status changed from New to In Progress

I created https://github.com/karenetheridge/Test-Warnings/pull/13 Add environment variable to make warnings non fatal

Actions #13

Updated by tinita 7 months ago

  • Status changed from In Progress to Feedback

https://github.com/karenetheridge/Test-Warnings/pull/13 was merged and released!

Now waiting for:
https://build.opensuse.org/request/show/1114774 Submit package devel:languages:perl:autoupdate / perl-Test-Warnings to package devel:languages:perl / perl-Test-Warnings

edit:
https://build.opensuse.org/request/show/1114809 Submit package devel:languages:perl / perl-Test-Warnings to package openSUSE:Factory / perl-Test-Warnings

Actions #14

Updated by tinita 7 months ago

https://build.opensuse.org/request/show/1114809 accepted.
I linked:

obs linkpac openSUSE:Factory perl-Test-Warnings devel:openQA:Leap:15.4
obs linkpac openSUSE:Factory perl-Test-Warnings devel:openQA:Leap:15.5

and added a comment to both packages stating why we linked and which version we need.

Now waiting until it appears in Tumbleweed, and then I can try it out in a PR.

Actions #15

Updated by tinita 7 months ago

  • Description updated (diff)
Actions #16

Updated by tinita 7 months ago

  • Description updated (diff)
Actions #17

Updated by okurz 7 months ago

tinita wrote in #note-14:

https://build.opensuse.org/request/show/1114809 accepted.
I linked:

obs linkpac openSUSE:Factory perl-Test-Warnings devel:openQA:Leap:15.4
obs linkpac openSUSE:Factory perl-Test-Warnings devel:openQA:Leap:15.5

for each package we link into devel:openQA:Leap: we should only see that as temporary measure until a maintenance update has included a new version. Can you please ensure there are according SRs/MRs?

Actions #18

Updated by livdywan 7 months ago

  • Subject changed from Handle Perl deprecation warning messages gracefully (was: auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry) to Handle Perl deprecation warning messages gracefully (was: auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry) size:M
  • Description updated (diff)
Actions #19

Updated by tinita 7 months ago

  • Status changed from Feedback to In Progress
Actions #20

Updated by tinita 7 months ago

okurz wrote in #note-17:

for each package we link into devel:openQA:Leap: we should only see that as temporary measure until a maintenance update has included a new version. Can you please ensure there are according SRs/MRs?

How do I do that?

Actions #21

Updated by tinita 7 months ago

  • Subject changed from Handle Perl deprecation warning messages gracefully (was: auto_review:"Test died: Can.t locate object method.*spew.*via package.*Mojo::File":retry) size:M to Handle Perl deprecation warning messages gracefully (Mojo::File::spurt is deprecated in favor of Mojo::File::spew) size:M
  • Description updated (diff)

I added the correct observation to the ticket description. This ticket is not about Can't locate object method "spew" but about the deprecation warning.

Actions #22

Updated by tinita 7 months ago

WIP https://github.com/os-autoinst/os-autoinst/pull/2375

Struggling with the new Github repository variables which are like secrets - not visible from PRs, which appears stupid to me. So we can't use them.

Now struggling with Test::Warnings 0.32 not yet available on os-autoinst_dev, so I will do the spec update for os-autoinst and openQA, as that has proven to be working already.

Actions #23

Updated by tinita 7 months ago

  • Description updated (diff)

https://github.com/os-autoinst/os-autoinst/pull/2379 spec: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS
https://github.com/os-autoinst/openQA/pull/5324 spec: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS

Actions #24

Updated by okurz 7 months ago

tinita wrote in #note-20:

okurz wrote in #note-17:

for each package we link into devel:openQA:Leap: we should only see that as temporary measure until a maintenance update has included a new version. Can you please ensure there are according SRs/MRs?

How do I do that?

Try

for i in 15.4 15.5 15.6; do osc sr -m "Update perl-Test-Warnings (boo#1215584)" openSUSE:Factory perl-Test-Warnings openSUSE:Leap:$i; done
Actions #25

Updated by tinita 7 months ago

https://github.com/os-autoinst/os-autoinst/pull/2375 ci: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS
https://github.com/os-autoinst/openQA/pull/5326 ci: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS

Actions #26

Updated by okurz 7 months ago

Regarding updating packages in Leap I suggest you follow https://en.opensuse.org/openSUSE:Maintenance_update_process#Check_if_a_Leap_package_is_inherited_from_SLE

This mentions osc sm PACKAGE. I called that on perl-Test-Warnings and found

SUSE:SLE-15:Update/perl-Test-Warnings
openSUSE:Backports:SLE-12/perl-Test-Warnings

according to the wiki

If there is a SUSE:SLE-15:Update entry (or 15-SP1 , 15-SP2 or 15-SP3), submit it there. It will be mirrored into the SUSE Internal Buildservice and processed there. (NOTE: If you are a SUSE employee, please directly submit in the IBS to the listed project, this avoids the mirroring step.)

so I suggest you try

osc mr openSUSE:Factory perl-Test-Warnings SUSE:SLE-15:Update

but plus additionally submit to IBS, so i.e.

isc mr factory_head_mirror_something perl-Test-Warnings SUSE:SLE-15:Update
Actions #27

Updated by tinita 7 months ago

okurz wrote in #note-26:

isc mr factory_head_mirror_something perl-Test-Warnings SUSE:SLE-15:Update

What does that factory_head_mirror_something mean?

Actions #28

Updated by tinita 7 months ago

I created a request in OBS: https://build.opensuse.org/request/show/1116704

But not sure what arguments are necessary to do it in IBS.

Actions #29

Updated by tinita 7 months ago

So I guessed and did this: ibs mr SUSE:Factory:Head perl-Test-Warnings SUSE:SLE-15:Update
--> https://build.suse.de/request/show/310059

Actions #30

Updated by tinita 7 months ago

  • Description updated (diff)
  • Due date changed from 2023-10-11 to 2023-10-20
  • Status changed from In Progress to Blocked
Actions #31

Updated by okurz 7 months ago

  • Due date changed from 2023-10-20 to 2023-12-15

This will for sure take much longer

Actions #32

Updated by tinita 6 months ago

  • Status changed from Blocked to Resolved
Actions #33

Updated by okurz 6 months ago

  • Status changed from Resolved to Feedback

Ok, that's nice. But then we should remove the package in devel:openQA as soon as the SLE maintenance update is effective, right? As stated in #137105-17

Actions #34

Updated by tinita 6 months ago

  • Related to action #150959: openQA fails to build on SLE/Leap 15.6 Backports due to test-unit-and-integration failures size:M added
Actions #35

Updated by osukup 6 months ago

still waiting on qa

Actions #36

Updated by osukup 6 months ago

QA approved :D

Actions #37

Updated by osukup 6 months ago

  • Description updated (diff)
Actions #38

Updated by osukup 6 months ago

I removed links from devel:openQA:Leap:15.x as now arent needed for successful build

Actions #39

Updated by tinita 5 months ago

  • Status changed from Feedback to Resolved
Actions

Also available in: Atom PDF