collection of ansible roles
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.
 
 
 
 

52 lines
1.7 KiB

- name: install required packages
package:
name: "{{ package }}"
state: present
loop: "{{ webserver_packages[ansible_distribution|lower] }}"
loop_control:
loop_var: package
when: ansible_distribution|lower != 'openbsd'
- name: install required packages
community.general.openbsd_pkg:
name: "{{ package }}"
state: present
snapshot: "{{ force_openbsd_snapshot|default(false) }}"
loop: "{{ webserver_packages[ansible_distribution|lower] }}"
loop_control:
loop_var: package
when: ansible_distribution|lower == 'openbsd'
- name: create directories
file:
name: "{{ dir.path }}"
state: directory
owner: "{{ dir.owner }}"
loop: "{{ webserver_directories[ansible_distribution|lower] }}"
loop_control:
loop_var: dir
- name: setup htpasswd file
htpasswd:
name: "{{ user.name }}"
state: "{{ user.state|default('present') }}"
password: "{{ user.password }}"
path: "{{ webserver_htpasswd_file[ansible_distribution|lower].path }}"
owner: "{{ webserver_htpasswd_file[ansible_distribution|lower].owner }}"
group: "{{ webserver_htpasswd_file[ansible_distribution|lower].group }}"
mode: "{{ webserver_htpasswd_file[ansible_distribution|lower].mode }}"
crypt_scheme: "{{ webserver_htpasswd_file[ansible_distribution|lower].crypt_scheme }}"
loop: "{{ webserver_htpasswd_users }}"
loop_control:
loop_var: user
- name: "ensure {{ cfg.line }} is in {{ cfg.path }}"
lineinfile:
path: "{{ cfg.path }}"
line: "{{ cfg.line }}"
regexp: "{{ cfg.regexp }}"
create: yes
loop: "{{ webserver_config_insertions[ ansible_distribution|lower ] }}"
loop_control:
loop_var: cfg
notify: reload httpd