NAME

App::Yath::Plugin::Utilization - System-utilization gating for yath test runs.

SYNOPSIS

# Enable the plugin (either via .yath.rc, or -pUtilization on the command line):
$ yath test -pUtilization -Z=85

# Or set it in .yath.rc:
[test]
-pUtilization

$ yath test -Z=85
$ yath test --utilization-utilize 80 -R +Test2::Harness::Resource::Utilization::CPU

DESCRIPTION

Adds resource modules that gate when new test launches are allowed, based on CPU usage, free memory, free disk, per-user pipe budget, process ulimits, and a spawn-rate window. All opt-in; combine freely.

The plugin registers the utilization option group with these flags:

Resources live under Test2::Harness::Resource::Utilization::*. Use the fully qualified form with -R:

-R +Test2::Harness::Resource::Utilization::CPU
-R +Test2::Harness::Resource::Utilization::Memory

-Z is the convenience shortcut that activates the full stack without needing to type each one.

LIMITATIONS

CPU/Memory/UnixLimits/PipeLimits are Linux-only (they read /proc). Disk works anywhere Filesys::Df installs. Throttle has portable fallbacks for core count via System::Info.

SOURCE

https://github.com/Test-More/App-Yath-Plugin-Utilization

MAINTAINERS

AUTHORS

COPYRIGHT

Copyright Chad Granum exodist7@gmail.com.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://dev.perl.org/licenses/