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.
82 lines
1.7 KiB
82 lines
1.7 KiB
2 years ago
|
- name: set smb_cfg
|
||
|
set_fact:
|
||
|
smb_cfg: "{{ smb_default_config | d({}) | combine(smb_config | d({}), recursive=true) }}"
|
||
|
|
||
|
|
||
|
- name: install samba
|
||
|
include_tasks: tasks/install_packages.yml
|
||
|
vars:
|
||
|
package:
|
||
|
- samba-server
|
||
|
- alpine: samba-server-openrc
|
||
|
|
||
|
|
||
|
- name: ensure nmbd is disabled in conf file
|
||
|
lineinfile:
|
||
|
path: /etc/conf.d/samba
|
||
|
regexp: '^daemon_list='
|
||
|
line: 'daemon_list="smbd"'
|
||
|
notify: restart samba
|
||
|
|
||
|
|
||
|
- name: ensure syslog logging is enabled in conf file
|
||
|
lineinfile:
|
||
|
path: /etc/conf.d/samba
|
||
|
regexp: '^smbd_options='
|
||
|
line: 'smbd_options="-D --option=logging=syslog"'
|
||
|
notify: restart samba
|
||
|
|
||
|
|
||
|
- name: create user and group
|
||
|
include_tasks: tasks/create_user.yml
|
||
|
vars:
|
||
|
user:
|
||
|
name: "{{ smb_guest_user }}"
|
||
|
group: "{{ smb_guest_group }}"
|
||
|
dir: "{{ smb_storage_dir }}"
|
||
|
create_home: no
|
||
|
|
||
|
|
||
|
- name: ensure storage dir has adequate permissions
|
||
|
file:
|
||
|
path: "{{ smb_storage_dir }}"
|
||
|
mode: "2750"
|
||
|
owner: "{{ smb_guest_user }}"
|
||
|
group: "{{ smb_guest_group }}"
|
||
|
notify: restart samba
|
||
|
|
||
|
|
||
|
- name: ensure share directories exist
|
||
|
file:
|
||
|
path: "{{ smb_storage_dir }}/{{ item.name }}"
|
||
|
state: directory
|
||
|
mode: "2750"
|
||
|
owner: "{{ smb_guest_user }}"
|
||
|
group: "{{ smb_guest_group }}"
|
||
|
loop: "{{ smb_shares }}"
|
||
|
notify: restart samba
|
||
|
|
||
|
|
||
|
- name: template config file
|
||
|
template:
|
||
|
src: smb.j2
|
||
|
dest: /etc/samba/smb.conf
|
||
|
force: yes
|
||
|
mode: 0640
|
||
|
notify: restart samba
|
||
|
|
||
|
|
||
|
- name: flush handlers
|
||
|
meta: flush_handlers
|
||
|
|
||
|
|
||
|
- name: generate scripts
|
||
|
include_tasks: script_generate.yml
|
||
|
|
||
|
|
||
|
- name: start samba and set it to start on boot
|
||
|
service:
|
||
|
name: samba
|
||
|
enabled: yes
|
||
|
state: started
|