=head1 NAME Carton::Doc::Install - Install the dependencies =head1 SYNOPSIS carton install [--deployment] [--cached] [--path=PATH] [--without develop] =head1 DESCRIPTION Install the dependencies for your application. This command has two modes and the behavior is slightly different. =head2 DEVELOPMENT MODE =over 4 =item carton install If you run C without any arguments and if I exists, carton will scan dependencies from I and install the modules. =back If you run C for the first time (i.e. I does not exist), carton will fetch all the modules specified, resolve dependencies and install all required modules from CPAN. If I file does exist, carton will still try to install modules specified or updated in I, but uses I for the dependency resolution, and then cascades to CPAN. carton will analyze all the dependencies and their version information, and it is saved into I file. It is important to add I file into a version controlled repository and commit the changes as you update your dependencies. =head2 DEPLOYMENT MODE If you specify the C<--deployment> command line option or the I exists, carton will only use the dependencies specified in the I instead of resolving dependencies. =head1 OPTIONS =over 4 =item --deployment Force the deployment mode. See L above. =item --cached Locate distribution tarballs in C rather than fetching them from CPAN mirrors. This requires you to run C prior to the deployment and commit or sync the content of C directory to the other host you run C on. =item --cpanfile Specify the alternate path for cpanfile. By default, C will look for the file C in the current directory, then upwards till the root directory, in case the command runs from a sub directory. Carton assumes the directory where your cpanfile (or altenate path) exists as a project root directory, and will look for the snapshot file as well as install directory (C) and C relative to it. =item --path Specify the path to install modules to. Defaults to I in the directory relative to where C is. B: this option, as of version 1.0, is not preserved across multiple runs of C or other commands such as C or C. You can choose to set the path in C environment variable to persist it across commands. =item --without By default, C will install all the phases for dependencies, including C. You can specify phases or features to exclude, in the comma separated list. carton install --deployment --without develop B: C<--without> for the initial installation (without cpanfile.snapshot) is not supported at this moment. =back