Cleanup eavesdrop puppet references

Cleanup documenation, puppet references and the eavesdrop_opendev
group.

Change-Id: I67096d8eced0be54db9b1ee277b24602d8c20f00
This commit is contained in:
Ian Wienand 2021-06-07 11:59:47 +10:00
parent ccda6d08a1
commit 8a1f6d9764
8 changed files with 27 additions and 205 deletions

View File

@ -73,7 +73,7 @@ will need new resources, it is best to coordinate this before review.
The `#opendev` IRC on OFTC The `#opendev` IRC on OFTC
channel is the main place for interactive discussion. Feel free to channel is the main place for interactive discussion. Feel free to
ask any questions and someone will try to help ASAP. The `OpenDev ask any questions and someone will try to help ASAP. The `OpenDev
meeting <http://eavesdrop.openstack.org/#OpenDev_Meeting>`__ is a meeting <https://meetings.opendev.org/#OpenDev_Meeting>`__ is a
co-ordinated time to synchronize on infrastructure issues. Issues co-ordinated time to synchronize on infrastructure issues. Issues
should be added to the `agenda should be added to the `agenda
<https://wiki.openstack.org/wiki/Meetings/InfraTeamMeeting>`__ for <https://wiki.openstack.org/wiki/Meetings/InfraTeamMeeting>`__ for

View File

@ -224,7 +224,7 @@ Creating a Volume
.. ..
See following for background on the issues See following for background on the issues
http://eavesdrop.openstack.org/irclogs/%23opendev/%23opendev.2020-06-10.log.html#t2020-06-10T22:13:43 http://meetings.opendev.org//irclogs/%23opendev/%23opendev.2020-06-10.log.html#t2020-06-10T22:13:43
https://review.opendev.org/#/c/735061/ https://review.opendev.org/#/c/735061/
.. warning:: .. warning::

View File

