jumpserver/apps/accounts/automations/change_secret/database/mysql/main.yml

41 lines
1.3 KiB
YAML
Raw Normal View History

2022-10-10 12:56:13 +00:00
- hosts: mysql
gather_facts: no
vars:
ansible_python_interpreter: /usr/local/bin/python
db_name: "{{ jms_asset.spec_info.db_name }}"
2022-10-10 12:56:13 +00:00
2022-10-09 12:54:11 +00:00
tasks:
2022-10-10 12:56:13 +00:00
- name: Test MySQL connection
community.mysql.mysql_info:
login_user: "{{ jms_account.username }}"
login_password: "{{ jms_account.secret }}"
login_host: "{{ jms_asset.address }}"
login_port: "{{ jms_asset.port }}"
filter: version
register: db_info
2022-10-09 12:54:11 +00:00
2022-10-10 12:56:13 +00:00
- name: MySQL version
debug:
var: db_info.version.full
2022-10-09 12:54:11 +00:00
2022-10-10 12:56:13 +00:00
- name: Change MySQL password
community.mysql.mysql_user:
login_user: "{{ jms_account.username }}"
login_password: "{{ jms_account.secret }}"
login_host: "{{ jms_asset.address }}"
login_port: "{{ jms_asset.port }}"
2022-10-09 12:54:11 +00:00
name: "{{ account.username }}"
2022-10-10 12:56:13 +00:00
password: "{{ account.secret }}"
host: "%"
priv: "{{ account.username + '.*:USAGE' if db_name == '' else db_name + '.*:ALL' }}"
ignore_errors: true
2022-10-10 12:56:13 +00:00
when: db_info is succeeded
2022-10-09 12:54:11 +00:00
- name: Verify password
2022-10-10 12:56:13 +00:00
community.mysql.mysql_info:
login_user: "{{ account.username }}"
login_password: "{{ account.secret }}"
login_host: "{{ jms_asset.address }}"
login_port: "{{ jms_asset.port }}"
filter: version