Project

General

Profile

Actions

action #135632

closed

"Mojo::File::spurt is deprecated in favor of Mojo::File::spew" breaking os-autoinst OBS build and osd-deployment size:M

Added by livdywan over 1 year ago. Updated 10 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
-
Start date:
2023-05-08
Due date:
% Done:

0%

Estimated time:

Description

Observation

See https://gitlab.suse.de/openqa/osd-deployment/-/jobs/1825493:

++ echo 'Build status for https://build.opensuse.org/project/show/devel:openQA (openSUSE_Leap_15.4) arch x86_64) is not successful'
++ echo '<resultlist state="9c65a2d1b41fa9bf4c35ffd463cddc69">
  <result project="devel:openQA" repository="openSUSE_Leap_15.4" arch="x86_64" code="published" state="published">
[...]
    <status package="os-autoinst" code="failed"/>

And accordingly https://build.opensuse.org/package/live_build_log/devel:openQA/os-autoinst/openSUSE_Leap_15.4/x86_64 - note that there's no persistent logs so I attached the log of the failure:

[19:51:05] ./xt/01-style.t ......................................... fatal: not a git repository (or any of the parent directories): .git
[...]
#   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.

Acceptance criteria

  • AC1: os-autoinst builds fine in CI
  • AC2: No "fatal" but ignored warning in the output

Added by okurz after estimation

Suggestions

  • Note that this is not specific to OBS/Leap15.4
  • Confirm the source of the fatal: not a git repository (or any of the parent directories): .git errors
    • This is probably not failing anything and not new
  • Address or switch off the Mojo::File::spurt is deprecated in favor of Mojo::File::spew errors which seem to upset our checks for no warnings, e.g. just replace all uses of spurt with spew because that's how rolling distributions work. As fallback try to use a dynamic lookup of the method presence and use it if available, fallback to "spurt" otherwise
  • Also see https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/17748 and https://github.com/os-autoinst/os-autoinst-distri-opensuse/pull/17746

Rollback actions

  • Remove perl-Mojo-IOLoop-ReadWriteProcess and perl-Mojolicious-Plugin-AssetPack from devel:openQA as soon as we have the new version in Tumbleweed and current Leap
  • Same but in devel:openQA:Leap:15.5

Files


Related issues 3 (0 open3 closed)

Related to openQA Project (public) - action #129619: high response times on osd - simple limit of jobs running concurrently in openQA size:MResolvedtinita2023-05-20

Actions
Related to openQA Infrastructure (public) - action #135380: A significant number of scheduled jobs with one or two running triggers an alertResolvedokurz2023-09-07

Actions
Related to openQA Project (public) - action #137105: Handle Perl deprecation warning messages gracefully (Mojo::File::spurt is deprecated in favor of Mojo::File::spew) size:MResolvedtinita2023-09-272023-12-15

Actions
Actions

Also available in: Atom PDF