mirror of
https://git.ecdf.ed.ac.uk/win_automation/windows-ansible.git
synced 2026-10-26 13:47:21 +00:00
setup proxy VM
This commit is contained in:
1 parent
9b3a26ad61
commit
9fc4d3d16e
8 files changed
+268
No files matched your search
@@ -0,0 +1,93 @@
|
||||
---
|
||||
|
||||
- name: assert | Test squid_port
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- squid_port is defined
|
||||
- squid_port is number
|
||||
- squid_port > 0
|
||||
- squid_port < 65536
|
||||
quiet: true
|
||||
|
||||
- name: assert | Test squid_cache_dir
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- squid_cache_dir is defined
|
||||
- squid_cache_dir is string
|
||||
- squid_cache_dir.split(" ")[0] in [ "ufs", "aufs", "diskd", "rock", "null" ]
|
||||
quiet: true
|
||||
|
||||
- name: assert | Test squid_acls
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- squid_acls is iterable
|
||||
quiet: true
|
||||
when:
|
||||
- squid_acls is defined
|
||||
|
||||
- name: assert | Test item in squid_acls
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- item.name is defined
|
||||
- item.name is string
|
||||
- item.name is not none
|
||||
- item.classifier is defined
|
||||
- item.classifier is string
|
||||
- item.classifier is not none
|
||||
- item.value is defined
|
||||
- item.value is string
|
||||
- item.value is not none
|
||||
quiet: true
|
||||
loop: "{{ squid_acls }}"
|
||||
loop_control:
|
||||
label: "{{ item.name }}"
|
||||
when:
|
||||
- squid_acls is defined
|
||||
|
||||
- name: assert | Test item in squid_http_access
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- item.state is defined
|
||||
- item.state is string
|
||||
- item.state is not none
|
||||
- item.acls is defined
|
||||
- item.acls is iterable
|
||||
quiet: true
|
||||
loop: "{{ squid_http_access }}"
|
||||
loop_control:
|
||||
label: "{{ item.state }}"
|
||||
when:
|
||||
- squid_http_access is defined
|
||||
|
||||
- name: assert | Test squid_rules
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- squid_rules is iterable
|
||||
quiet: true
|
||||
when:
|
||||
- squid_rules is defined
|
||||
|
||||
- name: assert | Test item in squid_rules
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- item.acl is defined
|
||||
- item.acl is string
|
||||
- item.acl is not none
|
||||
- item.decision is defined
|
||||
- item.decision is string
|
||||
- item.decision in [ "allow", "deny" ]
|
||||
quiet: true
|
||||
loop: "{{ squid_rules }}"
|
||||
loop_control:
|
||||
label: "{{ item.acl }}"
|
||||
when:
|
||||
- squid_rules is defined
|
||||
|
||||
- name: assert | Test squid_logformat
|
||||
ansible.builtin.assert:
|
||||
that:
|
||||
- squid_logformat is string
|
||||
- squid_logformat.split(" ") | length > 1
|
||||
quiet: true
|
||||
when:
|
||||
- squid_logformat is defined
|
||||
@@ -0,0 +1,60 @@
|
||||
---
|
||||
|
||||
- name: Import assert.yml
|
||||
import_tasks:
|
||||
file: assert.yml
|
||||
run_once: true
|
||||
delegate_to: localhost
|
||||
|
||||
- name: Create group
|
||||
ansible.builtin.group:
|
||||
name: "{{ squid_group }}"
|
||||
system: true
|
||||
state: present
|
||||
|
||||
- name: Create user
|
||||
ansible.builtin.user:
|
||||
name: "{{ squid_user }}"
|
||||
group: "{{ squid_group }}"
|
||||
create_home: false
|
||||
state: present
|
||||
home: /var/spool/squid
|
||||
shell: /sbin/nologin
|
||||
system: true
|
||||
|
||||
- name: Install squid
|
||||
ansible.builtin.package:
|
||||
name: "{{ squid_packages }}"
|
||||
state: present
|
||||
update_cache: true
|
||||
|
||||
- name: Include variables
|
||||
include_vars: rules.yml
|
||||
|
||||
- name: Configure squid
|
||||
ansible.builtin.template:
|
||||
src: "{{ squid_config_file }}.j2"
|
||||
dest: "{{ squid_config_directory }}/{{ squid_config_file }}"
|
||||
mode: "0644"
|
||||
validate: squid -k parse -f %s
|
||||
notify:
|
||||
- Restart squid
|
||||
|
||||
- name: Create cache directory
|
||||
ansible.builtin.file:
|
||||
path: /var/spool/squid
|
||||
state: directory
|
||||
owner: "{{ squid_user }}"
|
||||
group: "{{ squid_group }}"
|
||||
mode: "0750"
|
||||
|
||||
- name: Flush_handlers
|
||||
ansible.builtin.meta: flush_handlers
|
||||
|
||||
- name: Start and enable squid
|
||||
ansible.builtin.service:
|
||||
name: "{{ squid_service }}"
|
||||
state: started
|
||||
enabled: true
|
||||
when:
|
||||
- not ansible_check_mode
|
||||
Reference in new issue
Block a user