Skip to content
Snippets Groups Projects
Commit 1cbf9fff authored by jurgenhaas's avatar jurgenhaas
Browse files

ansible-playbooks/general#85 Linting

parent f574a02b
No related branches found
No related tags found
No related merge requests found
sftp_basepath: '/var/sftp'
sftp_basepath: /var/sftp
sftp_groups:
sftp:
path: 'data'
path: data
user: []
sftp_user: []
---
# file: roles/sftp/tasks/groups.yml
- name: "Add Users to Group"
- name: Add Users to Group
user:
name: '{{ item }}'
groups: '{{ group }}'
append: yes
with_items: '{{ sftp_groups[group].user }}'
- name: "Add Users to SFTP Group"
- name: Add Users to SFTP Group
user:
name: '{{ item }}'
groups: 'sftp{{ group }}'
groups: sftp{{ group }}
append: yes
with_items: '{{ sftp_groups[group].user }}'
---
# file: roles/sftp/tasks/main.yml
- name: "SFTP Role"
set_fact: role_sftp_started=true
tags: 'always'
- name: SFTP Role
set_fact:
role_sftp_started: yes
tags:
- always
- block:
- name: "Ensure Groups"
- name: Ensure Groups
group:
name: '{{ item }}'
state: 'present'
state: present
with_items: '{{ sftp_groups }}'
- name: "Ensure SFTP Groups"
- name: Ensure SFTP Groups
group:
name: 'sftp{{ item }}'
state: 'present'
name: sftp{{ item }}
state: present
with_items: '{{ sftp_groups }}'
- name: "Ensure SFTP Base-Directory"
- name: Ensure SFTP Base-Directory
file:
dest: '{{ sftp_basepath }}'
owner: 'root'
group: 'root'
state: 'directory'
mode: '755'
owner: root
group: root
state: directory
mode: 755
- name: "Ensure SFTP Directories"
- name: Ensure SFTP Directories
file:
dest: '{{ sftp_basepath }}/{{ sftp_groups[item].path }}'
owner: 'root'
owner: root
group: '{{ item }}'
state: 'directory'
mode: '770'
state: directory
mode: 770
with_items: '{{ sftp_groups }}'
when: 'sftp_groups[item].mountpath is not defined'
when: sftp_groups[item].mountpath is not defined
- name: "Create Users"
- name: Create Users
user:
name: '{{ item.username }}'
home: '/home/{{ item.username }}'
shell: '/bin/false'
home: /home/{{ item.username }}
shell: /bin/false
with_items: '{{ sftp_user }}'
- name: "Install Keys"
- name: Install Keys
authorized_key:
user: '{{ item.username }}'
key: '{{ item.key }}'
with_items: '{{ sftp_user }}'
- name: "User-Group-Relations"
include_tasks: 'groups.yml'
- name: User-Group-Relations
include_tasks: groups.yml
loop_control:
loop_var: group
with_items: '{{ sftp_groups }}'
- include_tasks: 'mount.yml'
- include_tasks: mount.yml
loop_control:
loop_var: group
with_items: '{{ sftp_groups }}'
when: 'sftp_groups[group].mountpath is defined'
when: sftp_groups[group].mountpath is defined
when: '"sftp" not in excluded_roles'
when: not excluded_roles or "sftp" not in excluded_roles
---
# file: roles/sftp/tasks/mount.yml
- name: "Ensure Mount Path"
- name: Ensure Mount Path
file:
dest: '{{ sftp_groups[group].mountpath }}'
owner: '{{ item }}'
group: '{{ group }}'
state: 'directory'
mode: '775'
state: directory
mode: 775
with_items: '{{ sftp_groups[group].user }}'
- name: "Create Mount Point"
- name: Create Mount Point
mount:
fstype: 'none'
opts: 'bind'
fstype: none
opts: bind
name: '{{ sftp_basepath }}/{{ sftp_groups[group].path }}'
src: '{{ sftp_groups[group].mountpath }}'
state: 'mounted'
state: mounted
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment