From 699b5ed5237f51b31ac342e3336cdb4dac695a4d Mon Sep 17 00:00:00 2001 From: vincent Date: Sun, 16 Apr 2023 12:03:09 +0200 Subject: [PATCH] implement role --- defaults/main.yml | 11 +++++++++++ handlers/main.yml | 8 ++++++++ tasks/main.yml | 33 +++++++++++++++++++++++++++++++++ tests/test.yml | 3 +-- vars/main.yml | 2 ++ 5 files changed, 55 insertions(+), 2 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 27a446e..d7ed163 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -1,2 +1,13 @@ --- # defaults file for ansible-role-vsftpd +vsftpd_service_state: "started" +vsftpd_service_enabled: true + + +vsftpd_enable_ssl: false +vsftpd_cert_file: ssl-cert.pem +vsftpd_key_file: ssl-cert.key +# config variables +vsftpd_config: {} + +vsftpd_sssd: true diff --git a/handlers/main.yml b/handlers/main.yml index c95751a..e108c3c 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -1,2 +1,10 @@ --- # handlers file for ansible-role-vsftpd +- name: restart vsftpd + ansible.builtin.service: + name: vsftpd + state: restarted + when: vsftpd_service_state != 'stopped' + become: true + # Ignore errors due to: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=754762;msg=9 + ignore_errors: yes diff --git a/tasks/main.yml b/tasks/main.yml index 23b2985..1e1e784 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,2 +1,35 @@ --- # tasks file for ansible-role-vsftpd + +- name: Installing packages + ansible.builtin.package: + name: "{{ vsftpd_package }}" + state: present + become: true + +- name: Configuring vsftp + ansible.builtin.template: + src: "vsftpd.j2" + dest: "{{ vsftpd_config_template_path }}" + owner: root + group: root + mode: "0644" + become: true + notify: restart vsftpd + +- name: Configuring service + ansible.builtin.service: + name: vsftpd + state: "{{ vsftpd_service_state }}" + enabled: "{{ vsftpd_service_enabled }}" + become: true + +- name: Configure pam for sssd + ansible.builtin.template: + src: "pam.d/vsftpd.j2" + dest: "/etc/pam.d/vsftpd" + owner: root + group: root + mode: "0644" + become: true + when: vsftpd_sssd == true diff --git a/tests/test.yml b/tests/test.yml index d8f8b18..ee7aa6f 100644 --- a/tests/test.yml +++ b/tests/test.yml @@ -1,5 +1,4 @@ --- -- hosts: localhost - remote_user: root +- hosts: all roles: - ansible-role-vsftpd diff --git a/vars/main.yml b/vars/main.yml index cfd4da6..4bdf5a1 100644 --- a/vars/main.yml +++ b/vars/main.yml @@ -1,2 +1,4 @@ --- # vars file for ansible-role-vsftpd +vsftpd_package: vsftpd +vsftpd_config_template_path: "/etc/vsftpd.conf"