NAME
Carton::Doc::Install - Install the dependencies
SYNOPSIS
carton install [--deployment] [--cached] [--path=PATH] [--without develop]
DESCRIPTION
Install the dependencies for your application. This command has two modes and the behavior is slightly different.
DEVELOPMENT MODE
- carton install
-
If you run
carton install
without any arguments and if cpanfile exists, carton will scan dependencies from cpanfile and install the modules.
If you run carton install
for the first time (i.e. cpanfile.snapshot does not exist), carton will fetch all the modules specified, resolve dependencies and install all required modules from CPAN.
If cpanfile.snapshot file does exist, carton will still try to install modules specified or updated in cpanfile, but uses cpanfile.snapshot for the dependency resolution, and then cascades to CPAN.
carton will analyze all the dependencies and their version information, and it is saved into cpanfile.snapshot file. It is important to add cpanfile.snapshot file into a version controlled repository and commit the changes as you update your dependencies.
DEPLOYMENT MODE
If you specify the --deployment
command line option or the cpanfile.snapshot exists, carton will only use the dependencies specified in the cpanfile.snapshot instead of resolving dependencies.
OPTIONS
- --deployment
-
Force the deployment mode. See "DEPLOYMENT MODE" above.
- --cache
-
Locate distribution tarballs in
vendor/cache
rather than fetching them from CPAN mirrors. This requires you to runcarton bundle
prior to the deployment and commit or sync the content ofvendor
directory to the other host you runcarton install
on. - --cpanfile
-
Specify the alternate path for cpanfile. By default,
carton install
will look for the filecpanfile
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 (
local
) andvendor/cache
relative to it. - --path
-
Specify the path to install modules to. Defaults to local in the directory relative to where
cpanfile
is.NOTE: this option, as of version 1.0, is not preserved across multiple runs of
carton install
or other commands such ascarton list
orcarton exec
. You can choose to set the path inPERL_CARTON_PATH
envrionment variable to persist it across commands. - --without
-
By default,
carton install
will install all the phases for dependencies, includingdevelop
. You can specify phases or features to exclude, in the comma separated list.carton install --deployment --without develop
NOTE:
--without
for the initial installation (without cpanfile.snapshot) is not supported at this moment.