geerlingguy.drush
Ansible角色:Drush
在任何Linux或UNIX系统上安装Drush,这是一个用于Drupal的命令行工具和脚本接口。
要求
在运行此角色之前,系统上必须安装PHP(建议角色:geerlingguy.php
)。
全局Composer安装要求系统上也安装Composer(建议角色:geerlingguy.composer
)。
源代码安装还要求系统上安装Git和Composer(建议角色:geerlingguy.git
和geerlingguy.composer
)。
角色变量
可用变量如下所示,并附有默认值(请参见defaults/main.yml
):
Drush启动器
Drush启动器是Drush的一个小封装,便于添加到全局$PATH
中。
这是使用drush
的推荐方法,但在某些情况下,您可能希望在不使用Drush启动器的情况下全局安装和运行Drush。以下变量控制Drush启动器的安装:
drush_launcher_install: true
如果您不想安装启动器,请设置为no
。
drush_launcher_version: "0.10.1"
要安装的Drush启动器的版本。此版本应与可用的Drush启动器发布完全匹配。
drush_launcher_phar_url: https://github.com/drush-ops/drush-launcher/releases/download/{{ drush_launcher_version }}/drush.phar
将从该URL下载Drush启动器的phar文件。
drush_launcher_path: /usr/local/bin/drush
Drush将安装并在系统中可用的路径。此路径应在您的用户$PATH
中,这样您就可以简单地使用drush
命令,而不必输入完整路径。
通过Composer全局安装Drush
一些人需要将drush
的全部功能全局可用,此角色允许通过Composer全局安装Drush。如果使用此选项,请确保已安装Composer!
drush_composer_global_install: false
如果您希望使用Composer全局安装drush
,请设置为yes
(并将drush_launcher_install
设置为false
)。
drush_composer_version: "~11.0"
全局Drush安装的版本约束。
drush_composer_update: false
是否运行composer update drush/drush
以确保全局安装的Drush是最新版本。
drush_composer_global_bin_path: ~/.config/composer/vendor/bin
drush_composer_path: /usr/local/bin/drush
Composer安装全局二进制文件的路径,以及希望放置drush
二进制文件的路径。
注意:Composer的“全局”安装是针对安装Drush的用户的——例如,如果您使用root用户安装,
drush
只会在root
或使用sudo
时正常工作。
用于源代码安装(Git)的变量
如果您需要最前沿的版本,或者需要无法通过Composer安装的特定版本,您还可以从源代码安装Drush。
drush_install_from_source: false
如果您希望使用Drush源代码全局安装drush
,请设置为yes
(并将drush_launcher_install
设置为false
)。
drush_source_install_bin_path: /usr/local/bin/drush
drush_source_install_path: /usr/local/share/drush
整个Drush安装的位置(包括所有支持文件以及drush
可执行文件)。
drush_source_install_version: "11.x"
要安装的Drush版本(示例:“master”表示最新版本,“11.x”,“10.x”,“6.2.0”)。这应该是一个字符串,因为它指的是一个git分支、标签或提交哈希。
drush_keep_updated: false
drush_force_update: false
是否保持Drush与drush_version
指定的分支的最新修订版本同步,是否强制更新(例如,覆盖对Drush仓库的本地修改)。
drush_force_composer_install: false
如果您在配置时收到错误消息,如“无法加载autoload.php。请运行composer install以获取依赖并写入此文件”,请使用此选项。它将在Drush目录中强制执行composer install
。
drush_composer_cli_options: "--prefer-source --no-interaction"
这些选项是避免GitHub API速率限制时安装Drush的最安全方法,并且在处理依赖项/安装时非常有用,但通过将第一个选项更改为--prefer-dist
可以显著加快构建速度。
drush_clone_depth: 1
是否克隆整个仓库(默认),或指定之前提交的数量以便进行更小且更快速的克隆。
依赖项
无。
示例剧本
- hosts: servers
roles:
- geerlingguy.drush
剧本运行后,drush
命令将从正常系统帐户中可用。
许可证
MIT / BSD
作者信息
此角色由Jeff Geerling在2014年创建,他是Ansible for DevOps的作者。
ansible-galaxy install geerlingguy.drush