1
0
Fork 0
mirror of https://github.com/DO1JLR/ansible_linux_desktop_setup.git synced 2024-09-14 19:54:51 +02:00
Find a file
2023-08-01 22:02:19 +02:00
.github dependabot and action cleanup 2023-08-01 19:07:39 +02:00
collections/ansible_collections New role l3d.packages 2023-07-31 18:23:47 +02:00
files Update modules and config 2021-09-23 21:33:38 +02:00
group_vars Update i3wm 2023-08-01 18:59:41 +02:00
host_vars Update i3wm 2023-08-01 18:59:41 +02:00
roles Update inventory und pkgs 2023-08-01 22:00:37 +02:00
.ansible-lint Improve ansible lint 2023-05-19 16:02:35 +02:00
.gitignore update dev 2023-04-02 22:28:43 +02:00
.gitmodules New role l3d.packages 2023-07-31 18:23:47 +02:00
.yamllint improve linting and pylint 2023-04-13 23:19:42 +02:00
ansible.cfg Improve ansible lint 2023-05-19 16:02:35 +02:00
hosts.ini update ansible for workstation 2021-09-02 01:42:14 +02:00
inventory.py Update inventory und pkgs 2023-08-01 22:00:37 +02:00
LICENSE Improve LICENCE Details 2019-07-09 17:13:26 +02:00
README.md improve linting and pylint 2023-04-13 23:19:42 +02:00
site.yml Update i3wm 2023-08-01 18:59:41 +02:00

Ansible Linux Desktop Setup

This ansible playbook collection manages some of my workstations and laptops. Because of this it sometimes contains very specific variables like my username, SSH keys or similar data that may not be the best choice for your system.

Nevertheless, this ansible playbook is not only publicly available on the internet, but by the MIT license a part of free open-source ansible, which may serve you as inspiration within the framework of the MIT license.

Inventory

This is my first ansible with dynamic inventory. The inventory.py script looks at which hostname it was lauched on. If the hostname is known, the host is mapped to the group stored for it and a local connection to the host is established.

This has the advantage that different environments are automatically recognized and significantly less danger of accidentally rolling out the ansible with the variables for a completely different host and thus configuring things that were not intended for this device.

Obviously, this also means that this playbook must always be run on the host you want to manage and this ansible playbook is not meant to be run remotely.

Install tipps:

# Clone Git
git clone --recursive https://github.com/DO1JLR/ansible_linux_desktop_setup.git ansible_linux_desktop_setup

# go into the cloned folder
cd ansible_linux_desktop_setup

# Download needed submodules
git submodule update --init --recursive

# make sure you always check out the submodules
git config --global submodule.recurse true

# Install Ansible in venv
python3 -m venv ansible

# Activate Venv
source ansible/bin/activate

# Install Ansible
pip3 install --upgrade ansible-core ansible-lint pylint

Which playbook?

L3D use different playbook for different workstations.
Maybe he change this in the future... But now this is the current state.

To use this by yourself copy or change a existing playbook and modify the variables.

Or create a new git repo and be inspired by the roles L3D uses.

Feedback

If you find this usefull please take a few secounds and say thankyou to L3D.

He is at the most chaos events, simple give him a Tschunk or Club Mate there!

Additional Infos

By the way, to store sensible passwords, I am using the community.general.passwordstore Lookup to access my passwords, stored in gopass Password Manager.