import os
import pytest
import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
os.environ['MOLECULE_INVENTORY_FILE']).get_hosts('all')
def test_seraph_file(host):
f = host.file('/opt/atlassian/confluence/current/confluence/WEB-INF/classes/seraph-config.xml')
assert f.exists
assert f.contains('COOKIEAGE')
def test_conf_init_file(host):
f = host.file('/opt/atlassian/confluence/current/confluence/WEB-INF/classes/confluence-init.properties')
assert f.exists
assert f.contains('confluence.home = /var/atlassian/application-data/confluence')
def test_conf_attachment_symlinks(host):
assert host.file('/var/atlassian/application-data/confluence').is_directory
assert host.file('/media/atl/confluence/shared-home/attachments/').is_directory
f = host.file('/var/atlassian/application-data/confluence/attachments')
assert f.is_symlink and f.linked_to == '/media/atl/confluence/shared-home/attachments'
f = host.file('/var/atlassian/application-data/confluence/shared-home')
assert f.is_symlink and f.linked_to == '/media/atl/confluence/shared-home'
def test_setenv_file(host):
f = host.file('/opt/atlassian/confluence/current/bin/setenv.sh')
assert f.exists
assert f.contains('-XmsPLACEHOLDER')
assert f.contains('-XmxPLACEHOLDER')
assert f.contains('-Dconfluence.cluster.node.name=1.1.1.1')
def test_server_file(host):
f = host.file('/opt/atlassian/confluence/current/conf/server.xml')
assert f.exists
assert f.contains('Connector port="8080"')
assert f.contains('Server port="8005"')
assert f.contains('/media/atl/confluence/shared-home')
assert f.contains('org.postgresql.Driver')
assert f.contains('ec2.amazonaws.com')
assert f.contains('jdbc:postgresql://postgres-db.ap-southeast-2.rds.amazonaws.com:5432/confluence')
assert f.contains('molecule_password')
assert (f.contains('select 1;') or f.contains('true'))
assert f.contains('/foo')
assert f.contains('my-cluster-tag')
@pytest.mark.parametrize('font', [
# '/usr/lib/jvm/java/lib/fonts/fallback/NotoSansJavanese-Regular.ttf'
'/opt/atlassian/confluence/current/jre/lib/fonts/fallback/NotoSansJavanese-Regular.ttf'
])
def test_fonts_installed_and_linked(host, font):
f = host.file(font)
assert f.exists