b84bdffc08
While the staff mailing list is hidden and private in production, that configuration is set after creation, so in our deployment tests we can absolutely verify that HTTP and HTTPS redirects for listinfo and archives work anyway. This paves the way for any further rewrites and associated testing we may need to do for other mailing lists which move between domains, as well as testing redirects we may set up as part of the v2 to v3 migration. Change-Id: I68078554a72e3b59d8192ac4339e8654a8351f52
127 lines
6.3 KiB
Python
127 lines
6.3 KiB
Python
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
testinfra_hosts = ['lists.openstack.org']
|
|
|
|
def test_mm_list_is_present(host):
|
|
cmd = host.run('HOST=lists.airshipit.org list_lists --bare')
|
|
assert 'airship-discuss' in cmd.stdout
|
|
|
|
cmd = host.run('HOST=lists.opendev.org list_lists --bare')
|
|
assert 'service-discuss' in cmd.stdout
|
|
|
|
cmd = host.run('HOST=lists.openinfra.dev list_lists --bare')
|
|
assert 'staff' in cmd.stdout
|
|
|
|
cmd = host.run('HOST=lists.openstack.org list_lists --bare')
|
|
assert 'openstack-discuss' in cmd.stdout
|
|
|
|
cmd = host.run('HOST=lists.starlingx.io list_lists --bare')
|
|
assert 'starlingx-discuss' in cmd.stdout
|
|
|
|
cmd = host.run('HOST=lists.zuul-ci.org list_lists --bare')
|
|
assert 'zuul-discuss' in cmd.stdout
|
|
|
|
def test_mm_list_site(host):
|
|
cmd = host.run('curl '
|
|
'--resolve lists.airshipit.org:80:127.0.0.1 '
|
|
'http://lists.airshipit.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.airshipit.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.airshipit.org:443:127.0.0.1 '
|
|
'https://lists.airshipit.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.airshipit.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl '
|
|
'--resolve lists.opendev.org:80:127.0.0.1 '
|
|
'http://lists.opendev.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.opendev.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.opendev.org:443:127.0.0.1 '
|
|
'https://lists.opendev.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.opendev.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl '
|
|
'--resolve lists.openinfra.dev:80:127.0.0.1 '
|
|
'http://lists.openinfra.dev/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.openinfra.dev Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.openinfra.dev:443:127.0.0.1 '
|
|
'https://lists.openinfra.dev/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.openinfra.dev Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl '
|
|
'--resolve lists.openstack.org:80:127.0.0.1 '
|
|
'http://lists.openstack.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.openstack.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.openstack.org:443:127.0.0.1 '
|
|
'https://lists.openstack.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.openstack.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl '
|
|
'--resolve lists.starlingx.io:80:127.0.0.1 '
|
|
'http://lists.starlingx.io/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.starlingx.io Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.starlingx.io:443:127.0.0.1 '
|
|
'https://lists.starlingx.io/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.starlingx.io Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl '
|
|
'--resolve lists.zuul-ci.org:80:127.0.0.1 '
|
|
'http://lists.zuul-ci.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.zuul-ci.org Mailing Lists</TITLE>' in cmd.stdout
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.zuul-ci.org:443:127.0.0.1 '
|
|
'https://lists.zuul-ci.org/cgi-bin/mailman/listinfo')
|
|
assert '<TITLE>lists.zuul-ci.org Mailing Lists</TITLE>' in cmd.stdout
|
|
|
|
def test_mm_list_site_redirect_listinfo_http(host):
|
|
cmd = host.run('curl '
|
|
'--resolve lists.openstack.org:80:127.0.0.1 '
|
|
'http://lists.openstack.org/cgi-bin/mailman/listinfo/staff')
|
|
assert ('The document has moved <a href="'
|
|
'http://lists.openinfra.dev/cgi-bin/mailman/listinfo/staff'
|
|
'">here</a>') in cmd.stdout
|
|
cmd = host.run('curl --location '
|
|
'--resolve lists.openinfra.dev:80:127.0.0.1 '
|
|
'--resolve lists.openstack.org:80:127.0.0.1 '
|
|
'http://lists.openstack.org/cgi-bin/mailman/listinfo/staff')
|
|
assert '<TITLE>Staff Info Page</TITLE>' in cmd.stdout
|
|
|
|
def test_mm_list_site_redirect_archives_http(host):
|
|
cmd = host.run('curl '
|
|
'--resolve lists.openstack.org:80:127.0.0.1 '
|
|
'http://lists.openstack.org/pipermail/staff/')
|
|
assert ('The document has moved <a href="'
|
|
'http://lists.openinfra.dev/pipermail/staff/'
|
|
'">here</a>') in cmd.stdout
|
|
cmd = host.run('curl --location '
|
|
'--resolve lists.openinfra.dev:80:127.0.0.1 '
|
|
'--resolve lists.openstack.org:80:127.0.0.1 '
|
|
'http://lists.openstack.org/pipermail/staff/')
|
|
assert '<h1>The Staff Archives </h1>' in cmd.stdout
|
|
|
|
def test_mm_list_site_redirect_archives_https(host):
|
|
cmd = host.run('curl --insecure '
|
|
'--resolve lists.openstack.org:443:127.0.0.1 '
|
|
'https://lists.openstack.org/pipermail/staff/')
|
|
assert ('The document has moved <a href="'
|
|
'https://lists.openinfra.dev/pipermail/staff/'
|
|
'">here</a>') in cmd.stdout
|
|
cmd = host.run('curl --insecure --location '
|
|
'--resolve lists.openinfra.dev:443:127.0.0.1 '
|
|
'--resolve lists.openstack.org:443:127.0.0.1 '
|
|
'https://lists.openstack.org/pipermail/staff/')
|
|
assert '<h1>The Staff Archives </h1>' in cmd.stdout
|
|
|
|
def test_domain_aliases(host):
|
|
domain_aliases = host.file('/etc/aliases.domain')
|
|
assert domain_aliases.exists
|
|
assert domain_aliases.contains('staff@lists.openstack.org: staff@lists.openinfra.dev')
|