From 0309ba4e9ee6e16c38905885dbd5bda4cbe17eb4 Mon Sep 17 00:00:00 2001 From: ka-ba Date: Tue, 21 Jun 2016 16:32:27 +0200 Subject: [PATCH] first pb is just checking prereqs --- Readme.md | 11 +++++++++++ inventory/hosts | 7 ++++--- test-prerequisites.yml | 21 +++++++++++++++++++++ 3 files changed, 36 insertions(+), 3 deletions(-) create mode 100644 Readme.md create mode 100755 test-prerequisites.yml diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..b0cf84e --- /dev/null +++ b/Readme.md @@ -0,0 +1,11 @@ +# ansible-ffmwu.git + +An dieser Stelle soll der ganze ansible-script-junk entstehen, um ein FFMWU-Gateway automagisiert aufzusetzen. Das Geraffel kann später auch auf andere server-Typen erweitert werden, wenn sinnvoll. +Ein server muss minimal vorbereitet sein, bevor er mit den hiesigen Skripten zum Gate (oder zu Sonstigem) gemacht werden kann. Insbesondere müssen die folgenden Voraussetzungen erfüllt sein (diese werden vom playbook `test-prerequisites.yml` getestet): + +- Ein dedizierter (v)server muss existieren und unter einer IPv4- und einer IPv6-Adresse öffentlich erreichbar sein. +- Die Adressen sollen im MWU-DNS eingetragen sein. +- Es muss eine nakte unterstützte linux-Version aufgesetzt sein (aktuell Ubuntu 14.04, bald Debian). +- Es muss einen user admin geben, auf den die Admins Zugriff haben; dieser muss root-Zugang über sudo haben. + +Zusätzlich ist sehr empfehlenswert, dass die Admins die Maschinen mit ihren fqdns in ihrer ssh-config definiert haben. diff --git a/inventory/hosts b/inventory/hosts index d9aa5e8..e35a9da 100644 --- a/inventory/hosts +++ b/inventory/hosts @@ -3,6 +3,7 @@ spinat.freifunk-mwu.de lotuswurzel.freifunk-mwu.de wasserfloh.freifunk-mwu.de kaschu.freifunk-mwu.de +ingwer.freifunk-mwu.de #mettigel.freifunk-mwu.de #parmesan.freifunk-mwu.de @@ -17,11 +18,11 @@ glueckskeks.freifunk-mwu.de # zwiebel.freifunk-mwu.de # suesskartoffel.freifunk-mwu.de # -[ff-server:children] +[ff-servers:children] gates meshing-only-srv -simple-ff-server +simple-ff-servers -[simple-ff-server] # not meshing +[simple-ff-servers] # not meshing linse.freifunk-mwu.de # ext. DNS-master #pudding.freifunk-mwu.de # diff --git a/test-prerequisites.yml b/test-prerequisites.yml new file mode 100755 index 0000000..72bbfed --- /dev/null +++ b/test-prerequisites.yml @@ -0,0 +1,21 @@ +#!/usr/bin/ansible-playbook +--- + +- hosts: ff-servers + remote_user: admin + strategy: free + + tasks: + - name: test access to admin account (ssh key neccessary!) + command: "true" + changed_when: False + + - name: test access to root account + command: "true" + changed_when: False + become: True + become_user: root + + - name: check OS type and version # TODO: include debian + fail: msg="unsupported OS type or version - {{ ansible_distribution }} {{ ansible_distribution_major_version }}" + when: not ( ansible_distribution=="Ubuntu" and ansible_distribution_major_version|int==14 )