diff options
author | Tatsuhiko Miyagawa <miyagawa@bulknews.net> | 2013-08-05 10:05:57 -0700 |
---|---|---|
committer | Tatsuhiko Miyagawa <miyagawa@bulknews.net> | 2013-08-05 10:05:57 -0700 |
commit | 1030fcd8c583154652db2ad4723b59f9ed42faad (patch) | |
tree | 7f1989eb93bf9da42b9344cebec48925387fe304 | |
parent | d1c839c298189bfeee3217df94e5051e05273f5c (diff) | |
download | carton-1030fcd8c583154652db2ad4723b59f9ed42faad.tar.gz |
Fix outdated documentation
-rw-r--r-- | lib/Carton.pm | 31 |
1 files changed, 18 insertions, 13 deletions
diff --git a/lib/Carton.pm b/lib/Carton.pm index cd2535a..5f7cd24 100644 --- a/lib/Carton.pm +++ b/lib/Carton.pm @@ -38,27 +38,27 @@ run in an embedded perl use case such as mod_perl. =head1 DESCRIPTION carton is a command line tool to track the Perl module dependencies -for your Perl application. The managed dependencies are tracked in a -I<cpanfile.snapshot> file, which is meant to be version controlled, and the -snapshot file allows other developers of your application will have the -exact same versions of the modules. +for your Perl application. Dependencies are declared using L<cpanfile> +format, and the managed dependencies are tracked in a +I<cpanfile.snapshot> file, which is meant to be version controlled, +and the snapshot file allows other developers of your application will +have the exact same versions of the modules. =head1 TUTORIAL =head2 Initializing the environment -carton will use the I<.carton> directory for local configuration and -the I<local> directory to install modules into. You're recommended to -exclude these directories from the version control system. +carton will use the I<local> directory to install modules into. You're +recommended to exclude these directories from the version control +system. - > echo .carton/ >> .gitignore > echo local/ >> .gitignore > git add cpanfile.snapshot > git commit -m "Start using carton" =head2 Tracking the dependencies -You can manage the dependencies of your application via I<cpanfile>. +You can manage the dependencies of your application via C<cpanfile>. # cpanfile requires 'Plack', 0.9980; @@ -86,12 +86,16 @@ Once you've done installing all the dependencies, you can push your application directory to a remote machine (excluding I<local> and I<.carton>) and run the following command: - > carton install + > carton install --deployment This will look at the I<cpanfile.snapshot> and install the exact same versions of the dependencies into I<local>, and now your application is ready to run. +The C<--deployment> flag makes sure that carton will only install +modules and versions available in your snapshot, and won't fallback to +query for CPAN Meta DB for missing modules. + =head2 Bundling modules carton can bundle all the tarballs for your dependencies into a @@ -104,9 +108,10 @@ will bundle these tarballs into I<vendor/cache> directory, and > carton install --cached -will install modules using this local cache. This way you can avoid -querying for a database like CPAN Meta DB or CPAN mirrors upon -deployment time. +will install modules using this local cache. Combined with +C<--deployment> option, you can avoid querying for a database like +CPAN Meta DB or downloading files from CPAN mirrors upon deployment +time. =head1 COMMUNITY |