Files
@ 74b1cab547fc
Branch filter:
Location: majic-ansible-roles/roles/database/tests/test_default.py - annotation
74b1cab547fc
1.4 KiB
text/x-python
MAR-122: Fixed handling of complex package versions for pip with Ansible 2.x:
- Use list for installing specific version of pip in the "pipreqcheck" virtual
environment in common role.
- Removed superficious (and incorrect) definition for application admin username
in wsgi_website role.
- Updated test playbook for wsgi_website role to test the fix.
- Switched to passing-in package list for installing packages in virtual
environment instead of using "with_items" in wsgi_website role.
- Use list for installing specific version of pip in the "pipreqcheck" virtual
environment in common role.
- Removed superficious (and incorrect) definition for application admin username
in wsgi_website role.
- Updated test playbook for wsgi_website role to test the fix.
- Switched to passing-in package list for installing packages in virtual
environment instead of using "with_items" in wsgi_website role.
c6e7675e63f9 c6e7675e63f9 c6e7675e63f9 c6e7675e63f9 c6e7675e63f9 c6e7675e63f9 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b c6e7675e63f9 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b 862402d2c45b | import testinfra.utils.ansible_runner
testinfra_hosts = testinfra.utils.ansible_runner.AnsibleRunner(
'.molecule/ansible_inventory').get_hosts('all')
def test_database_created(Command, Sudo):
"""
Tests if database has been created.
"""
with Sudo():
show_databases = Command("mysql -BNe \"show databases like 'testdb'\"")
assert show_databases.rc == 0
assert show_databases.stdout == "testdb"
def test_database_user_login(Command):
"""
Tests database user login.
"""
login = Command("mysql -utestdb -ptestdbpassword -BNe 'show databases'")
assert login.rc == 0
def test_database_user_permissions(Command, Sudo):
"""
Tests if database user has been granted correct permissions on the database.
"""
visible_databases = Command("mysql -utestdb -ptestdbpassword -BNe 'show databases'")
assert visible_databases.rc == 0
assert visible_databases.stdout == "information_schema\ntestdb"
with Sudo():
permissions = Command("mysql -BNe 'show grants for testdb@localhost'")
assert len(permissions.stdout.split("\n")) == 2
assert "GRANT USAGE ON *.* TO 'testdb'@'localhost' IDENTIFIED BY PASSWORD '*676852B7FAE972722AD20D6E74781D6B1A100544'" in permissions.stdout.split("\n")
assert "GRANT ALL PRIVILEGES ON `testdb`.* TO 'testdb'@'localhost'" in permissions.stdout.split("\n")
|