You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							37 lines
						
					
					
						
							1.3 KiB
						
					
					
				
			
		
		
	
	
							37 lines
						
					
					
						
							1.3 KiB
						
					
					
				- name: fail if exporter host is missing
 | 
						|
  fail:
 | 
						|
    msg: mysql_target_host is not string
 | 
						|
  when: mysql_target_host is not string
 | 
						|
 | 
						|
 | 
						|
- block:
 | 
						|
    - include_tasks: init_mysql.yml
 | 
						|
 | 
						|
 | 
						|
    - name: create exporter user
 | 
						|
      mysql_user:
 | 
						|
        name: "{{ mysql_exporter_username }}"
 | 
						|
        password: "{{ mysql_exporter_password }}"
 | 
						|
        plugin: mysql_native_password
 | 
						|
        host: "{{ container_address | d(ansible_host) }}"
 | 
						|
        resource_limits:
 | 
						|
          MAX_USER_CONNECTIONS: 3
 | 
						|
        priv:
 | 
						|
          '*.*': 'SELECT,BINLOG MONITOR,PROCESS'
 | 
						|
          'performance_schema.*': SELECT
 | 
						|
 | 
						|
        login_host: "{{ hostvars[mysql_target_host]['container_address'] | d(hostvars[mysql_target_host]['ansible_host']) }}"
 | 
						|
        login_user: "{{ hostvars[mysql_target_host]['mysql_root_username'] | d('root') }}"
 | 
						|
        login_password: "{{ hostvars[mysql_target_host]['mysql_root_password'] | d(omit) }}"
 | 
						|
      register: result
 | 
						|
 | 
						|
 | 
						|
    - name: flush privileges
 | 
						|
      mysql_query:
 | 
						|
        query: FLUSH PRIVILEGES
 | 
						|
        login_host: "{{ hostvars[mysql_target_host]['container_address'] | d(hostvars[mysql_target_host]['ansible_host']) }}"
 | 
						|
        login_user: "{{ hostvars[mysql_target_host]['mysql_root_username'] | d('root') }}"
 | 
						|
        login_password: "{{ hostvars[mysql_target_host]['mysql_root_password'] | d(omit) }}"
 | 
						|
      when: result.changed
 | 
						|
 | 
						|
  delegate_to: localhost
 | 
						|
 |