danvaida.deluge
Ansible Deluge角色
安装和配置Deluge BitTorrent客户端。
注意事项
Deluge将配置信息保存到文件中。您应该注意,当您使用其他方式(通过Web界面或deluge-console
)更改配置时,模板化这些配置文件将破坏此角色的幂等性。
需求
salted_sha1 一个简单的Ansible过滤器插件,用于输出经过盐值处理的SHA1加密密码。
{{ 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:
依赖关系
无。
示例剧本
- 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
- 在Docker容器中运行
deluged
和deluge-web
服务 - 重构
salted_sha1.py
过滤器插件
贡献
遵循“分叉和拉取”Git工作流程。
- 在GitHub上分叉该库
- 将项目克隆到自己的机器
- 在自己的分支中提交更改
- 将您的工作推送回您的分叉
- 提交拉取请求,以便我们可以审核您的更改
注意:在提交拉取请求之前,请确保合并来自“上游”的最新更改!
许可证
BSD