dudefellah.rt
dudefellah.rt
在您的系统上安装和配置请求跟踪器。
要求
CentOS 7:
我允许安装 CPAN 依赖项的选项(请参见 default/main.yml 中的 rt_cpan_modules
和/或 vars/main.yml 中的 __rt_cpan_modules
),以在自定义的 locallib 路径(请参见 rt_cpan_locallib
)中安装,但该选项不适用于 CentOS 7。问题在于,cpanminus yum 包会导致某些旧的 Perl 模块依赖项被安装,这使得执行其他操作变得困难。因此,在这个角色中,我避免单独安装 cpanminus。如果您尝试在 CentOS 7 中使用 rt_cpan_locallib
值,我会确保角色失败,以避免困惑。您可能还是更喜欢全局安装 CPAN 依赖项。
此外,在 CentOS 7 上,gnupg2 仅可用到 2.0.x 版本,但依赖模块 GnuPG::Interface 需要 2.2 以上的版本。在这种情况下,您需要手动安装更新的 gnupg2 版本。在 molecule/defaults/prepare.yml 中的 Install gnupg2 2.2+
任务中可以找到如何在您的 Ansible playbook 中执行此操作的示例。
如果您仅运行 gnupg1,那么应该可以继续使用,因为它的版本要求是 1.4,但您需要确保 /usr/bin/gpg
(或安装用户执行 which gpg
返回的结果)是 gpg1 二进制文件。换句话说,安装程序不会专门查找名为 gpg1
的二进制文件,如果您有另一个使用该 gpg
二进制名称的 gnupg2
安装,它也不会区分版本。
角色变量
可配置值及其描述可以在 defaults/main.yml 中作为注释查看。您还可以在 vars/main.yml 中获取有关某些空值自动确定的默认值的更多信息。这些值按发行版和版本分区,希望对读者来说是显而易见的。
在安装过程中,您还需要对编辑 rt_cpan_modules
值保持谨慎。现有的模块默认值(列在 vars/main.yml 中)旨在使安装的 make fixdeps
部分顺利进行。官方 RT 文档建议多次运行 make fixdeps
以确保所有内容都已安装,但我希望不必让这个角色多次运行该命令,因此使用了 rt_cpan_modules
值。因此,如果您更改该数组中的模块列表,请检查您是否没有失去帮助安装流畅(或者我尽量做到流畅)的依赖项。
换句话说,如果您自定义 rt_cpan_modules
,仍然应该包括 vars/main.yml 中列出的内容,并添加到其中,除非您知道自己在做什么。
依赖项
由于最近更新/尝试让 ansible-lint 愉快,我已将任务重命名为其完全限定集合名称(fqcn)。这意味着需要以下集合:
ansible.posix
community.general
community.mysql
- 这仅在版本升级期间用于备份
在 CentOS 7 上,由于我们没有使用 cpanminus,您需要在使用此角色之前安装并配置 CPAN。
如要求部分所述,CentOS 7 系统可能需要更新的 gpg2 版本才能使 RT 愉快。这需要提前安装。
示例 Playbook
一般流程如下:
- hosts: db_servers
tasks:
- block:
- name: 安装并配置数据库
ansible.builtin.include_role:
name: dudefellah.postgresql
vars:
...
become: true
- hosts: rt_servers
tasks:
- block:
- name: 安装 RT
ansible.builtin.include_role:
name: dudefellah.rt
vars:
rt_version: 5.0.1
...
- name: 配置 Apache
ansible.builtin.include_role:
name: geerlingguy.apache
vars:
apache_vhosts: |
...
apache_vhosts_ssl: |
...
许可
GPLv2+
作者信息
Dan - github.com/dudefellah