Adding Integration Tests for mysql_db module

Adding the following Test Coverage for RedHat and Debian OS:

 - Use mysql_db module to create, delete databases using different encoding.
 - Backup/Restore databases using different file format: sql, gz and bz2.
 - Create and delete databases using different user privilege.
 - Assert database creation, deleting and content using system commands.
This commit is contained in:
Wayne Rosario 2014-07-10 10:05:52 -04:00
commit 24a3d55c78
10 changed files with 330 additions and 1 deletions

View file

@ -0,0 +1,6 @@
mysql_service: mysqld
mysql_packages:
- mysql-server
- MySQL-python
- bzip2

View file

@ -0,0 +1,33 @@
# setup code for the mysql_db module
# (c) 2014, Wayne Rosario <wrosario@ansible.com>
# This file is part of Ansible
#
# Ansible is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# Ansible is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
# ============================================================
- include_vars: '{{ ansible_os_family }}.yml'
- name: install mysqldb_test rpm dependencies
yum: name={{ item }} state=latest
with_items: mysql_packages
when: ansible_pkg_mgr == 'yum'
- name: install mysqldb_test debian dependencies
apt: name={{ item }} state=latest
with_items: mysql_packages
when: ansible_pkg_mgr == 'apt'
- name: start mysql_db service if not running
service: name={{ mysql_service }} state=started

View file

@ -0,0 +1,6 @@
mysql_service: 'mysql'
mysql_packages:
- mysql-server
- python-mysqldb
- bzip2

View file

@ -0,0 +1,6 @@
mysql_service: 'mysqld'
mysql_packages:
- mysql-server
- MySQL-python
- bzip2