NAME
Env::Assert - Ensure that the environment variables match what you need, or abort.
VERSION
version 0.004
STATUS
Package Env::Assert is currently being developed so changes in the API are possible, though not likely.
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'} );
}
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.