Forge Home

sopel

Install and configure the sopel IRC client

5,101 downloads

4,862 latest version

5.0 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 1.0.2 (latest)
  • 1.0.1
  • 1.0.0
released Nov 27th 2018
This version is compatible with:
  • Puppet Enterprise 2019.8.x, 2019.7.x, 2019.5.x, 2019.4.x, 2019.3.x, 2019.2.x, 2019.1.x, 2019.0.x, 2018.1.x, 2017.3.x, 2017.2.x, 2017.1.x, 2016.5.x, 2016.4.x
  • Puppet >= 4.7.0 < 7.0.0
  • ,

Start using this module

  • r10k or Code Manager
  • Bolt
  • Manual installation
  • Direct download

Add this module to your Puppetfile:

mod 'savoirfaire-sopel', '1.0.2'
Learn more about managing modules with a Puppetfile

Add this module to your Bolt project:

bolt module add savoirfaire-sopel
Learn more about using this module with an existing project

Manually install this module globally with Puppet module tool:

puppet module install savoirfaire-sopel --version 1.0.2

Direct download is not typically how you would use a Puppet module to manage your infrastructure, but you may want to download the module in order to inspect the code.

Download

Documentation

savoirfaire/sopel — version 1.0.2 Nov 27th 2018

Build Status

sopel

Table of Contents

  1. Description
  2. Setup - The basics of getting started with sopel
  3. Limitations - OS compatibility, etc.
  4. Development - Guide for contributing to the module

Description

The sopel IRC bot is a fully featured Python-powered IRC bot that can be found at https://github.com/sopel-irc. This puppet module serves to install and configure the bot.

Not all configuration options are included as of the initial release, however pull requests are welcome if you need another module added - just add the option to the parameters to the init.pp file, and then use it in the configuration template file.

Setup

Beginning with sopel

include savoirfaire-sopel

class sopel { 'sopel':
  channels => ['#channel-1', 'channel-2'],
  nick     => 'Sopel',
  host     => 'irc.freenode.net',
  port     => 6679,
  owner    => 'savoir-faire'
}

Reference

There is only one class. The current supported parameters are:

sopel::sopel

Parameters

channels

A list of channels for the installation of sopel to connect to.

Default: []

nick

The nickname that the sopel bot will use when connecting to IRC.

Default: 'sopel'

host

The hostname of the irc server to connect to. This can either be a domain name or an ip address.

Default: 'irc.freenode.net'

port

The port on which the IRC server is running on the host.

Default: 6697

use_ssl

Whether the sopel irc bot should use ssl when connecting to the host.

Default: true

verify_ssl

Whether the sopel irc bot should validate the ssl certificate of the host before connecting (MUST be set to false if using ip address).

Default: true

owner

The irc nick of the owner of the irc bot. This person has permission to ask the bot to join extra channels as well as other permissions. This MUST be set.

Default: undef

logdir

The directory into which the sopel irc bot logs should be put.

Default: /var/log/sopel

pid_dir

The directory into which the sopel irc pid file should be put.

Default: /run/sopel

homedir

The home directory of the sopel user to create. This is where it stores its database and configuration files.

Default: /var/lib/sopel

auth_method

The method the sopel irc bot should use to connect to the host. Can either be nil for no auth, or nickserv for nickserv authentication.

Default: undef

auth_password

The password the sopel irc bot should use to connect to the host. This is ignored if the auth_method setting above is set to nil.

Default: undef

Limitations

Current known limitations are:

  • No ability to disable or remove modules
  • Not all of the configuration options are included

If there are any other issues you run into, please open a github issue.

Development

All contributions are appreciated. The only rule is to be a good person!

All work should be submitted as a merge request which should be related to an issue. If you are doing work on an already opened issue, it is worth adding a comment to said issue to make sure there is no duplicated work.