1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-02-13 11:42:08 +00:00
iiab/roles/samba/tasks/main.yml

85 lines
2.2 KiB
YAML
Executable file

- name: "Create smb user: {{ smbuser }}"
user:
name: "{{ smbuser }}"
shell: /sbin/nologin
password: "{{ smbpassword }}"
- name: "Create public folder: {{ shared_dir }}"
file:
path: "{{ shared_dir }}"
owner: "{{ smbuser }}"
group: "{{ smbuser }}"
mode: '0777'
state: directory
# Install and configure samba server (requires ports 137, 138, 139, 445 open).
- name: "Install 4 packages: samba, samba-client, samba-common, cifs-client"
package:
name:
- samba
- samba-client
- samba-common
- cifs-utils
state: present
- name: Install /etc/samba/smb.conf from template
template:
src: smb.conf.j2
dest: /etc/samba/smb.conf
# RECORD Samba AS INSTALLED
- name: "Set 'samba_installed: True'"
set_fact:
samba_installed: True
- name: "Add 'samba_installed: True' to {{ iiab_state_file }}"
lineinfile:
dest: "{{ iiab_state_file }}" # /etc/iiab/iiab_state.yml
regexp: '^samba_installed'
line: 'samba_installed: True'
- name: Enable & Start Samba systemd service ({{ smb_service }}) if samba_enabled
service:
name: "{{ smb_service }}"
state: started
enabled: yes
when: samba_enabled | bool
- name: Enable & Start NetBIOS name service ({{ nmb_service }}) if samba_enabled
service:
name: "{{ nmb_service }}"
state: started
enabled: yes
when: samba_enabled | bool
- name: Disable & Stop Samba systemd service ({{ smb_service }}) if not samba_enabled
systemd:
name: "{{ smb_service }}"
state: stopped
enabled: no
when: not samba_enabled
- name: Disable & Stop NetBIOS name service ({{ nmb_service }}) if not samba_enabled
systemd:
name: "{{ nmb_service }}"
state: stopped
enabled: no
when: not samba_enabled
- name: Add 'samba' variable values to {{ iiab_ini_file }}
ini_file:
path: "{{ iiab_ini_file }}"
section: samba
option: "{{ item.option }}"
value: "{{ item.value | string }}"
with_items:
- option: name
value: Samba
- option: description
value: '"Samba is a Microsoft-compatible network file system that re-implements SMB/CIFS (Common Internet File System)."'
- option: enabled
value: "{{ samba_enabled }}"