Skip to content

Efalia/ansible-role-composer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible Role: Composer

CI

Installs Composer, the PHP Dependency Manager, on any Linux or UNIX system.

Requirements

  • php (version 5.4+) should be installed and working (you can use the geerlingguy.php role to install).
  • git should be installed and working (you can use the geerlingguy.git role to install).

Role Variables

Available variables are listed below, along with default values (see defaults/main.yml):

composer_path: /usr/local/bin/composer

The path where composer will be installed and available to your system. Should be in your user's $PATH so you can run commands simply with composer instead of the full path.

composer_keep_updated: false

Set this to true to update Composer to the latest release every time the playbook is run.

composer_home_path: '~/.composer'
composer_home_owner: root
composer_home_group: root

The COMPOSER_HOME path and directory ownership; this is the directory where global packages will be installed.

composer_version: ''

You can install a specific release of Composer, e.g. composer_version: '1.0.0-alpha11'. If left empty the latest development version will be installed. Note that composer_keep_updated will override this variable, as it will always install the latest development version.

composer_version_branch: '--2'

You can choose which major branch of composer you wish to use. Default is --2. Note that composer_keep_updated will update the latest version available for this branch.

composer_global_packages: []

A list of packages to install globally (using composer global require). If you want to install any packages globally, add a list item with a dictionary with the name of the package and a release, e.g. - { name: phpunit/phpunit, release: "4.7.*" }. The 'release' is optional, and defaults to @stable.

composer_add_to_path: true

If true, and if there are any configured composer_global_packages, the vendor/bin directory inside composer_home_path will be added to the system's default $PATH (for all users).

composer_project_path: /path/to/project

Path to a composer project.

composer_add_project_to_path: false

If true, and if you have configured a composer_project_path, the vendor/bin directory inside composer_project_path will be added to the system's default $PATH (for all users).

composer_github_oauth_token: ''

GitHub OAuth token, used to avoid GitHub API rate limiting errors when building and rebuilding applications using Composer. Follow GitHub's directions to Create a personal access token if you run into these rate limit errors.

php_executable: php

The executable name or full path to the PHP executable. This is defaulted to php if you don't override the variable.

Dependencies

None (but make sure you've installed PHP; the geerlingguy.php role is recommended).

Example Playbook

- hosts: servers
  roles:
    - geerlingguy.composer

After the playbook runs, composer will be placed in /usr/local/bin/composer (this location is configurable), and will be accessible via normal system accounts.

License

MIT / BSD

Author Information

This role was created in 2014 by Jeff Geerling, author of Ansible for DevOps.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages