Dist::Zilla::Plugin::GenerateFile::FromShareDir(3pm)

NAME
Dist::Zilla::Plugin::GenerateFile::FromShareDir - Create files in the repository or build, using a sharedir template

VERSION
version 0.015

SYNOPSIS
In your dist.ini:

    [GenerateFile::FromShareDir]
    -dist = Dist::Zilla::PluginBundle::Author::ME
    -source_filename = my_data_template.txt
    -destination_filename = examples/my_data.txt
    key1 = value to pass to template
    key2 = another value to pass to template

DESCRIPTION
Generates a file in your distribution, indicated by "-destination_file", based on the Text::Template located in the "-source_file" of "-dist"'s distribution sharedir. Any extra config values are passed along to the template, in addition to $zilla and $plugin objects.

I expect that usually the "-dist" that contains the template will be either a plugin bundle, so you can generate a custom-tailored file in your distribution, or a plugin that subclasses this one. (Otherwise, you can just as easily use [GatherDir::Template] or [GenerateFile] to generate the file directly, without needing a sharedir.)

OPTIONS
All unrecognized keys/values will be passed to the template as is. Recognized options are:

  "-dist"
The distribution name to use when finding the sharedir (see File::ShareDir and Dist::Zilla::Plugin::ShareDir). Defaults to the distribution corresponding to the running plugin.

  "-destination_filename" or "-filename"
The filename to generate in the distribution being built. Required.

  "-source_filename"
The filename in the sharedir to use to generate the new file. Defaults to the same filename and path as "-destination_file".

  "-encoding"
The encoding of the source file; will also be used for the encoding of the destination file. Defaults to UTF-8.

  "-location"
default: "build"

The target location of the generated file. When "build", the file is added to the distribution in the normal file gathering phase. When "root", the file is instead written to the source repository.

  "-phase"
Only relevant when "-location = root". When "build" (the default), the file is written on every build operation. When "release", it is only written after the distribution is released.

SEE ALSO

•   File::ShareDir

•   Dist::Zilla::Plugin::ShareDir

•   Text::Template

•   [GatherDir::Template] - gather a file from the dist, and then pass it through a template

•   [GenerateFile] - generate a (possibly-templated) file purely based on data in dist.ini

SUPPORT
Bugs may be submitted through the RT bug tracker <https://rt.cpan.org/Public/Dist/Display.html?Name=Dist-Zilla-Plugin-GenerateFile-FromShareDir> (or bug-Dist-Zilla-Plugin-GenerateFile-FromShareDir@rt.cpan.org <mailto:bug-Dist-Zilla-Plugin-GenerateFile-FromShareDir@rt.cpan.org>).

There is also a mailing list available for users of this distribution, at <http://dzil.org/#mailing-list>.

There is also an irc channel available for users of this distribution, at "#distzilla" on "irc.perl.org" <irc://irc.perl.org/#distzilla>.

I am also usually active on irc, as 'ether' at "irc.perl.org" and "irc.freenode.org".

AUTHOR
Karen Etheridge <ether@cpan.org>

CONTRIBUTORS

•   Dave Rolsky <autarch@urth.org>

•   Kent Fredric <kentfredric@gmail.com>

COPYRIGHT AND LICENCE
This software is copyright (c) 2013 by Karen Etheridge.

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