geerlingguy.composer
Ansible-Rolle: Composer
Installiert Composer, den PHP-Abhängigkeitsmanager, auf jedem Linux- oder UNIX-System.
Anforderungen
php
(Version 5.4+) sollte installiert und funktionsfähig sein (du kannst die Rollegeerlingguy.php
zur Installation verwenden).git
sollte installiert und funktionsfähig sein (du kannst die Rollegeerlingguy.git
zur Installation verwenden).
Rollenvariablen
Verfügbare Variablen sind unten aufgelistet, zusammen mit Standardwerten (siehe defaults/main.yml
):
composer_path: /usr/local/bin/composer
Der Pfad, wo Composer installiert wird und für dein System verfügbar ist. Sollte im $PATH
deines Benutzers sein, damit du Befehle einfach mit composer
anstelle des vollständigen Pfads ausführen kannst.
composer_keep_updated: false
Setze diesen Wert auf true
, um Composer bei jedem Ausführen des Playbooks auf die neueste Version zu aktualisieren.
composer_home_path: '~/.composer'
composer_home_owner: root
composer_home_group: root
Der COMPOSER_HOME
-Pfad und die Verzeichnisbesitzrechte; dies ist das Verzeichnis, in dem globale Pakete installiert werden.
composer_version: ''
Du kannst eine bestimmte Version von Composer installieren, z.B. composer_version: '1.0.0-alpha11'
. Wenn leer gelassen, wird die neueste Entwicklungsversion installiert. Beachte, dass composer_keep_updated
diese Variable überschreibt, da es immer die neueste Entwicklungsversion installiert.
composer_version_branch: '--2'
Du kannst wählen, welche Hauptversion von Composer du verwenden möchtest. Standard ist --2
. Beachte, dass composer_keep_updated
die neueste Version für diesen Branch aktualisiert.
composer_global_packages: []
Eine Liste von Paketen, die global installiert werden sollen (mit composer global require
). Wenn du globale Pakete installieren möchtest, füge ein Listenelement mit einem Wörterbuch mit dem name
des Pakets und einer release
hinzu, z.B. - { name: phpunit/phpunit, release: "4.7.*" }
. Die 'release' ist optional und standardmäßig @stable
.
composer_add_to_path: true
Wenn true
, und wenn es konfigurierte composer_global_packages
gibt, wird das Verzeichnis vendor/bin
innerhalb des composer_home_path
zum Standard-$PATH des Systems hinzugefügt (für alle Benutzer).
composer_project_path: /path/to/project
Pfad zu einem Composer-Projekt.
composer_add_project_to_path: false
Wenn true
, und wenn du einen composer_project_path
konfiguriert hast, wird das Verzeichnis vendor/bin
innerhalb des composer_project_path
zum Standard-$PATH des Systems hinzugefügt (für alle Benutzer).
composer_github_oauth_token: ''
GitHub OAuth-Token, das verwendet wird, um Fehler durch API-Ratenbegrenzung von GitHub zu vermeiden, wenn Anwendungen mit Composer erstellt oder neu gebaut werden. Folge den Anweisungen von GitHub, um ein persönliches Zugriffstoken zu erstellen, falls du auf diese Ratenbegrenzungsfehler stößt.
php_executable: php
Der Name der ausführbaren Datei oder der vollständige Pfad zur PHP-Ausführungsdatei. Dies ist standardmäßig php
, wenn du die Variable nicht überschreibst.
Verwendung von Composer 1
Während Projekte aktualisiert werden, um Composer 2 zu unterstützen, kann es hilfreich sein, Composer 1 zu verwenden. Um dies zu tun, setze diese Variablen:
composer_version_branch: ''
composer_version: '1.10.12'
Abhängigkeiten
Keine (aber stelle sicher, dass PHP installiert ist; die Rolle geerlingguy.php
wird empfohlen).
Beispiel Playbook
- hosts: servers
roles:
- geerlingguy.composer
Nach dem Ausführen des Playbooks wird composer
in /usr/local/bin/composer
platziert (dieser Speicherort ist konfigurierbar) und ist über normale Systemkonten zugänglich.
Lizenz
MIT / BSD
Autor Informationen
Diese Rolle wurde 2014 von Jeff Geerling erstellt, Autor von Ansible for DevOps.
ansible-galaxy install geerlingguy.composer