From ccda6d08a167ef53e797fedd648bc452988b0d30 Mon Sep 17 00:00:00 2001
From: Ian Wienand <iwienand@redhat.com>
Date: Mon, 7 Jun 2021 10:25:39 +1000
Subject: [PATCH] Move meetbot config to eavesdrop01.opendev.org

This enables the new eavesdrop01.opendev.org server in all current
channels.  Puppet has been disabled on the old server and we will
manually stop supybot/meetbot and mirgrate logs before this applies.

Change-Id: I4a422bb9589c8a8761191313a656f8377e93422f
---
 hiera/common.yaml                             | 91 -------------------
 inventory/service/group_vars/eavesdrop.yaml   | 91 +++++++++++++++++++
 playbooks/roles/limnoria/defaults/main.yaml   |  2 +-
 .../static/files/50-meetings.opendev.org.conf |  8 +-
 .../templates/group_vars/eavesdrop.yaml.j2    |  2 +
 tools/irc_checks.py                           |  6 +-
 6 files changed, 102 insertions(+), 98 deletions(-)

diff --git a/hiera/common.yaml b/hiera/common.yaml
index ab856e6f04..9375ac92c4 100644
--- a/hiera/common.yaml
+++ b/hiera/common.yaml
@@ -84,97 +84,6 @@ statusbot_channels:
 - tacker
 - tripleo
 - zuul
-# Note that OFTC only allows a single account to connect to 120
-# channels.
-meetbot_channels:
-- '#airshipit'
-- '#cloudkitty'
-- '#edge-computing-group'
-- '#heat'
-- '#kata-dev'
-- '#kata-general'
-- '#oooq'
-- '#opendev'
-- '#opendev-meeting'
-- '#openinfra'
-- '#openinfra-board'
-- '#openinfra-diversity'
-- '#openinfra-events'
-- '#openinfralabs'
-- '#openstack'
-- '#openstack-ansible'
-- '#openstack-ansible-sig'
-- '#openstack-barbican'
-- '#openstack-blazar'
-- '#openstack-chef'
-- '#openstack-cinder'
-- '#openstack-containers'
-- '#openstack-cyborg'
-- '#openstack-dev'
-- '#openstack-dib'
-- '#openstack-dns'
-- '#openstack-doc'
-- '#openstack-election'
-- '#openstack-fenix'
-- '#openstack-glance'
-- '#openstack-ha'
-- '#openstack-helm'
-- '#openstack-horizon'
-- '#openstack-i18n'
-- '#openstack-infra'
-- '#openstack-interop'
-- '#openstack-ironic'
-- '#openstack-jjb'
-- '#openstack-keystone'
-- '#openstack-kolla'
-- '#openstack-kuryr'
-- '#openstack-lbaas'
-- '#openstack-loci'
-- '#openstack-manila'
-- '#openstack-masakari'
-- '#openstack-meeting'
-- '#openstack-meeting-3'
-- '#openstack-meeting-alt'
-- '#openstack-mentoring'
-- '#openstack-mistral'
-- '#openstack-monasca'
-- '#openstack-multi-arch'
-- '#openstack-neutron'
-- '#openstack-nova'
-- '#openstack-operators'
-- '#openstack-oslo'
-- '#openstack-outreachy'
-- '#openstack-qa'
-- '#openstack-rally'
-- '#openstack-release'
-- '#openstack-requirements'
-- '#openstack-rpm-packaging'
-- '#openstack-sahara'
-- '#openstack-sdks'
-- '#openstack-security'
-- '#openstack-stable'
-- '#openstack-storlets'
-- '#openstack-swift'
-- '#openstack-tc'
-- '#openstack-telemetry'
-- '#openstack-third-party-ci'
-- '#openstack-trove'
-- '#openstack-upstream-institute'
-- '#openstack-vitrage'
-- '#openstack-watcher'
-- '#openstack-zaqar'
-- '#openstack-zun'
-- '#openvswitch'
-- '#puppet-openstack'
-- '#rdo'
-- '#refstack'
-- '#senlin'
-- '#softwarefactory'
-- '#starlingx'
-- '#storyboard'
-- '#tacker'
-- '#tripleo'
-- '#zuul'
 cacti_hosts:
 - adns1.opendev.org
 - afs01.dfw.openstack.org