@ -14,23 +14,15 @@ At a Glance
=========== ===========
:Hosts: :Hosts:
* http://eavesdrop.openstack.org/ * http://eavesdrop01.opendev.org
* https://review.opendev.org/
* https://wiki.openstack.org/wiki/Infrastructure_Status * https://wiki.openstack.org/wiki/Infrastructure_Status
* http://ptg.openstack.org/ * http://ptg.openstack.org/
:Puppet:
* https://opendev.org/opendev/puppet-meetbot
* https://opendev.org/opendev/puppet-statusbot
* https://opendev.org/opendev/puppet-ptgbot
* :git_file:`modules/openstack_project/manifests/eavesdrop.pp`
* :git_file:`modules/openstack_project/manifests/review.pp`
:Configuration: :Configuration:
* :config:`gerritbot/channels.yaml` * :config:`gerritbot/channels.yaml`
* :config:`accessbot/channels.yaml` * :config:`accessbot/channels.yaml`
:Projects: :Projects:
* https://github.com/ProgVal/Limnoria
* https://wiki.debian.org/MeetBot * https://wiki.debian.org/MeetBot
* https://sourceforge.net/projects/supybot/
* https://opendev.org/opendev/meetbot
* https://opendev.org/opendev/gerritbot * https://opendev.org/opendev/gerritbot
* https://opendev.org/opendev/statusbot * https://opendev.org/opendev/statusbot
* https://opendev.org/openstack/ptgbot * https://opendev.org/openstack/ptgbot
@ -63,43 +55,22 @@ commands.
NOTE: Channel admin should issue the access commands above BEFORE adding NOTE: Channel admin should issue the access commands above BEFORE adding
channel to gerritbot and accessbot, otherwise Zuul will fail tests. channel to gerritbot and accessbot, otherwise Zuul will fail tests.
Meetbot Service overview
======= ================
The OpenDev team runs a slightly modified The OpenDev team runs Limnoria `Limnoria
`Meetbot <https://wiki.debian.org/MeetBot>`_ to log IRC channel activity and <https://github.com/ProgVal/Limnoria>`__ on `eavesdrop01.opendev.org`
meeting minutes. Meetbot is a plugin for to provide channel and meeting logs.
`Supybot <https://sourceforge.net/projects/supybot/>`_ which adds meeting
support features to the Supybot IRC bot.
Supybot Channel logs are provided by Limnoria's inbuilt channel logger.
------- Meeting logging is provided by the `Meetbot plugin
<https://opendev.org/opendev/meetbot>`__.
In order to run Meetbot you will need to get Supybot. You can find the latest Running Meetings
release `here <https://sourceforge.net/projects/supybot/files/>`_. Once you have ================
extracted the release you will want to read the ``INSTALL`` and
``doc/GETTING_STARTED`` files. Those two files should have enough
information to get you going, but there are other goodies in ``doc/``.
Once you have Supybot installed you will need to configure a bot. The
``supybot-wizard`` command can get you started with a basic config, or you can
have the OpenStack meetbot puppet module do the heavy lifting.
One important config setting is ``supybot.reply.whenAddressedBy.chars``, which
sets the prefix character for this bot. This should be set to something other
than ``#`` as ``#`` will conflict with Meetbot (you can leave the setting blank
if you don't want a prefix character).
Meetbot
-------
The OpenDev Meetbot fork can be found at
https://opendev.org/opendev/meetbot. Manual installation of the Meetbot
plugin is straightforward and documented in that repository's README.
OpenDev installs and configures Meetbot through Puppet.
Starting a Meeting Starting a Meeting
^^^^^^^^^^^^^^^^^^ ------------------
To start a meeting, use the command ``#startmeeting`` followed by the To start a meeting, use the command ``#startmeeting`` followed by the
meeting name. For instance, if you are having a meeting of the meeting name. For instance, if you are having a meeting of the
@ -114,7 +85,7 @@ meeting name to ensure logs are recorded to the same location.
This feature is specific to the OpenDev Meetbot fork. This feature is specific to the OpenDev Meetbot fork.
Voting Voting
^^^^^^ ------
The OpenDev Meetbot fork adds simple voting features. After The OpenDev Meetbot fork adds simple voting features. After
a meeting has been started a meeting chair can begin a voting block with the a meeting has been started a meeting chair can begin a voting block with the
@ -163,17 +134,17 @@ A somewhat contrived voting example:
meetbot | No (1): foo meetbot | No (1): foo
Logging Logging
^^^^^^^ -------
Meetings are automatically logged and published at Meetings are automatically logged and published at
http://eavesdrop.openstack.org/meetings/ https://meetings.opendev.org/meetings/
The bot also has the ability to sit in a channel for the sole purpose The bot also has the ability to sit in a channel for the sole purpose
of logging channel activity, not just meetings. Standard channel logs of logging channel activity, not just meetings. Standard channel logs
are sent to http://eavesdrop.openstack.org/irclogs/ are sent to http://meetings.opendev.org/irclogs/
The configuration for specific channel logging can be found in the The configuration for specific channel logging can be found in ,
public Hiera data file, :git_file:`hiera/common.yaml`. :git_file:`inventory/service/group_vars/eavesdrop.yaml`.
.. _statusbot: .. _statusbot:
@ -268,12 +239,15 @@ Example::
PTG Bot PTG Bot
======= =======
.. note:: The PTG bot is currently pending conversion to run against
OFTC from the `eavesdrop01.opendev.org` server.
Bot that `Project Teams Gathering <https://www.openstack.org/ptg>`_ Bot that `Project Teams Gathering <https://www.openstack.org/ptg>`_
room moderators use to surface what's currently happening at the room moderators use to surface what's currently happening at the
event. Usage instructions are provided in its `README.rst file event. Usage instructions are provided in its `README.rst file
<https://opendev.org/openstack/ptgbot/src/branch/master/README.rst>`_. <https://opendev.org/openstack/ptgbot/src/branch/master/README.rst>`_.
It writes some static content into ``/var/lib/ptgbot/www`` on the It writes some static content into ``/var/lib/ptgbot/www`` on the
eavesdrop.openstack.org server and then serves that from a eavesdrop01.openstack.org server and then serves that from a
http://ptg.openstack.org/ Apache vhost. http://ptg.openstack.org/ Apache vhost.
Code for the PTG bot lives in the openstack/ptgbot respository Code for the PTG bot lives in the openstack/ptgbot respository

