danvaida.deluge
Ansible Delugeロール
Deluge BitTorrentクライアントをインストールおよび設定します。
注意点
Delugeは設定をファイルに保存します。これらの設定ファイルをテンプレート化し、別の方法(Web UIやdeluge-console
を通じて)で設定を変更すると、このロールの冪等性が壊れることに注意してください。
要件
salted_sha1 ソルト付きSHA1暗号化されたパスワードを出力するシンプルなAnsibleフィルタープラグイン。
{{ password | salted_sha1('salt_goes_here') }}
ロール変数
パスワードを平文で保持しないでください。暗号化にはansible-vault
を使用してください。
deluge_users_to_add: Delugeの
auth
ファイルに追加するユーザーのリスト。 http://dev.deluge-torrent.org/wiki/UserGuide/Authenticationdeluge_users_to_remove: Delugeの
auth
ファイルから削除するユーザーのリスト。deluge_config_dir: 設定ファイルやディレクトリを持つディレクトリのパス。
deluge_web: DelugeのWeb UIを設定するためのバイナリスイッチ。
deluge_web_port: DelugeのWeb UIがリッスンしているポート。
deluge_web_log_level: UIのログレベル。利用可能なオプションは
deluge-web --help
で確認できます。deluge_web_daemon_args: サービスとして実行されている
deluge-web
バイナリに渡される引数。 利用可能なオプションはdeluge-web --help
で確認できます。deluge_web_password: Web UIで使用するパスワード。
deluge_web_password_salt: Web UIパスワード生成時に使用するパスワードソルト。
上記のオプションは主にシステム関連ですが、以下のオプションはDelugeの動作に特有です。デフォルト値はdefaults/main.yml
で確認し、公式ドキュメントで詳細を学んでください。
- deluge_allow_remote:
- deluge_autoadd_location:
- deluge_download_location:
- deluge_move_completed_path:
- deluge_prioritize_first_last_pieces:
- deluge_queue_new_to_top:
- deluge_torrentfiles_location:
依存関係
なし。
例 Playbook
- hosts: raspberrypi
gather_facts: False
become: True
roles:
- role: deluge
deluge_web: False
deluge_users_to_add:
- name: userone
password: 12345
access_level: 10
- name: usertwo
password: 67890
access_level: 5
deluge_users_to_remove:
- usertwo
deluge_download_location: '/mnt/storage/disk'
テスト
提供されたDocker環境でテストを実行したい場合、以下のコマンドを実行してください:
$ cd /path/to/ansible-role-deluge
$ docker build -t ansible-role-deluge tests/support
$ docker run -it -v $PWD:/role ansible-role-deluge
$ docker run -it -v $PWD:/role --env EXTRA_VARS='deluge_web=False' ansible-role-deluge
今後の予定
- HTTPSのサポートを追加
- init.dスクリプトからsystemdに切り替え
deluged
とdeluge-web
サービスをDockerコンテナ内で実行salted_sha1.py
フィルタープラグインをリファクタリング
貢献
「フォークアンドプル」Gitワークフローに従ってください。
- GitHubでリポジトリをフォーク
- プロジェクトを自分のマシンにクローン
- 自分のブランチに変更をコミット
- フォークに作業をプッシュ
- 変更をレビューしてもらうためにプルリクエストを提出
注意:プルリクエストを出す前に、「上流」からの最新の変更をマージすることを忘れずに!
ライセンス
BSD