NAME
Env::Assert - Ensure that the environment variables match what you need, or abort.
VERSION
version 0.007
SYNOPSIS
use Env::Assert qw( assert );
my %want = (
options => {
exact => 1,
},
variables => {
USER => { regexp => '^[[:word:]]{1}$', required => 1 },
},
);
my %parameters;
$parameters{'break_at_first_error'} = 1;
my $r = assert( \%ENV, $desc, \%parameters );
if( ! $r->{'success'} ) {
say report_errors( $r->{'errors'} );
}
STATUS
Package Env::Assert is currently being developed so changes in the API are possible, though not likely.
NOTES
DEPENDENCIES
No external dependencies outside Perl's standard distribution.
FUNCTIONS
No functions are automatically exported to the calling namespace.
assert( \%env, \%want, \%params )
Ensure your environment, parameter env (hashref), matches with the environment description, parameter want (hashref). Use parameter params (hashref) to specify processing options.
Supported params:
- break_at_first_error
-
Verify environment only up until the first error. Then break and return with only that error.
Return: hashref: { success => 1/0, errors => hashref, };
report_errors( \%errors )
Report errors in a nicely formatted way.
file_to_desc( @rows )
Extract an environment description from a .envdesc file.
AUTHOR
Mikko Koivunalho <mikkoi@cpan.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2023 by Mikko Koivunalho.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.