call_learning.moodle
Ansible 角色: Moodle
在 RedHat 和 Debian/Ubuntu 服务器上安装 Moodle(4.1+)。 已在 Ansible 6.0 上测试。
需求
需要最新的 Ubuntu 或 REL 的 LTS 版本,安装 PHP 8.0+、Apache 2.4 和 Postgres 或 Mysql。
角色变量
可用变量在下面列出,并带有默认值(查看 defaults/main.yml
)。
依赖项
如果主机已安装和设置 LAMP 堆栈(或类似)环境,则不需要依赖项。 如果需要安装完整的环境,建议检查:
- geerlingguy.php(安装 PHP 8.x 或更早版本)
- geerlingguy.apache(安装 Apache 2.x)
- geerlingguy.postgresql(安装 Postgres)
- geerlingguy.mysql(安装 Mysql)
示例剧本
许可协议
MIT / BSD
作者信息
该角色由 Laurent David 于 2017 年创建,基于 Jeff Geerling 的角色模板,后者是 Ansible for DevOps 的作者。
测试
先决条件
您必须安装以下内容:
- ansible
我们使用了 Jeff Geerling 的测试作为基础,同时广泛使用 molecule。 我们目前使用 GitHub Actions 在每次提交时运行测试(您可以在 .github/workflow 文件夹中找到它们):
- lint.yml 将对所有项目进行代码检查并检查任何语法错误
- molecule.yml 将一个一个地运行每个场景,并检查 Ansible 剧本是否有效
注意:由于安装 Postgres 和 Mysql 需要时间,因此我们每个月使用 packer 对这些镜像进行预构建。 这个过程在 molecule-images 文件夹中进行,如果您只是想了解角色本身,可以安全忽略。
- 启动 Docker 后,您可以通过运行以下命令重新运行剧本:
container_id=xxxxyyy
docker exec --tty $container_id env TERM=xterm ansible-playbook /etc/ansible/roles/role_under_test/tests/test.yml
要测试特定的剧本,例如 check_moodle.py 部分:
container_id=xxxxyyy
docker exec $container_id env TERM=xterm env ANSIBLE_FORCE_COLOR=1 ansible-playbook -i 'localhost,' -M /etc/ansible/roles/role_under_test/library /etc/ansible/roles/role_under_test/tests/test-check-moodle.yml
库测试
库文件夹中有一个小模块,用于检查 Moodle 是否已安装/配置。 更多信息请查看库文件夹中的 README.md 文件。
#TODO
- 标签任务
- 纯设置不运行 Moodle 安装(仅文件夹和源代码)
- 安装并运行 Moodle 安装,
- ... 一些可选任务,如更改密码、更新、转储数据库等 ...
安装
ansible-galaxy install call_learning.moodle
许可证
mit
下载
352
拥有者