kyua: Fixes after vendor merge

Reviewed by:	ngie
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D60446
This commit is contained in:
Igor Ostapenko committed 2026-10-18 17:22:55 +00:00
1 parent 23b3267287
commit af238d55d3
6 files changed
+47 -26

No files matched your search

+2 -2
View File
@@ -155,14 +155,14 @@ public:
_ui->out("The test failed and paused right before its cleanup "
"routine.");
_ui->out(F("Test work dir: %s") % eh.work_directory().str());
_ui->out("Press any key to continue...");
_ui->out("Press <Enter> to continue...");
(void) std::cin.get();
}
} else if (_cmdline.has_option(pause_before_cleanup_option
.long_name())) {
_ui->out("The test paused right before its cleanup routine.");
_ui->out(F("Test work dir: %s") % eh.work_directory().str());
_ui->out("Press any key to continue...");
_ui->out("Press <Enter> to continue...");
(void) std::cin.get();
}
};
+1
View File
@@ -311,6 +311,7 @@ Supported platforms:
.Pp
ATF:
.Va require.kmods
(appends to the list declared at the Kyuafile level instead of overwriting it)
.It Va required_memory
Amount of physical memory that the test needs to run successfully.
.Pp
+1
View File
@@ -311,6 +311,7 @@ Supported platforms:
.Pp
ATF:
.Va require.kmods
(appends to the list declared at the Kyuafile level instead of overwriting it)
.It Va required_memory
Amount of physical memory that the test needs to run successfully.
.Pp
+2 -2
View File
@@ -1653,8 +1653,8 @@ scheduler::generate_config(const config::tree& user_config,
if (user_config.is_set("unprivileged_user")) {
const passwd::user& user =
user_config.lookup< engine::user_node >("unprivileged_user");
// The property is duplicated using both ATF and Kyua naming styles
// for better UX.
// The property is duplicated using both ATF and Kyua naming styles
// for better UX.
props["unprivileged-user"] = user.name;
props["unprivileged_user"] = user.name;
}
+31 -16
View File
@@ -255,8 +255,8 @@ init_tree(config::tree& tree)
tree.define< config::strings_set_node >("required_configs");
tree.define< bytes_node >("required_disk_space");
tree.define< paths_set_node >("required_files");
tree.define< bytes_node >("required_memory");
tree.define< config::strings_set_node >("required_kmods");
tree.define< bytes_node >("required_memory");
tree.define< paths_set_node >("required_programs");
tree.define< user_node >("required_user");
tree.define< delta_node >("timeout");
@@ -282,8 +282,8 @@ set_defaults(config::tree& tree)
model::strings_set());
tree.set< bytes_node >("required_disk_space", units::bytes(0));
tree.set< paths_set_node >("required_files", model::paths_set());
tree.set< bytes_node >("required_memory", units::bytes(0));
tree.set< config::strings_set_node >("required_kmods", model::strings_set());
tree.set< bytes_node >("required_memory", units::bytes(0));
tree.set< paths_set_node >("required_programs", model::paths_set());
tree.set< user_node >("required_user", "");
// TODO(jmmv): We shouldn't be setting a default timeout like this. See
@@ -585,20 +585,6 @@ model::metadata::required_files(void) const
}
/// Returns the amount of memory required by the test.
///
/// \return Number of bytes, or 0 if this does not apply.
const units::bytes&
model::metadata::required_memory(void) const
{
if (_pimpl->props.is_set("required_memory")) {
return _pimpl->props.lookup< bytes_node >("required_memory");
} else {
return get_defaults().lookup< bytes_node >("required_memory");
}
}
/// Returns the list of kernel modules needed by the test.
///
/// \return Set of kernel module names.
@@ -615,6 +601,20 @@ model::metadata::required_kmods(void) const
}
/// Returns the amount of memory required by the test.
///
/// \return Number of bytes, or 0 if this does not apply.
const units::bytes&
model::metadata::required_memory(void) const
{
if (_pimpl->props.is_set("required_memory")) {
return _pimpl->props.lookup< bytes_node >("required_memory");
} else {
return get_defaults().lookup< bytes_node >("required_memory");
}
}
/// Returns the list of programs needed by the test.
///
/// \return Set of paths.
@@ -1059,6 +1059,21 @@ model::metadata_builder::set_required_files(const model::paths_set& files)
}
/// Sets the list of required kernel modules.
///
/// \param vars Set of kernel module names.
///
/// \return A reference to this builder.
///
/// \throw model::error If the value is invalid.
model::metadata_builder&
model::metadata_builder::set_required_kmods(const model::strings_set& kmods)
{
set< config::strings_set_node >(_pimpl->props, "required_kmods", kmods);
return *this;
}
/// Sets the amount of memory required by the test.
///
/// \param bytes Number of bytes.
+10 -6
View File
@@ -34,7 +34,12 @@
#include "engine/requirements.hpp"
#include "os/freebsd/reqs_checker_kmods.hpp"
#include "engine/prepare/prepare.hpp"
#include "os/freebsd/prepare_kmods.hpp"
namespace execenv = engine::execenv;
namespace prepare = engine::prepare;
/// FreeBSD related features initialization.
///
@@ -50,15 +55,14 @@ int
freebsd::main(const int, const char* const* const)
{
execenv::register_execenv(
std::shared_ptr< execenv::manager >(new freebsd::execenv_jail_manager())
);
std::make_shared<freebsd::execenv_jail_manager>());
#ifdef __FreeBSD__
engine::register_reqs_checker(
std::shared_ptr< engine::reqs_checker >(
new freebsd::reqs_checker_kmods()
)
);
std::make_shared<freebsd::reqs_checker_kmods>());
prepare::register_handler(
std::make_shared<freebsd::prepare_kmods>());
#endif
return 0;