diff --git a/inventory/service/group_vars/eavesdrop.yaml b/inventory/service/group_vars/eavesdrop.yaml
index 32466de1d6..b2bd3c3867 100644
--- a/inventory/service/group_vars/eavesdrop.yaml
+++ b/inventory/service/group_vars/eavesdrop.yaml
@@ -3,3 +3,94 @@ iptables_extra_public_tcp_ports:
 zuul_user_authorized_key: |
       ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDcXd/QJDEprSLh6N6bULnhchf9M+uzYBEJ2b51Au67FON+5M6VEj5Ut+DlkEPhabOP+tSv9Cn1HpmpBjdEOXdmBj6JS7G/gBb4w28oZDyNjrPT2ebpRw/XnVEkGfikR2J+j3o7CV+ybhLDalXm2TUDReVXnONUq3YzZbjRzoYs0xxrxyss47vZP0xFpsAt9jCMAJW2k6H589VUY38k9LFyhZUZ72FB6eJ68B9GN0TimBYm2DqvupBGQrRhkP8OZ0WoBV8PulKXaHVFdmfBNHB7E7FLlZKuiM6nkV4bOWMGOB/TF++wXBK86t9po3pWCM7+kr72xGRTE+6LuZ2z1K+h zuul-system-config-20180924
       ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDQbidZ1wW8moNtPGBhZ3oDm1kcDtiAemI51euL6KZslwpG8CKMT0KBSYw1vpCYc5dYCerq63dQtg2Bm1rhc2gC/U2bbMlvnNPwlkS7eykVfrPDfJHVbff+qHv7l1e1ZoCVAEvVxXG/FgFUiqIKwEhMqG/Etegw07H7vERNETGE5RyRA8cMnK9Cj4oL0OUpZAv7o1a+A+gXRv1EMdWL7g9M6OImikO48w+ZSLOA8uD+0MmN23nh335k2VG609u+ZxTkZAB4GtW0HSCTFu5MCmJFaY1+5cCNedsC9O4ekaXNQxYelFxasN5Qe7miRWcR+Ax8g3HjHpG3Hc1LSc/6XVcj zuul-project-config-20180924
+# Note that OFTC only allows a single account to connect to 120
+# channels.
+limnoria_oftc_channels:
+  - '#airshipit'
+  - '#cloudkitty'
+  - '#edge-computing-group'
+  - '#heat'
+  - '#kata-dev'
+  - '#kata-general'
+  - '#oooq'
+  - '#opendev'
+  - '#opendev-meeting'
+  - '#openinfra'
+  - '#openinfra-board'
+  - '#openinfra-diversity'
+  - '#openinfra-events'
+  - '#openinfralabs'
+  - '#openstack'
+  - '#openstack-ansible'
+  - '#openstack-ansible-sig'
+  - '#openstack-barbican'
+  - '#openstack-blazar'
+  - '#openstack-chef'
+  - '#openstack-cinder'
+  - '#openstack-containers'
+  - '#openstack-cyborg'
+  - '#openstack-dev'
+  - '#openstack-dib'
+  - '#openstack-dns'
+  - '#openstack-doc'
+  - '#openstack-election'
+  - '#openstack-fenix'
+  - '#openstack-glance'
+  - '#openstack-ha'
+  - '#openstack-helm'
+  - '#openstack-horizon'
+  - '#openstack-i18n'
+  - '#openstack-infra'
+  - '#openstack-interop'
+  - '#openstack-ironic'
+  - '#openstack-jjb'
+  - '#openstack-keystone'
+  - '#openstack-kolla'
+  - '#openstack-kuryr'
+  - '#openstack-lbaas'
+  - '#openstack-loci'
+  - '#openstack-manila'
+  - '#openstack-masakari'
+  - '#openstack-meeting'
+  - '#openstack-meeting-3'
+  - '#openstack-meeting-alt'
+  - '#openstack-mentoring'
+  - '#openstack-mistral'
+  - '#openstack-monasca'
+  - '#openstack-multi-arch'
+  - '#openstack-neutron'
+  - '#openstack-nova'
+  - '#openstack-operators'
+  - '#openstack-oslo'
+  - '#openstack-outreachy'
+  - '#openstack-qa'
+  - '#openstack-rally'
+  - '#openstack-release'
+  - '#openstack-requirements'
+  - '#openstack-rpm-packaging'
+  - '#openstack-sahara'
+  - '#openstack-sdks'
+  - '#openstack-security'
+  - '#openstack-stable'
+  - '#openstack-storlets'
+  - '#openstack-swift'
+  - '#openstack-tc'
+  - '#openstack-telemetry'
+  - '#openstack-third-party-ci'
+  - '#openstack-trove'
+  - '#openstack-upstream-institute'
+  - '#openstack-vitrage'
+  - '#openstack-watcher'
+  - '#openstack-zaqar'
+  - '#openstack-zun'
+  - '#openvswitch'
+  - '#puppet-openstack'
+  - '#rdo'
+  - '#refstack'
+  - '#senlin'
+  - '#softwarefactory'
+  - '#starlingx'
+  - '#storyboard'
+  - '#tacker'
+  - '#tripleo'
+  - '#zuul'
diff --git a/playbooks/roles/limnoria/defaults/main.yaml b/playbooks/roles/limnoria/defaults/main.yaml
index 2873c88abb..6ea748d1e6 100644
--- a/playbooks/roles/limnoria/defaults/main.yaml
+++ b/playbooks/roles/limnoria/defaults/main.yaml
@@ -11,7 +11,7 @@ limnoria_network_config:
   oftc:
     password: ''
     servers: irc4.oftc.net:6697