View File

@ -177,7 +177,7 @@ functionality is limited.</p>
<h2 id="contact-info">Contact info</h2> <h2 id="contact-info">Contact info</h2>
<ul> <ul>
<li>IRC #opendev on OFTC (<a href="http://eavesdrop.openstack.org/irclogs/%23opendev/">logs</a>)</li> <li>IRC #opendev on OFTC (<a href="https://meetings.opendev.org/irclogs/%23opendev/">logs</a>)</li>
<li>Mailing list: service-discuss@lists.opendev.org (<a href="http://lists.opendev.org/cgi-bin/mailman/listinfo/service-discuss">subscribe</a>)</li> <li>Mailing list: service-discuss@lists.opendev.org (<a href="http://lists.opendev.org/cgi-bin/mailman/listinfo/service-discuss">subscribe</a>)</li>
<li>Important announcements: service-announce@lists.opendev.org (<a href="http://lists.opendev.org/cgi-bin/mailman/listinfo/service-announce">subscribe</a>)</li> <li>Important announcements: service-announce@lists.opendev.org (<a href="http://lists.opendev.org/cgi-bin/mailman/listinfo/service-announce">subscribe</a>)</li>
</ul> </ul>

View File

@ -98,7 +98,6 @@ cacti_hosts:
- backup02.ca-ymq-1.vexxhost.opendev.org - backup02.ca-ymq-1.vexxhost.opendev.org
- bridge.openstack.org - bridge.openstack.org
- cacti.openstack.org - cacti.openstack.org
- eavesdrop.openstack.org
- eavesdrop01.opendev.org - eavesdrop01.opendev.org
- elasticsearch02.openstack.org - elasticsearch02.openstack.org
- elasticsearch03.openstack.org - elasticsearch03.openstack.org

View File

@ -1,30 +0,0 @@
# Node-OS: xenial
node /^eavesdrop\d*\.open.*\.org$/ {
$group = "eavesdrop"
class { 'openstack_project::eavesdrop':
nickpass => hiera('openstack_meetbot_password'),
statusbot_nick => 'opendevstatus',
statusbot_password => hiera('statusbot_nick_password'),
statusbot_server => 'irc.oftc.net',
statusbot_channels => hiera_array('statusbot_channels', ['openstack_infra']),
statusbot_auth_nicks => hiera_array('statusbot_auth_nicks'),
statusbot_wiki_user => hiera('statusbot_wiki_username', 'username'),
statusbot_wiki_password => hiera('statusbot_wiki_password'),
statusbot_wiki_url => 'https://wiki.openstack.org/w/api.php',
# https://wiki.openstack.org/wiki/Infrastructure_Status
statusbot_wiki_pageid => '1781',
statusbot_wiki_successpageid => '7717',
statusbot_wiki_successpageurl => 'https://wiki.openstack.org/wiki/Successes',
statusbot_wiki_thankspageid => '37700',
statusbot_wiki_thankspageurl => 'https://wiki.openstack.org/wiki/Thanks',
statusbot_irclogs_url => 'http://eavesdrop.openstack.org/irclogs/%(chan)s/%(chan)s.%(date)s.log.html',
statusbot_twitter => true,
statusbot_twitter_key => hiera('statusbot_twitter_key'),
statusbot_twitter_secret => hiera('statusbot_twitter_secret'),
statusbot_twitter_token_key => hiera('statusbot_twitter_token_key'),
statusbot_twitter_token_secret => hiera('statusbot_twitter_token_secret'),
meetbot_channels => hiera('meetbot_channels', ['openstack-infra']),
ptgbot_nick => hiera('ptgbot_nick', 'username'),
ptgbot_password => hiera('ptgbot_password'),
}
}

View File

