mirror of
https://git.ecdf.ed.ac.uk/win_automation/windows-ansible.git
synced 2026-10-26 13:17:21 +00:00
added Role win_study
This commit is contained in:
1 parent
a02177f762
commit
4cea3b4c82
6 files changed
+112
No files matched your search
@@ -0,0 +1,9 @@
|
||||
---
|
||||
- hosts: "meta-name_fs01"
|
||||
gather_facts: false
|
||||
vars_files:
|
||||
- ../vars/common.yml
|
||||
- ../vars/connection.yml
|
||||
roles:
|
||||
- role: win_study
|
||||
tags: win_study
|
||||
@@ -0,0 +1,16 @@
|
||||
---
|
||||
- name: Check status of project
|
||||
tags: check_project
|
||||
block:
|
||||
- name: Check if study folder already exists
|
||||
win_stat:
|
||||
path: "{{ study_folder }}"
|
||||
register: folder
|
||||
failed_when: folder.stat.exists
|
||||
|
||||
rescue:
|
||||
- name: Force fail when study folder already present
|
||||
fail:
|
||||
msg="This study folder is already present"
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
- name: Create Study
|
||||
tags: create_study
|
||||
block:
|
||||
- name: Create study folders and import/export folders
|
||||
win_file:
|
||||
path: "{{ study_folder }}\\{{ item }}"
|
||||
state: directory
|
||||
with_items: ["import", "export"]
|
||||
|
||||
- name: Create study folders on T drive
|
||||
ansible.windows.win_file:
|
||||
path: "T:\\{{ item }}\\{{ study_code }}"
|
||||
state: directory
|
||||
with_items: ["Import", "Export"]
|
||||
|
||||
- name: Create AD group
|
||||
community.windows.win_domain_group:
|
||||
name: "{{ study_code }}"
|
||||
description: "{{ study_code }} study"
|
||||
path: "ou=Project Groups,dc={{ win_project }},dc=loc"
|
||||
scope: domainlocal
|
||||
category: security
|
||||
delegate_to: "{{ os_project }}-{{ win_project }}-dc01"
|
||||
@@ -0,0 +1,4 @@
|
||||
---
|
||||
- import_tasks: check.yml
|
||||
- import_tasks: create.yml
|
||||
- import_tasks: permissions.yml
|
||||
@@ -0,0 +1,58 @@
|
||||
---
|
||||
- name: Set permissions
|
||||
tags: set_permissions
|
||||
block:
|
||||
- name: Add study group permissions to study folder
|
||||
win_acl:
|
||||
path: "{{ item }}"
|
||||
state: present
|
||||
type: allow
|
||||
user: "{{ study_code }}"
|
||||
rights: Read,Write,Modify,Delete
|
||||
loop: ["{{ study_folder }}", "{{ study_folder }}\\export"]
|
||||
|
||||
- name: Add Domain Admin permissions to study folder
|
||||
win_acl:
|
||||
path: "{{ item }}"
|
||||
state: present
|
||||
type: allow
|
||||
user: "{{ domain_admin_username }}"
|
||||
rights: "FullControll"
|
||||
loop: ["{{ study_folder }}", "{{ study_folder }}\\export"]
|
||||
|
||||
- name: Add file-transfer user permissions to study folder
|
||||
win_acl:
|
||||
path: '{{ study_folder }}\export'
|
||||
state: present
|
||||
type: allow
|
||||
user: file-transfer
|
||||
rights: 'FullControl'
|
||||
|
||||
- name: Remove Users permissions
|
||||
block:
|
||||
- name: "Remove Users permissions from {{ study_folder }}"
|
||||
win_acl:
|
||||
path: "{{ study_folder }}"
|
||||
state: "{{ item }}"
|
||||
type: allow
|
||||
user: "Users"
|
||||
rights: "FullControl"
|
||||
loop: ["present", "absent"]
|
||||
|
||||
- name: "Remove Users permissions from {{ study_folder }}\\export"
|
||||
win_acl:
|
||||
path: "{{ study_folder }}\\export"
|
||||
state: "{{ item }}"
|
||||
type: allow
|
||||
user: "Users"
|
||||
rights: "FullControl"
|
||||
loop: ["present", "absent"]
|
||||
|
||||
- name: "Remove Users permissions from {{ study_folder }}\\import"
|
||||
win_acl:
|
||||
path: "{{ study_folder }}\\import"
|
||||
state: "{{ item }}"
|
||||
type: allow
|
||||
user: "Users"
|
||||
rights: "FullControl"
|
||||
loop: ["present", "absent"]
|
||||
@@ -0,0 +1 @@
|
||||
study_folder: \\{{ win_project }}.loc\Study_Data\{{ study_code }}
|
||||
Reference in new issue
Block a user