-    channels: '#opendev-sandbox'
+    channels: "{{ limnoria_oftc_channels | join(' ') }}"
     ssl: 'True'
 
 # AVAILABLE SUPYBOT CONFIG KEYS:
diff --git a/playbooks/roles/static/files/50-meetings.opendev.org.conf b/playbooks/roles/static/files/50-meetings.opendev.org.conf
index 9441d43409..ab671e3f14 100644
--- a/playbooks/roles/static/files/50-meetings.opendev.org.conf
+++ b/playbooks/roles/static/files/50-meetings.opendev.org.conf
@@ -25,11 +25,11 @@ Define AFS_ROOT /afs/openstack.org/project/meetings.opendev.org
   SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!AES256:!aNULL:!eNULL:!MD5:!DSS:!PSK:!SRP
   SSLHonorCipherOrder on
 
-  ProxyPass "/irclogs" "http://eavesdrop01.openstack.org/irclogs" ttl=120 keepalive=On retry=0
-  ProxyPassReverse "/irclogs" "http://eavesdrop01.openstack.org/irclogs"
+  ProxyPass "/irclogs" "https://eavesdrop01.opendev.org/irclogs" ttl=120 keepalive=On retry=0
+  ProxyPassReverse "/irclogs" "https://eavesdrop01.opendev.org/irclogs"
 
-  ProxyPass "/meetings" "http://eavesdrop01.openstack.org/meetings" ttl=120 keepalive=On retry=0
-  ProxyPassReverse "/meetings" "http://eavesdrop01.openstack.org/meetings"
+  ProxyPass "/meetings" "https://eavesdrop01.opendev.org/meetings" ttl=120 keepalive=On retry=0
+  ProxyPassReverse "/meetings" "https://eavesdrop01.opendev.org/meetings"
 
   <Directory ${AFS_ROOT}>
     Options Indexes FollowSymLinks MultiViews
diff --git a/playbooks/zuul/templates/group_vars/eavesdrop.yaml.j2 b/playbooks/zuul/templates/group_vars/eavesdrop.yaml.j2
index f36681b842..47a6bc7226 100644
--- a/playbooks/zuul/templates/group_vars/eavesdrop.yaml.j2
+++ b/playbooks/zuul/templates/group_vars/eavesdrop.yaml.j2
@@ -48,3 +48,5 @@ gerritbot_ssh_key: |
   -----END OPENSSH PRIVATE KEY-----
 gerritbot_ssh_pubkey: |
   ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwIJb83kJZ8upR87nUalNgWIXVrqg1VE6PWXrsl+2qXuKhw6ehL9sFSA1avIuC3zMZ4J2Mxkw6XN473MizxPsaEIz/W6GFrXUwNi7LZbFeZGs5aSA6yq91DxluvJBOg1FueuaRM9WlAtUyj6L2UP+31JQo8BnWaYykQxBwDc/DHzG0Z1klkevh49K69qXz0mfxpRcF5NVDaB+jqJ99CeoAcnBAOOCyQzjVN+5lpCc2kVv2MGknryxadX/VVY7o+NYkHRR86XAU64H3bSSmid+feiB7yaUfhoQdGp43y4JJV7AtT/hVVLGVXr2OltoWkbMJafi1ju15urj+y4Ii8mk/ gerritbot@test.eavesdrop.openstack.org
+limnoria_oftc_channels:
+  - '#opendev-sandbox'
diff --git a/tools/irc_checks.py b/tools/irc_checks.py
index 25c4b709a0..497e64a50d 100644
--- a/tools/irc_checks.py
+++ b/tools/irc_checks.py
@@ -22,8 +22,10 @@ def check_meetbot():
 
     errors = False
 
-    config = yaml.load(open('hiera/common.yaml', 'r'), Loader=yaml.SafeLoader)
-    meetbot_channels = config['meetbot_channels']
+    config = yaml.load(
+        open('inventory/service/group_vars/eavesdrop.yaml', 'r'),
+        Loader=yaml.SafeLoader)
+    meetbot_channels = config['limnoria_oftc_channels']
     # IRC has a limit of 120 channels that we unfortunately hit with
     # gerritbot. If we try connect to more, it will not connect to
     # all. Avoid this situation.