buluma.moodle
Ansibleロールmoodle
あなたのシステムにmoodleをインストールして設定します。
GitHub | バージョン | 問題 | プルリクエスト | ダウンロード |
---|---|---|---|---|
例のプレイブック
この例は、molecule/default/converge.yml
から取られ、各プッシュ、プルリクエスト、リリースでテストされています。
---
- name: converge
hosts: all
become: true
gather_facts: true
pre_tasks:
- name: aptキャッシュを更新します。
apt: update_cache=yes cache_valid_time=600
when: ansible_os_family == 'Debian'
changed_when: false
- name: python3.11 EXTERNALLY-MANAGEDファイルの存在を確認します
ansible.builtin.stat:
path: /usr/lib/python3.11/EXTERNALLY-MANAGED
register: externally_managed_file_py311
- name: python3.11 EXTERNALLY-MANAGEDファイルが存在する場合は名前を変更します
ansible.builtin.command:
cmd: mv /usr/lib/python3.11/EXTERNALLY-MANAGED /usr/lib/python3.11/EXTERNALLY-MANAGED.old
when: externally_managed_file_py311.stat.exists
args:
creates: /usr/lib/python3.11/EXTERNALLY-MANAGED.old
- name: python3.12 EXTERNALLY-MANAGEDファイルの存在を確認します
ansible.builtin.stat:
path: /usr/lib/python3.12/EXTERNALLY-MANAGED
register: externally_managed_file_py312
- name: python3.12 EXTERNALLY-MANAGEDファイルが存在する場合は名前を変更します
ansible.builtin.command:
cmd: mv /usr/lib/python3.12/EXTERNALLY-MANAGED /usr/lib/python3.12/EXTERNALLY-MANAGED.old
when: externally_managed_file_py312.stat.exists
args:
creates: /usr/lib/python3.12/EXTERNALLY-MANAGED.old
roles:
- role: buluma.moodle
マシンを準備する必要があります。CIでは、molecule/default/prepare.yml
を使ってこれが行われます:
---
- name: prepare
hosts: all
become: true
gather_facts: false
roles:
- role: buluma.bootstrap
- role: buluma.buildtools
- role: buluma.epel
- role: buluma.mysql
mysql_databases:
- name: moodle
encoding: utf8mb4
collation: utf8mb4_unicode_ci
mysql_users:
- name: moodle
password: moodle
priv: "moodle.*:ALL"
- role: buluma.python_pip
- role: buluma.openssl
openssl_items:
- name: apache-httpd
common_name: "{{ ansible_fqdn }}"
- role: buluma.php
- role: buluma.selinux
- role: buluma.httpd
httpd_vhosts:
- name: moodle
servername: moodle.example.com
- role: buluma.cron
- role: buluma.core_dependencies
これらのロールの使い方についての完全な説明と例も参照してください。
ロール変数
変数のデフォルト値は、defaults/main.yml
に設定されています:
---
# moodleのデフォルトファイル
# インストールするmoodleのバージョン。
moodle_version: 401
# データを保存するパス。
moodle_data_directory: /opt/moodledata
# 作成されたディレクトリの権限。
moodle_directory_mode: "0750"
# データベースへの接続情報。
moodle_database_type: mysqli
moodle_database_hostname: localhost
moodle_database_name: moodle
moodle_database_username: moodle
moodle_database_password: moodle
moodle_database_prefix: ""
# コンテンツを提供するURL。
moodle_wwwroot: "https://{{ ansible_default_ipv4.address }}/moodle"
要件
- requirements.txtにリストされたpipパッケージ。
使用されるロールの状態
システムを準備するために、次のロールが使用されています。別の方法でもシステムを準備できます。
要件 | GitHub | バージョン |
---|---|---|
buluma.bootstrap | ||
buluma.buildtools | ||
buluma.cron | ||
buluma.core_dependencies | ||
buluma.epel | ||
buluma.httpd | ||
buluma.mysql | ||
buluma.openssl | ||
buluma.php | ||
buluma.python_pip | ||
buluma.selinux |
コンテキスト
このロールは、多くの互換性のあるロールの一部です。その他の情報については、これらのロールのドキュメントをご覧ください。
関連するロールの概要は次のとおりです:
互換性
このロールは、これらのコンテナイメージでテストされています:
コンテナ | タグ |
---|---|
EL | 8 |
Debian | すべて |
Fedora | 38, 39, 40 |
opensuse | すべて |
Ubuntu | jammy, noble |
必要なAnsibleの最小バージョンは2.12であり、以下のテストを行っています:
- 前のバージョン。
- 現在のバージョン。
- 開発バージョン。
問題が見つかった場合は、GitHubに登録してください。