kyua: Add "debug -x|--execute cmd" optionWith execenv=jail specified, the "cmd" runs inside the test's jail.Reviewed by: ngie, markjDifferential Revision: https://reviews.freebsd.org/D52642
kyua: Stop using readdir_r()It cannot be used safely, and Kyua doesn't even pretend to try.MFC after: 1 weekSponsored by: Klara, Inc.Reviewed by: igoroDifferential Revision: https://reviews.fr
kyua: Stop using readdir_r()It cannot be used safely, and Kyua doesn't even pretend to try.MFC after: 1 weekSponsored by: Klara, Inc.Reviewed by: igoroDifferential Revision: https://reviews.freebsd.org/D51680
show more ...
kyua: Try harder to delete directories.When recursing into a directory to delete it, start by chmod'ing it to0700. This fixes an issue where kyua is able to run, but not debug, atest case that c
kyua: Try harder to delete directories.When recursing into a directory to delete it, start by chmod'ing it to0700. This fixes an issue where kyua is able to run, but not debug, atest case that creates unwriteable directories, because when debuggingit tries (and fails) to delete the directory after the test completes.MFC after: 1 weekSponsored by: Klara, Inc.Reviewed by: igoroDifferential Revision: https://reviews.freebsd.org/D51229
kyua: Don't pass NULL to std::unique_ptr<>::reset()No functional change, this is simply more idiomatic.Reviewed by: olce, emasteDifferential Revision: https://reviews.freebsd.org/D50091
kyua: Don't pass NULL to unique_ptr constructorsThis is ambiguous when NULL is defined to an integral constant.Instead, use the more iodiomatic pattern of {} to construct a defaultpointer.Revie
kyua: Don't pass NULL to unique_ptr constructorsThis is ambiguous when NULL is defined to an integral constant.Instead, use the more iodiomatic pattern of {} to construct a defaultpointer.Reviewed by: olceDifferential Revision: https://reviews.freebsd.org/D50090
kyua: Switch from std::auto_ptr<> to std::unique_ptr<>A few places were assigning auto_ptr<>s depending on the ownershiphandoff. These now use an explicit std::move() as required byunique_ptr<>.
kyua: Switch from std::auto_ptr<> to std::unique_ptr<>A few places were assigning auto_ptr<>s depending on the ownershiphandoff. These now use an explicit std::move() as required byunique_ptr<>.Reviewed by: ngie, emasteDifferential Revision: https://reviews.freebsd.org/D49790
kyua: Add FreeBSD Jail execution environment supportA new Kyua concept is added -- "execution environment". A test can beconfigured to be run within a specific environment. The test caselifecycle
kyua: Add FreeBSD Jail execution environment supportA new Kyua concept is added -- "execution environment". A test can beconfigured to be run within a specific environment. The test caselifecycle is extended respectively:- execenv init (creates a jail or does nothing for default execenv="host")- test exec- cleanup exec (optional)- execenv cleanup (removes a jail or does nothing for default execenv="host")The following new functionality is provided, from bottom to top:1 ATF based tests- The new "execenv" metadata property can be set to explicitly ask for an execution environment: "host" or "jail". If it's not defined, as all existing tests do, then it implicitly means "host".- The new "execenv.jail.params" metadata property can be optionally defined to ask Kyua to use specific jail(8) parameters during creation of a temporary jail. An example is "vnet allow.raw_sockets". Kyua implicitly adds "children.max" to "execenv_jail_params" parameters with the maximum possible value. A test case can override it.2 Kyuafile- The same new metadata properties can be defined on Kyuafile level: "execenv" and "execenv_jail_params".- Note that historically ATF uses dotted style of metadata naming, while Kyua uses underscore style. Hence "execenv.jail.params" vs. "execenv_jail_params".3 kyua.conf, kyua CLI- The new "execenvs" engine configuration variable can be set to a list of execution environments to run only tests designed for. Tests of not listed environments are skipped.- By default, this variable lists all execution environments supported by a Kyua binary, e.g. execenvs="host jail".- This variable can be changed via "kyua.conf" or via kyua CLI's "-v" parameter. For example, "kyua -v execenvs=host test" will run only host-based tests and skip jail-based ones.- Current value of this variable can be examined with "kyua config".[markj] This feature has not landed upstream yet.See the discussion in https://github.com/freebsd/kyua/pull/224 .Having the ability to automatically jail tests allows many network teststo run in parallel, giving a drastic speedup. So, let's import thefeature and start using it in main.Signed-off-by: Igor Ostapenko <pm@igoro.pro>Reviewed by: markj, kpTested by: markj, kpMFC after: 3 monthsDifferential Revision: https://reviews.freebsd.org/D45865
contrib/kyua: Merge vendor import* commit '5f174897f67783925f4ec69122673f9bad6ee6fe': vendor/kyua: Update to snapshot 84c8ec8 Vendor import of freebsd/kyua@a0d44bb356e0c816Approved by: mark
contrib/kyua: Merge vendor import* commit '5f174897f67783925f4ec69122673f9bad6ee6fe': vendor/kyua: Update to snapshot 84c8ec8 Vendor import of freebsd/kyua@a0d44bb356e0c816Approved by: markjDifferential Revision: https://reviews.freebsd.org/D43475
Import the kyua test framework.Having kyua in the base system will simplify automated testing in CI andeliminates bootstrapping issues on new platforms.The build of kyua is controlled by WITH(OU
Import the kyua test framework.Having kyua in the base system will simplify automated testing in CI andeliminates bootstrapping issues on new platforms.The build of kyua is controlled by WITH(OUT)_TESTS_SUPPORT.Reviewed by: emasteObtained from: CheriBSDSponsored by: DARPADifferential Revision: https://reviews.freebsd.org/D24103