Name

Module::Provision::Config - Attributes set from the config file

Synopsis

use Moo;

extends 'Class::Usul::Programs';

has '+config_class' => default => sub { 'Module::Provision::Config' };

Description

Defines attributes which can be set from the config file

Configuration and Environment

Defines the following attributes;

author

A non empty simple string which defaults to the value of the environment variable AUTHOR. If the environment variable is unset defaults to fullname and then logname

author_email

A non empty simple string which defaults to the value of the environment variable EMAIL. If the environment variable is unset defaults to dave@example.com

author_id

A non empty simple string which defaults to the author's login identity

base

A path object which defaults to the authors home directory. The default directory in which to create new distributions

builder

A non empty simple string default to MB. Selects the build system to use when creating new distributions

coverage_server

The HTTP address of the coverage server. Used by the badge markup feature

default_branches

A hash reference. The default branch names for the git and svn VCSs which are master and trunk respectively

delete_files_uri

A non empty simple string which defaults to the value of the environment variable CPAN_DELETE_FILES_URI. If the environment variable is unset defaults to https://pause.perl.org/pause/authenquery. The URI of the PAUSE service

editor

A non empty simple string which defaults to the value of the environment variable EDITOR. If the environment variable is unset defaults to emacs. Which editor to invoke which edit_project is called

home_page

A non empty simple string which default to http://example.com. Override this in the configuration file to set the meta data used when creating a distribution

hooks

An array reference of non empty simple strings which defaults to commit-msg and pre-commit. This list of Git hooks is operated on by the add_hooks method

license

A non empty simple string which defaults to perl. The default license for new distributions

localdir

A non empty simple string which defaults to local. The directory into which local::lib should be installed

min_perl_ver

Non empty simple string that is used as the default in the meta data of a newly minted distribution

module_abstract

A non empty simple string which is used as the default abstract for newly minted modules

pub_repo_prefix

A simple string which default to p5-. Prepended to the lower cased distribution name it forms the name of the public repository

remote_test_id

A non empty simple string that defaults to test@testhost. The identity and host used to perform test installations

remote_script

A non empty simple string that defaults to install_perl_module. The command to execute on the test installation server

repository

A non empty simple string which defaults to repository. Name of the "appbase" subdirectory expected to contain a Git repository

seed_file

File object reference or undefined. This optionally points to the file containing the key to decrypt the author's PAUSE account password which is stored in the ~/.pause file

signing_key

Simple string that defaults to NUL. If non null then this string is used as a fingerprint to find the author distribution signing key

tag_message

Non empty simple string defaults to Releasing. This is the default message to apply to the commit which creates a tagged release

template_index

Name of the file containing the index of templates. Defaults to index.json

test_env_vars

Array reference. Set these environment vars to true when testing. Defaults to; AUTHOR_TESTING TEST_MEMORY, and TEST_SPELLING

vcs

A non empty simple string that defaults to git. The default version control system

Subroutines/Methods

None

Diagnostics

None

Dependencies

Class::Usul
File::DataClass
User::pwent

Incompatibilities

There are no known incompatibilities in this module

Bugs and Limitations

There are no known bugs in this module. Please report problems to the address below. Patches are welcome

Acknowledgements

Larry Wall - For the Perl programming language

Author

Peter Flanigan, <pjfl@cpan.org>

License and Copyright

Copyright (c) 2017 Peter Flanigan. All rights reserved

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

This program is distributed in the hope that it will be useful, but WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE