diff --git a/README.md b/README.md index 15b2cca..188276c 100644 --- a/README.md +++ b/README.md @@ -277,6 +277,12 @@ see `defaults/main.yml` for these options: These are all false unless you override them from playbook / group_var / cli, these all utilize the same mechanism as maven. +the variable ```nexus_mail_host``` is used to configure the mail server. If empty, the mail server is left disabled. +Others variables are : +``` nexus_mail_port, nexus_mail_from, nexus_mail_subject_prefix, nexus_mail_username, nexus_mail_password, nexus_mail_start_tls_enabled, nexus_mail_start_tls_required, nexus_mail_ssl_on_connect_enabled, nexus_mail_ssl_check_server_identity_enabled, nexus_mail_trust_store_enabled ``` + + + ## Dependencies This role requires Ansible 2.1 or higher. diff --git a/defaults/main.yml b/defaults/main.yml index 861a60e..036b884 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -350,3 +350,16 @@ _nexus_repos_gitlfs_defaults: nexus_repos_gitlfs_hosted: - name: gitlfs-internal blob_store: "{{ nexus_blob_names.gitlfs.blob }}" + +nexus_mail_host: "localhost" +nexus_mail_port: 25 +nexus_mail_from: "nexus-no-reply@localhost" +nexus_mail_subject_prefix: "[NEXUS]" +nexus_mail_username: "" +nexus_mail_password: "" +nexus_mail_start_tls_enabled: false +nexus_mail_start_tls_required: false +nexus_mail_ssl_on_connect_enabled: false +nexus_mail_ssl_check_server_identity_enabled: false +nexus_mail_trust_store_enabled: false + diff --git a/tasks/main.yml b/tasks/main.yml index 2943b6e..59f278d 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -180,3 +180,15 @@ - include: create_task_each.yml with_items: "{{ nexus_scheduled_tasks }}" + +- name: Configure mail server + include: setup_mail.yml + when: nexus_mail_host is defined + +- include: call_script.yml + vars: + script_name: add_ldapuser_role + args: + ldap_id: "{{ nexus_ldap_id }}" + role: "{{ nexus_role }}" + usernames: "{{ nexus_ldapadmin_username }}" diff --git a/tasks/setup_mail.yml b/tasks/setup_mail.yml new file mode 100644 index 0000000..e3112ec --- /dev/null +++ b/tasks/setup_mail.yml @@ -0,0 +1,13 @@ +--- +- name: Running setup_mail.yml + uri: + url: "http://localhost:{{ nexus_default_port }}{{ nexus_default_context_path }}service/extdirect" + user: 'admin' + password: "{{ current_nexus_admin_password }}" + body_format: json + headers: + Content-Type: "application/json" + method: POST + status_code: 200,204 + force_basic_auth: yes + body: {"action":"coreui_Email","method":"update","data":[{"enabled":true,"host":"{{ nexus_mail_host }}","port": "{{ nexus_mail_port }}","username":"{{ nexus_mail_username }}","password":"{{ nexus_mail_password }}","fromAddress":"{{ nexus_mail_from }}","subjectPrefix":"{{ nexus_mail_subject_prefix}}" ,"startTlsEnabled":"{{ nexus_mail_start_tls_enabled }}","startTlsRequired":"{{ nexus_mail_start_tls_required }}","sslOnConnectEnabled":"{{ nexus_mail_ssl_on_connect_enabled }}","sslCheckServerIdentityEnabled":"{{ nexus_mail_ssl_check_server_identity_enabled }}","nexusTrustStoreEnabled":"{{ nexus_mail_trust_store_enabled }}"}],"type":"rpc","tid":12}