You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ansible/test/integration/targets/setup_mysql8/tasks/setup_mysql8.yml

60 lines
1.4 KiB
YAML

# Copyright: (c) 2019, Andrew Klychkov (@Andersson007) <aaklychkov@mail.ru>
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
- name: Install Repo
yum:
name: '{{ repo_link }}'
- name: Install MySQL community server
yum:
name: '{{ mysql_package_name }}'
- name: Copy my.cnf
copy:
src: my.cnf
dest: '{{ my_cnf }}'
- name: Start MySQL
service:
name: mysqld
state: started
### Debug #######################
#- name: Debug
# shell: cat /var/log/mysqld.log
#################################
- name: Check connection to the server
shell: 'echo "SHOW DATABASES;" | mysql'
- name: Check connection to the server
shell: "echo \"SHOW VARIABLES LIKE '%version%';\" | mysql"
- name: Detect socket path
shell: >
echo "show variables like 'socket'\G" | mysql | grep 'Value: ' | sed 's/[ ]\+Value: //'
register: _socket_path
- name: Set socket path
set_fact:
mysql_socket: '{{ _socket_path["stdout"] }}'
- name: Set root pass
set_fact:
root_pass: "dlsafjlkjdsaK1#"
- name: Set root password
shell: >
echo "flush privileges; ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '{{ root_pass }}';" | mysql
- name: Change configuration
lineinfile:
path: '{{ my_cnf }}'
line: skip-grant-tables
state: absent
- name: Restart MySQL
service:
name: mysqld
state: restarted