Functest: Add support extra_software for Suite level#1039
Conversation
Signed-off-by: Kostiantyn Kostiuk <kkostiuk@redhat.com>
There was a problem hiding this comment.
Code Review
This pull request updates the functest engine to support loading extra software packages defined in test suite requirements. It refactors test loading into an initialization step and introduces an extra_software field to SuiteRequirements. Feedback suggests explicitly initializing @suite to nil in the constructor to prevent uninitialized instance variable warnings. Additionally, it is recommended to keep requirements nilable (T.nilable(SuiteRequirements)) for backward compatibility with existing JSON definitions, and to use safe navigation when accessing it.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
There was a problem hiding this comment.
Pull request overview
Adds suite-level extra_software support to the Functest engine so suites can declare additional software packages that should be prepared before executing tests.
Changes:
- Extend functest suite schema to allow
requirements.extra_software. - Make suite
requirementsalways present (defaults to an empty requirements struct) to simplify consumers. - Load tests (and suite metadata when using
--category) during engine initialization so suite extra software can be prepared up front.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
lib/engines/functest/suite.rb |
Adds extra_software to suite requirements and makes requirements non-nil by default. |
lib/engines/functest/functest.rb |
Initializes tests earlier and includes suite-level extra_software in extra software preparation. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
No description provided.