This repository contains various scripts to setup and configure machines handled by OSM-FR association (a french association for OpenStreetMap). These scripts are used with ansible.
A version of ansible >= 2.3 is sufficient, and is available in Debian, or from git repository. To install all dependency on Debian, use:
apt-get install ansible
To install VM through proxmox, python promoxer module is necessary, It can be installed with:
apt-get install python3-proxmoxer
venv
venv
module creates isolated Python environments.
First of all, install the required packages. On Debian, use:
apt-get install python3 python3-venv
You can jump into a new isolated environments using:
python3 -m venv <folder> # Create the environment, only needs to be done once
source <folder>/bin/activate # Run a subshell using the environment
Then, install the required packages:
pip install -r requirements.txt
Note: The created environment folder should be placed outside this project folder to prevent ansible-lint
from looking at it.
./tools/add-vm.py
to update file hosts
and create proxmox configuration. Command line options are available to change parameters like number of cpus or size of disk.PROXMOX_PASSWORD
and PROXMOX_SSHPUBKEY
/etc/hosts
to access VM before DNS update:
ansible-playbook -u root -l <hostname> common.yml
hosts
, in section [vm]
if it is a virtual machine, at the top otherwise.ansible-playbook -l <hostname> common.yml
hosts
, in the relevant section [user]
group_vars/all/accounts.yml
, with the public ssh key in public\_keys/<user>
ansible-playbook -l <hostname> accounts.yml
hosts
, in the relevant section [service]
ansible-playbook -l <hostname> <service>.yml