sopel.sopel
非推奨。この役割はもはやメンテナンスされていません。代わりに公式ではないDockerイメージの使用を推奨します。
もしこのメンテナンスを引き継ぎたい人がいれば、イシューをオープンしてください。対応します。 問題は主にCI関連です。
ansible-sopelとは? 
これは、仮想環境にsopel IRCボットをインストールするAnsibleの役割です。
サポートされているプラットフォーム
- Ubuntu 18.04 LTS (Bionic)
- Ubuntu 20.04 LTS (Focal)
- Debian 9 (Stretch)
- Debian 10 (Buster)
- CentOS 7
- CentOS 8
依存関係
- Python 3
- Python venv
- Python Wheelまたはビルドツール
ロール変数
---
# インスタンス名を変更すると、異なるニックネームまたは異なるサーバーに接続する限り
# 複数のSopelインスタンスを同じサーバー上で並行して実行できます。
sopel_instance_name: 'sopel'
sopel_install_dir: '/srv/sopel'
sopel_config_dir: '/etc/sopel'
sopel_log_dir: '/var/log/sopel'
sopel_pid_dir: '/run/sopel'
sopel_install_systemd_service: true
sopel_start_systemd_service: true
# システムが異なる仮想環境ラッパーを使用している場合は、venvコマンドを上書きできます。
sopel_venv_cmd: '/usr/bin/python3 -m venv'
# ボットを呼び出すために使用されるプレフィックス。
# 正規表現として解析されるため、特殊文字はエスケープすることを忘れないでください。
sopel_command_prefix: '\.'
# チャンネルでのsopelの表示名
sopel_nick: 'sopel_irc_bot'
sopel_auth_method: 'sasl'
# sopelが接続するネットワーク
sopel_irc_host: 'chat.freenode.org'
sopel_irc_port: 6697
# 参加するチャンネルのリスト
sopel_channels:
- '##botspam'
# ボットの管理者
sopel_bot_owner: ''
# sopelが無視するニックネームとホストマスクのリスト。正規表現として解析されます。
sopel_ignored_nicks:
- ''
sopel_ignored_hosts:
- ''
# 有効にするプラグインのリスト。デフォルトではすべて有効です。
#sopel_enabled_plugins: []
# 除外するプラグインのリスト。デフォルトではなし。
#sopel_excluded_plugins: []
## sopelの設定への追加はこの変数を通じて行えます。
## 設定の最後に追加されます。
#sopel_config_extra: |
# [currency]
# auto_convert = true
# デフォルトのタイムゾーンと時間フォーマット。フォーマット情報はhttp://strftime.org/を参照。
sopel_timezone: 'Europe/Copenhagen'
sopel_time_format: '[%Y-%m-%d - %T %Z]'
使用例
二つのsopelインスタンスを迅速かつ容易にデプロイする方法の例 これにより、デフォルト名のsopelとsopel2という名前の二つのsopelインスタンスがセットアップされます。 それらはsopel-sopelおよびsopel-sopel2という名前でsystemdサービスとしてインストールされます。 設定ファイルは/etc/sopel/に見つかります。
---
- name: 'Sopelインスタンス1のインストール'
hosts: vps
become: true
tags:
- sopel
vars:
sopel_auth_method: 'nickserv'
sopel_bot_owner: 'testManDan'
sopel_nick: Sopel_bot_1
sopel_auth_user: NICK OWNER HERE
sopel_auth_pass: NICK PASS HERE
roles:
- sopel.sopel
- name: 'Sopelインスタンス2のインストール'
hosts: vps
become: true
tags:
- sopel
vars:
sopel_instance_name: 'sopel2'
sopel_auth_method: 'nickserv'
sopel_bot_owner: 'testManDan'
sopel_nick: Sopel_bot_2
sopel_auth_user: NICK OWNER HERE
sopel_auth_pass: NICK PASS HERE
roles:
- sopel.sopel
インストール
$ ansible-galaxy install sopel.sopel
Ansible Galaxy
公式のAnsible Galaxyにありますので、評価したい場合はこちらをご覧ください。
ライセンス
MIT
Geerlingguyの素晴らしいansible CIドキュメントに感謝します。CIは彼の作業から適応されています。