adding protonvpn role
This commit is contained in:
5
roles/base/handlers/main.yml
Normal file
5
roles/base/handlers/main.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
- name: Restart NetworkManager
|
||||
service:
|
||||
name: NetworkManager
|
||||
state: restarted
|
||||
82
roles/base/tasks/main.yml
Normal file
82
roles/base/tasks/main.yml
Normal file
@@ -0,0 +1,82 @@
|
||||
---
|
||||
- name: Create groups
|
||||
group:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ init_groups }}"
|
||||
|
||||
- name: Ensure Users are Configured Correctly
|
||||
user:
|
||||
name: "{{ item.value.name }}"
|
||||
group: "{{ item.value.group }}"
|
||||
groups: "{{ item.value.groups }}"
|
||||
state: "{{ item.value.state }}"
|
||||
create_home: "{{ item.value.create_home }}"
|
||||
shell: "{{ item.value.shell }}"
|
||||
loop: "{{ init_users | dict2items }}"
|
||||
|
||||
- name: Create or ensure presence of custom home directories
|
||||
file:
|
||||
path: /home/opal/{{ item }}
|
||||
state: directory
|
||||
mode: '0755'
|
||||
owner: opal
|
||||
group: opal
|
||||
loop: "{{ create_directories }}"
|
||||
|
||||
- name: Remove default home directories if present
|
||||
file:
|
||||
path: /home/opal/{{ item }}
|
||||
state: absent
|
||||
loop: "{{ remove_directories }}"
|
||||
|
||||
# SSH Initial Setup
|
||||
- name: Create/Ensure ~/.ssh directories
|
||||
file:
|
||||
path: "/home/{{ item.value.name }}/.ssh"
|
||||
state: directory
|
||||
mode: 0700
|
||||
owner: "{{ item.value.name }}"
|
||||
group: "{{ item.value.group }}"
|
||||
loop: "{{ init_users | dict2items }}"
|
||||
|
||||
- name: Install galaxy collections
|
||||
community.general.ansible_galaxy_install:
|
||||
type: collection
|
||||
name: "{{ item }}"
|
||||
loop: "{{ ansible_galaxy_collections }}"
|
||||
|
||||
- name: Mask wpa_supplicant service
|
||||
systemd:
|
||||
name: wpa_supplicant
|
||||
enabled: no
|
||||
masked: yes
|
||||
state: stopped
|
||||
|
||||
- name: Ensure NetworkManager is enabled at boot
|
||||
systemd:
|
||||
name: NetworkManager
|
||||
enabled: yes
|
||||
|
||||
- name: Configure NetworkManager to manage all interfaces
|
||||
template:
|
||||
src: templates/NetworkManager.conf.j2
|
||||
dest: /etc/NetworkManager/NetworkManager.conf
|
||||
owner: root
|
||||
group: root
|
||||
mode: '0644'
|
||||
notify: Restart NetworkManager
|
||||
|
||||
- name: Install iwd
|
||||
apt:
|
||||
name: iwd
|
||||
state: present
|
||||
update_cache: yes
|
||||
|
||||
- name: Configure NetworkManager to use iwd
|
||||
copy:
|
||||
dest: /etc/NetworkManager/conf.d/wifi_backend.conf
|
||||
content: |
|
||||
[device]
|
||||
wifi.backend=iwd
|
||||
notify: Restart NetworkManager
|
||||
6
roles/base/templates/NetworkManager.conf.j2
Normal file
6
roles/base/templates/NetworkManager.conf.j2
Normal file
@@ -0,0 +1,6 @@
|
||||
# MANAGED BY ANSIBLE #
|
||||
[main]
|
||||
plugins=ifupdown,keyfile
|
||||
|
||||
[ifupdown]
|
||||
managed=true
|
||||
4
roles/base/templates/resolv.conf.j2
Normal file
4
roles/base/templates/resolv.conf.j2
Normal file
@@ -0,0 +1,4 @@
|
||||
# This file is managed by Ansible #
|
||||
nameserver 1.1.1.2
|
||||
nameserver 1.0.0.2
|
||||
nameserver 2606:4700:4700:0:0:0:0:1112
|
||||
41
roles/base/vars/main.yml
Normal file
41
roles/base/vars/main.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
---
|
||||
init_groups:
|
||||
- docker
|
||||
|
||||
remove_directories:
|
||||
- Templates
|
||||
- Videos
|
||||
- Documents
|
||||
- Music
|
||||
- Downloads
|
||||
- Pictures
|
||||
- Public
|
||||
- Desktop
|
||||
|
||||
create_directories:
|
||||
- documents
|
||||
- music
|
||||
- downloads
|
||||
- pictures
|
||||
- scripts
|
||||
- projects
|
||||
- src
|
||||
- .config
|
||||
|
||||
init_users:
|
||||
opal:
|
||||
name: opal
|
||||
group: opal
|
||||
groups:
|
||||
- sudo
|
||||
- docker
|
||||
- video
|
||||
- netdev
|
||||
state: present
|
||||
shell: /bin/bash
|
||||
create_home: true
|
||||
|
||||
ansible_galaxy_collections:
|
||||
- community.general
|
||||
- community.docker
|
||||
- ansible.posix
|
||||
Reference in New Issue
Block a user