- name: install mysql, mariadb packages yum: name='{{ item }}' become: yes with_items: - mysql-devel - mariadb-server - MySQL-python - service: name='{{ redmine_db_service_provider }}' state=started become: yes - mysql_db: name='{{ redmine_db_name }}' state=present encoding=utf8 login_user='{{ mysql_admin_login }}' login_password='{{ mysql_admin_password }}' become: yes register: redmine_db_created # source database may not have same name as VM db. # So remove CREATE or USE statements from dump. # while unpacking. - name: unpack mysql dump file shell: "/usr/bin/gunzip -c {{ redmine_db_dump_file }} | /usr/bin/sed '/^CREATE DATABASE \\|^USE /d' > {{ _redmine_db_import_file }}" args: creates: '{{ _redmine_db_import_file }}' when: do_redmine_db_import == True - stat: path='{{ _redmine_db_import_success }}' register: redmine_db_import_done when: do_redmine_db_import == True - name: import database mysql_db: name='{{ redmine_db_name }}' state=import target='{{ _redmine_db_import_file }}' login_user='{{ mysql_admin_login }}' login_password='{{ mysql_admin_password }}' register: redmine_db_import when: do_redmine_db_import == True and (redmine_db_import_done.stat.exists == False or redmine_db_created|changed) - file: path='{{ _redmine_db_import_success }}' state=touch when: do_redmine_db_import == True and redmine_db_import_done.stat.exists == False and redmine_db_import|success - name: create redmine db user mysql_user: name='{{ redmine_db_user }}' password='{{ redmine_db_password }}' append_privs=yes priv='{{ redmine_db_name }}.*:ALL' state=present become: yes