diff options
author | Tim Rupp <caphrim007@gmail.com> | 2019-06-25 06:27:32 -0700 |
---|---|---|
committer | Martin Krizek <martin.krizek@gmail.com> | 2019-06-25 15:27:32 +0200 |
commit | 48af9bdfec638962fe2a6750a2949dd4c6fe267a (patch) | |
tree | a50f948850d07ee194ae8435f6a289cf5edc976e /test/integration/targets/mqtt | |
parent | ac101f7f339a236565a528d8e95e9d584b206d58 (diff) | |
download | ansible-48af9bdfec638962fe2a6750a2949dd4c6fe267a.tar.gz |
Adds tls_version argument to mqtt module (#58264)
Fixes: #22034
This patch adds support for a tls_version parameter that allows the
TLS version used to be configurable. By default the module will let
the underlying system libraries pick the maximum supported version.
This parameter is useful for servers that are unable to support
newer versions of TLS
Diffstat (limited to 'test/integration/targets/mqtt')
-rw-r--r-- | test/integration/targets/mqtt/aliases | 5 | ||||
-rw-r--r-- | test/integration/targets/mqtt/meta/main.yml | 2 | ||||
-rw-r--r-- | test/integration/targets/mqtt/tasks/main.yml | 4 | ||||
-rw-r--r-- | test/integration/targets/mqtt/tasks/ubuntu.yml | 142 |
4 files changed, 153 insertions, 0 deletions
diff --git a/test/integration/targets/mqtt/aliases b/test/integration/targets/mqtt/aliases new file mode 100644 index 0000000000..6d6f14e59d --- /dev/null +++ b/test/integration/targets/mqtt/aliases @@ -0,0 +1,5 @@ +notification/mqtt +shippable/posix/group1 +skip/osx +skip/freebsd +skip/rhel diff --git a/test/integration/targets/mqtt/meta/main.yml b/test/integration/targets/mqtt/meta/main.yml new file mode 100644 index 0000000000..86f3d04363 --- /dev/null +++ b/test/integration/targets/mqtt/meta/main.yml @@ -0,0 +1,2 @@ +dependencies: + - setup_mosquitto diff --git a/test/integration/targets/mqtt/tasks/main.yml b/test/integration/targets/mqtt/tasks/main.yml new file mode 100644 index 0000000000..37442abfec --- /dev/null +++ b/test/integration/targets/mqtt/tasks/main.yml @@ -0,0 +1,4 @@ +- include: ubuntu.yml + when: + - ansible_distribution == 'Ubuntu' + - ansible_distribution_release != 'trusty' diff --git a/test/integration/targets/mqtt/tasks/ubuntu.yml b/test/integration/targets/mqtt/tasks/ubuntu.yml new file mode 100644 index 0000000000..71ff3e90bc --- /dev/null +++ b/test/integration/targets/mqtt/tasks/ubuntu.yml @@ -0,0 +1,142 @@ +- name: Install pip packages + pip: + name: paho-mqtt>=1.4.0 + state: present + +- name: MQTT non-TLS endpoint + mqtt: + topic: /node/s/bar/blurb + payload: foo + qos: 1 + client_id: me001 + register: result + +- assert: + that: + - result is success + +- name: Send a test message to TLS1.1 endpoint, no client version specified + mqtt: + topic: /node/s/bar/blurb + payload: foo-tls + qos: 1 + client_id: me001 + ca_certs: /tls/ca_certificate.pem + certfile: /tls/client_certificate.pem + keyfile: /tls/client_key.pem + port: 8883 + register: result + +- assert: + that: + - result is success + +- name: Send a test message to TLS1.2 endpoint, no client version specified + mqtt: + topic: /node/s/bar/blurb + payload: foo-tls + qos: 1 + client_id: me001 + ca_certs: /tls/ca_certificate.pem + certfile: /tls/client_certificate.pem + keyfile: /tls/client_key.pem + port: 8884 + register: result + +- assert: + that: + - result is success + +# TODO(Uncomment when TLS1.3 is supported in moquitto and ubuntu version) +# +# - name: Send a test message to TLS1.3 endpoint +# mqtt: +# topic: /node/s/bar/blurb +# payload: foo-tls +# qos: 1 +# client_id: me001 +# ca_certs: /tls/ca_certificate.pem +# certfile: /tls/client_certificate.pem +# keyfile: /tls/client_key.pem +# port: 8885 +# register: result + +#- assert: +# that: +# - result is success + +- name: Send a message, client TLS1.1, server (required) TLS1.2 - Expected failure + mqtt: + topic: /node/s/bar/blurb + payload: foo-tls + qos: 1 + client_id: me001 + ca_certs: /tls/ca_certificate.pem + certfile: /tls/client_certificate.pem + keyfile: /tls/client_key.pem + tls_version: tlsv1.1 + port: 8884 + register: result + failed_when: result is success + +- assert: + that: + - result is success + +# TODO(Uncomment when TLS1.3 is supported in moquitto and ubuntu version) +# +# - name: Send a message, client TLS1.1, server (required) TLS1.3 - Expected failure +# mqtt: +# topic: /node/s/bar/blurb +# payload: foo-tls +# qos: 1 +# client_id: me001 +# ca_certs: /tls/ca_certificate.pem +# certfile: /tls/client_certificate.pem +# keyfile: /tls/client_key.pem +# tls_version: tlsv1.1 +# port: 8885 +# register: result +# failed_when: result is success + +# - assert: +# that: +# - result is success + +- name: Send a message, client TLS1.2, server (required) TLS1.1 - Expected failure + mqtt: + topic: /node/s/bar/blurb + payload: foo-tls + qos: 1 + client_id: me001 + ca_certs: /tls/ca_certificate.pem + certfile: /tls/client_certificate.pem + keyfile: /tls/client_key.pem + tls_version: tlsv1.2 + port: 8883 + register: result + failed_when: result is success + +- assert: + that: + - result is success + +# TODO(Uncomment when TLS1.3 is supported in moquitto and ubuntu version) +# +# - name: Send a message, client TLS1.2, server (required) TLS1.3 - Expected failure +# mqtt: +# topic: /node/s/bar/blurb +# payload: foo-tls +# qos: 1 +# client_id: me001 +# ca_certs: /tls/ca_certificate.pem +# certfile: /tls/client_certificate.pem +# keyfile: /tls/client_key.pem +# tls_version: tlsv1.2 +# port: 8885 +# register: result +# failed_when: result is success + +# - assert: +# that: +# - result is success |