Documentation
composer
Dependency Manager for PHP.
Composer is a tool for dependency management in PHP. It allows you to declare the dependent libraries your project needs and it installs them in your project for you.
Attributes
check_mode:
support: full
Parameters
| Parameter | Required | Type | Values | Description |
|---|---|---|---|---|
| executable | string | Path to composer executable on the remote host, if composer is not in PATH. [default: "composer"] |
||
| executable_php | string | Path to PHP executable on the remote host, if PHP is not in PATH. | ||
| command | string | Composer command to run. [default: "install"] |
||
| arguments | string | Composer arguments like required package, version and so on. [default: ""] |
||
| working_dir | string | Directory of your project (see –working-dir). This is required when the command is not run globally. | ||
| global_command | boolean | Runs the specified command globally. [default: false] |
||
| no_dev | boolean | Disables installation of require-dev packages. [default: true] |
||
| optimize_autoloader | boolean | Optimize autoloader during autoloader dump. [default: true] |
||
| classmap_authoritative | boolean | Autoload classes from classmap only. [default: false] |
||
| apcu_autoloader | boolean | Uses APCu to cache found/not-found classes. [default: false] |
||
| prefer_dist | boolean | Forces installation from package dist even for dev versions. [default: false] |
||
| prefer_source | boolean | Forces installation from package sources when possible. [default: false] |
||
| ignore_platform_reqs | boolean | Ignore php, hhvm, lib-* and ext-* requirements. [default: false] |
||
| no_scripts | boolean | Skips the execution of all scripts defined in composer.json. [default: false] |
||
| no_plugins | boolean | Disables all plugins. [default: false] |
Example
- name: Install dependencies from composer.lock
composer:
command: install
working_dir: /path/to/project
- name: Install dependencies without dev packages
composer:
command: install
working_dir: /path/to/project
no_dev: true
- name: Install a new package
composer:
command: require
arguments: my/package
working_dir: /path/to/project
- name: Install a package globally
composer:
command: require
global_command: true
arguments: my/package
- name: Update all dependencies
composer:
command: update
working_dir: /path/to/project
- name: Create a new project
composer:
command: create-project
arguments: package/package /path/to/project ~1.0
working_dir: /tmp
prefer_dist: true
- name: Optimize autoloader for production
composer:
command: dump-autoload
working_dir: /path/to/project
optimize_autoloader: true
no_dev: true