Dist-Zilla-Plugin-ShareDir-Tarball
view release on metacpan or search on metacpan
README.mkdn view on Meta::CPAN
# NAME
Dist::Zilla::Plugin::ShareDir::Tarball - Bundle your shared dir into a tarball
# VERSION
version 0.6.0
# SYNOPSIS
# in dist.ini
[ShareDir::Tarball]
# DESCRIPTION
Using [File::ShareDir](https://metacpan.org/pod/File::ShareDir) to deploy non-Perl files alongside a distribution is
great, but it has a problem. Just like for modules, upon installation CPAN clients
don't remove any of the files that were already present in the _/lib_
directories beforehand. So if version 1.0 of the distribution was sharing
share/foo
share/bar
and version 1.1 changed that to
share/foo
share/baz
then a user installing first version 1.0 then 1.1 will end up with
share/foo
share/bar
share/baz
which might be a problem (or not).
Fortunately, there is a sneaky
workaround in the case where you don't want the files of past distributions to
linger around. The trick is simple: bundle all the files to be shared into
a tarball called _shared-files.tar.gz_. As there is only that one file, any
new install is conveniently clobbering the old version.
But archiving the content of the _share_ directory is no fun. Hence
[Dist::Zilla::Plugin::ShareDir::Tarball](https://metacpan.org/pod/Dist::Zilla::Plugin::ShareDir::Tarball) which, upon the file munging stage, gathers all
files in the _share_ directory and build the _shared-files.tar.gz_ archive
with them. If there is no such files, the process is simply skipped.
# OPTIONS
## dir
The source directory to be bundled into the shared tarball. Defaults to
`share`.
# SEE ALSO
[Dist::Zilla::Plugin::ShareDir](https://metacpan.org/pod/Dist::Zilla::Plugin::ShareDir), which is similar to this module, but without
the conversion of the shared directory into a tarball.
[File::ShareDir::Tarball](https://metacpan.org/pod/File::ShareDir::Tarball) - transparently extract the tarball behind the
scene so that the shared directory can be accessed just like it is in
[File::ShareDir](https://metacpan.org/pod/File::ShareDir).
[Module::Build::CleanInstall](https://metacpan.org/pod/Module::Build::CleanInstall) - A subclass of [Module::Build](https://metacpan.org/pod/Module::Build) which
deinstall the files from previous installations via their _packlist_.
# AUTHOR
Yanick Champoux <yanick@cpan.org> [](http://coderwall.com/yanick)
# COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Yanick Champoux.
This is free software; you can redistribute it and/or modify it under
the same terms as the Perl 5 programming language system itself.
( run in 0.716 second using v1.01-cache-2.11-cpan-5a3173703d6 )