lint for ansible devel

This commit is contained in:
Laurent Indermuehle 2024-06-06 23:27:37 +02:00
commit 0bcbaf8dc6
No known key found for this signature in database
GPG key ID: 93FA944C9F34DD09
2 changed files with 33 additions and 30 deletions

View file

@ -1,9 +1,12 @@
--- ---
- name: set fact tls_enabled - name: set fact tls_enabled
command: "{{ mysql_command }} \"-e SHOW VARIABLES LIKE 'have_ssl';\"" ansible.builtin.command:
cmd: "{{ mysql_command }} \"-e SHOW VARIABLES LIKE 'have_ssl';\""
register: result register: result
- set_fact:
tls_enabled: "{{ 'YES' in result.stdout | bool | default('false', true) }}" - name: Set tls_enabled fact
ansible.builtin.set_fact:
tls_enabled: "{{ 'YES' in result.stdout }}"
- vars: - vars:
mysql_parameters: &mysql_params mysql_parameters: &mysql_params
@ -16,21 +19,21 @@
# ============================================================ # ============================================================
- name: get server certificate - name: get server certificate
copy: ansible.builtin.copy:
content: "{{ lookup('pipe', \"openssl s_client -starttls mysql -connect localhost:3307 -showcerts 2>/dev/null </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'\") }}" content: "{{ lookup('pipe', \"openssl s_client -starttls mysql -connect localhost:3307 -showcerts 2>/dev/null </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p'\") }}"
dest: /tmp/cert.pem dest: /tmp/cert.pem
delegate_to: localhost delegate_to: localhost
- name: Drop mysql user if exists - name: Drop mysql user if exists
mysql_user: community.mysql.mysql_user:
<<: *mysql_params <<: *mysql_params
name: '{{ user_name_1 }}' name: '{{ user_name_1 }}'
host_all: true host_all: true
state: absent state: absent
ignore_errors: yes ignore_errors: true
- name: create user with ssl requirement - name: create user with ssl requirement
mysql_user: community.mysql.mysql_user:
<<: *mysql_params <<: *mysql_params
name: "{{ user_name_1 }}" name: "{{ user_name_1 }}"
host: '%' host: '%'
@ -40,7 +43,7 @@
SSL: SSL:
- name: attempt connection with newly created user (expect failure) - name: attempt connection with newly created user (expect failure)
mysql_variables: community.mysql.mysql_variables:
variable: '{{ set_name }}' variable: '{{ set_name }}'
login_user: '{{ user_name_1 }}' login_user: '{{ user_name_1 }}'
login_password: '{{ user_password_1 }}' login_password: '{{ user_password_1 }}'
@ -48,22 +51,24 @@
login_port: '{{ mysql_primary_port }}' login_port: '{{ mysql_primary_port }}'
ca_cert: /tmp/cert.pem ca_cert: /tmp/cert.pem
register: result register: result
ignore_errors: yes ignore_errors: true
- assert: - name: Assert that result is failed for pymysql
ansible.builtin.assert:
that: that:
- result is failed - result is failed
when: when:
- connector_name == 'pymysql' - connector_name == 'pymysql'
- assert: - name: Assert that result is success for mysqlclient
ansible.builtin.assert:
that: that:
- result is succeeded - result is succeeded
when: when:
- connector_name != 'pymysql' - connector_name != 'pymysql'
- name: attempt connection with newly created user ignoring hostname - name: attempt connection with newly created user ignoring hostname
mysql_variables: community.mysql.mysql_variables:
variable: '{{ set_name }}' variable: '{{ set_name }}'
login_user: '{{ user_name_1 }}' login_user: '{{ user_name_1 }}'
login_password: '{{ user_password_1 }}' login_password: '{{ user_password_1 }}'
@ -72,14 +77,12 @@
ca_cert: /tmp/cert.pem ca_cert: /tmp/cert.pem
check_hostname: no check_hostname: no
register: result register: result
ignore_errors: yes ignore_errors: true
failed_when:
- assert: - result is failed or 'pymysql >= 0.7.11 is required' not in result.msg
that:
- result is succeeded or 'pymysql >= 0.7.11 is required' in result.msg
- name: Drop mysql user - name: Drop mysql user
mysql_user: community.mysql.mysql_user:
<<: *mysql_params <<: *mysql_params
name: '{{ user_name_1 }}' name: '{{ user_name_1 }}'
host_all: true host_all: true