Project

General

Profile

Actions

action #157774

closed

coordination #58184: [saga][epic][use case] full version control awareness within openQA

coordination #154780: [epic] openQA scenario definitions fully in git

Empty scenario definitions causing Use of uninitialized value $testsuite_name in hash element in lib/OpenQA/Schema/Result/JobGroups.pm size:S

Added by livdywan 8 months ago. Updated 7 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Regressions/Crashes
Target version:
Start date:
2024-03-22
Due date:
% Done:

0%

Estimated time:

Description

Observation

This has not been flagged by any alerts as far as I am aware. It is visible in logs, though:

journal:

Mar 21 14:49:58 openqa openqa[29349]: Use of uninitialized value $testsuite_name in hash element at /usr/share/openqa/script/../lib/OpenQA/Schema/Result/JobGroups.pm line 413.

accesslog:

[21/Mar/2024:14:49:58 +0100] "POST /api/v1/job_templates_scheduling/510
[21/Mar/2024:14:49:58 +0100] "POST /api/v1/job_templates_scheduling/319
[21/Mar/2024:14:49:58 +0100] "POST /api/v1/job_templates_scheduling/456

This seems to be caused by this type of scenario:

scenarios:
# ...
  s390x:
    sle-15-SP6-Migration-from-SLE15-SPx-s390x:
      - {}

See https://openqa.suse.de/admin/job_templates/319 at the time of this writing. Despite the errors/warnings this is valid with the current schema.

Suggestions

  • Consider the proposed trivial fix but also notably the conversation in https://github.com/os-autoinst/openQA/pull/5540#discussion_r1534128393
    • The proposed fix may not work as-is, but is good for discussion
  • Verify the current behavior
  • Confirm what the expectation of these uses is, and how else it could be achieved if it is considered wrong, e.g. ask in testing/ check who uses this syntax currently
    • Consider changing or extending the YAML schema accordingly

Related issues 1 (1 open0 closed)

Copied to openQA Project - action #158859: SyntaxError: Unexpected token '<', " when searching for "- {}" in the web UINew

Actions
Actions #1

Updated by okurz 8 months ago

  • Parent task set to #154780
Actions #2

Updated by okurz 8 months ago

  • Category set to Regressions/Crashes
  • Target version set to Tools - Next
Actions #3

Updated by okurz 8 months ago

  • Target version changed from Tools - Next to Ready
Actions #4

Updated by okurz 8 months ago

  • Subject changed from Empty scenario definitions causing Use of uninitialized value $testsuite_name in hash element in lib/OpenQA/Schema/Result/JobGroups.pm to Empty scenario definitions causing Use of uninitialized value $testsuite_name in hash element in lib/OpenQA/Schema/Result/JobGroups.pm size:S
  • Description updated (diff)
  • Status changed from New to Workable
Actions #5

Updated by livdywan 8 months ago

  • Status changed from Workable to In Progress
  • Assignee set to livdywan

I'm taking a look. Specifically by checking where the problematic syntax is used, and who uses it, and find out what our users are expecting.

Actions #6

Updated by livdywan 8 months ago

  • Copied to action #158859: SyntaxError: Unexpected token '<', " when searching for "- {}" in the web UI added
Actions #7

Updated by livdywan 8 months ago

It seems like the case in Migration - Development comes from https://gitlab.suse.de/qe-yam/openqa-job-groups/-/blob/master/JobGroups/migration_dev/s390x.yaml and it might be isolated. For now I'm going to ask what the idea behind it is, and maybe check again if it's used anywhere else depending on that

Actions #8

Updated by livdywan 8 months ago

  • Status changed from In Progress to Feedback
Actions #9

Updated by livdywan 7 months ago

livdywan wrote in #note-8:

https://suse.slack.com/archives/C02CANHLANP/p1712835853668539

https://gitlab.suse.de/qe-yam/openqa-job-groups/-/merge_requests/153

As discussed with @lmanfredi the s390x case can be removed here, and it's likely a left-over from how files used to be generated by generate_yaml.py. So there is no use case for this syntax here.

Actions #11

Updated by livdywan 7 months ago

  • Status changed from Feedback to Resolved

livdywan wrote in #note-10:

https://github.com/os-autoinst/openQA/pull/5583

As pointed out by @mkittler this is technically breaking incompatibility. Although I don't think that this was "working" before since the implementation never handled this case. I sent a message in Slack for clarity.

Actions

Also available in: Atom PDF