@ -1,121 +0,0 @@
# Eavesdrop server
class openstack_project::eavesdrop (
$nickpass = '',
$statusbot_nick = '',
$statusbot_password = '',
$statusbot_server = '',
$statusbot_channels = '',
$statusbot_auth_nicks = '',
$statusbot_wiki_user = '',
$statusbot_wiki_password = '',
$statusbot_wiki_url = '',
$statusbot_wiki_pageid = '',
$statusbot_wiki_successpageid = '',
$statusbot_wiki_successpageurl = '',
$statusbot_wiki_thankspageid = '',
$statusbot_wiki_thankspageurl = '',
$statusbot_irclogs_url = '',
$statusbot_twitter = undef,
$statusbot_twitter_key = '',
$statusbot_twitter_secret = '',
$statusbot_twitter_token_key = '',
$statusbot_twitter_token_secret = '',
$meetbot_channels = [],
$ptgbot_nick = '',
$ptgbot_password = '',
) {
include ::httpd
include meetbot
$vhost_extra = '
<Location /alert>
Header set Access-Control-Allow-Origin "*"
</Location>
'
meetbot::site { 'openstack':
nick => 'opendevmeet',
nickpass => $nickpass,
network => 'OFTC',
server => 'irc4.oftc.net:6697',
use_ssl => 'True',
vhost_extra => $vhost_extra,
vhost_name => 'eavesdrop.openstack.org',
manage_index => false,
channels => $meetbot_channels,
}
class { 'statusbot':
nick => $statusbot_nick,
password => $statusbot_password,
server => $statusbot_server,
channels => $statusbot_channels,
auth_nicks => $statusbot_auth_nicks,
wiki_user => $statusbot_wiki_user,
wiki_password => $statusbot_wiki_password,
wiki_url => $statusbot_wiki_url,
wiki_pageid => $statusbot_wiki_pageid,
wiki_successpageid => $statusbot_wiki_successpageid,
wiki_successpageurl => $statusbot_wiki_successpageurl,
wiki_thankspageid => $statusbot_wiki_thankspageid,
wiki_thankspageurl => $statusbot_wiki_thankspageurl,
irclogs_url => $statusbot_irclogs_url,
twitter => $statusbot_twitter,
twitter_key => $statusbot_twitter_key,
twitter_secret => $statusbot_twitter_secret,
twitter_token_key => $statusbot_twitter_token_key,
twitter_token_secret => $statusbot_twitter_token_secret,
}
file { '/srv/meetbot-openstack/alert':
ensure => link,
target => '/var/lib/statusbot/www',
require => Class['statusbot'],
}
if ! defined(Httpd::Mod['headers']) {
httpd::mod { 'headers':
ensure => present,
}
}
file { '/srv/yaml2ical':
ensure => directory,
owner => 'zuul',
group => 'zuul',
}
file { '/srv/yaml2ical/calendars':
ensure => directory,
owner => 'zuul',
group => 'zuul',
require => File['/srv/yaml2ical'],
}
file { '/srv/meetbot-openstack/index.html':
ensure => link,
target => '/srv/yaml2ical/index.html',
require => File['/srv/yaml2ical'],
}
file { '/srv/meetbot-openstack/irc-meetings.ical':
ensure => link,
target => '/srv/yaml2ical/irc-meetings.ical',
require => File['/srv/yaml2ical'],
}
file { '/srv/meetbot-openstack/calendars/':
ensure => link,
target => '/srv/yaml2ical/calendars/',
require => File['/srv/yaml2ical'],
}
class { 'ptgbot':
nick => $ptgbot_nick,
password => $ptgbot_password,
channel => '#openinfra-events',
vhost_name => 'ptg.openstack.org',
}
}

View File

@ -4,7 +4,7 @@
roles: roles:
- puppet-setup-ansible - puppet-setup-ansible
- hosts: 'puppet:!review:!afs:!afsdb:!puppetmaster*:!nb*:!codesearch:!eavesdrop:!disabled' - hosts: 'puppet:!review:!afs:!afsdb:!puppetmaster*:!nb*:!codesearch:!disabled'
name: "Puppet-else: run puppet on all other servers" name: "Puppet-else: run puppet on all other servers"
strategy: free strategy: free
roles: roles: