sopel.sopel
Obsoleto. Este rol ya no se mantiene. Se recomienda usar la imagen de docker oficialmente no oficial en su lugar.
Si alguien quiere hacerse cargo del mantenimiento, abra un problema y lo resolveremos. Los problemas están relacionados principalmente con CI.
¿Qué es ansible-sopel? 
Es un rol de Ansible que instala el bot irc Sopel en un entorno virtual.
Plataformas soportadas
- Ubuntu 18.04 LTS (Bionic)
- Ubuntu 20.04 LTS (Focal)
- Debian 9 (Stretch)
- Debian 10 (Buster)
- CentOS 7
- CentOS 8
Dependencias
- Python 3
- Python venv
- Herramientas de Python wheel o build
Variables del rol
---
# Cambiar el nombre de la instancia permitirá que varias instancias de Sopel
# se ejecuten al mismo tiempo en el mismo servidor, siempre que tengan
# apodos diferentes o se conecten a diferentes servidores.
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
# Si tu sistema utiliza un contenedor de entorno virtual diferente, puedes sobrescribir el comando venv
sopel_venv_cmd: '/usr/bin/python3 -m venv'
# El prefijo utilizado para llamar al bot.
# Se analiza como una expresión regular, así que recuerda escapar los caracteres especiales
sopel_command_prefix: '\.'
# El apodo que Sopel usará en los canales
sopel_nick: 'sopel_irc_bot'
sopel_auth_method: 'sasl'
# La red a la que Sopel debería conectarse
sopel_irc_host: 'chat.freenode.org'
sopel_irc_port: 6697
# Una lista de canales a los que unirse
sopel_channels:
- '##botspam'
# El administrador del bot
sopel_bot_owner: ''
# Una lista de apodos y máscaras de host que Sopel debe ignorar. Se analiza como regex
sopel_ignored_nicks:
- ''
sopel_ignored_hosts:
- ''
# Una lista de complementos para habilitar. Por defecto, todo está habilitado
#sopel_enabled_plugins: []
# Una lista de complementos a excluir. Por defecto, ninguno está excluido
#sopel_excluded_plugins: []
## Cualquier adición adicional a la configuración de Sopel se puede agregar a través de esta variable
## se agrega al final de la configuración
#sopel_config_extra: |
# [currency]
# auto_convert = true
# Zona horaria y formato de tiempo predeterminados. http://strftime.org/ para información sobre el formato
sopel_timezone: 'Europe/Copenhagen'
sopel_time_format: '[%Y-%m-%d - %T %Z]'
Ejemplo de uso
Ejemplo que muestra cómo implementar rápida y fácilmente dos instancias de Sopel. Esto configurará dos instancias de Sopel, una con el nombre predeterminado sopel y otra llamada sopel2. También se instalarán como servicios systemd bajo los nombres: sopel-sopel y sopel-sopel2. Los archivos de configuración se encontrarán en /etc/sopel/
---
- name: 'Instalar la instancia de 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 AQUI
sopel_auth_pass: NICK PASS AQUI
roles:
- sopel.sopel
- name: 'Instalar la instancia de 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 AQUI
sopel_auth_pass: NICK PASS AQUI
roles:
- sopel.sopel
Instalación
$ ansible-galaxy install sopel.sopel
Ansible Galaxy
Puedes encontrarlo en el oficial Ansible Galaxy si quieres valorarlo.
Licencia
MIT
Gracias a Geerlingguy por la excelente documentación de CI de ansible. CI está adaptado de su trabajo.
ansible-galaxy install sopel.sopel