summaryrefslogtreecommitdiff
path: root/roles
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2018-01-06 15:42:38 +0100
committerChristian Pointner <equinox@spreadspace.org>2018-01-06 15:42:38 +0100
commitfce6ae3a7ab036295ab1cceb6b0ebafbe3847d11 (patch)
treea5552dd37978c388b9964f93c9bb205f4b61439c /roles
parentadded wireguard as dep for kubernetes-net (diff)
greatly improved dkms handling
Diffstat (limited to 'roles')
-rw-r--r--roles/kubernetes-base/meta/main.yml2
-rw-r--r--roles/kubernetes-net/meta/main.yml2
-rw-r--r--roles/prepare-dkms/files/my_scw-fetch-kernel-sources (renamed from roles/scaleway-dkms/files/my_scw-fetch-kernel-sources)6
-rw-r--r--roles/prepare-dkms/handlers/main.yml (renamed from roles/scaleway-dkms/handlers/main.yml)2
-rw-r--r--roles/prepare-dkms/tasks/scaleway.yml (renamed from roles/scaleway-dkms/tasks/main.yml)10
-rw-r--r--roles/wireguard/meta/main.yml3
6 files changed, 18 insertions, 7 deletions
diff --git a/roles/kubernetes-base/meta/main.yml b/roles/kubernetes-base/meta/main.yml
index cb7d8e04..724b20f1 100644
--- a/roles/kubernetes-base/meta/main.yml
+++ b/roles/kubernetes-base/meta/main.yml
@@ -1,3 +1,3 @@
---
dependencies:
- - role: docker
+- role: docker
diff --git a/roles/kubernetes-net/meta/main.yml b/roles/kubernetes-net/meta/main.yml
index eb6e41ca..b5a72b6e 100644
--- a/roles/kubernetes-net/meta/main.yml
+++ b/roles/kubernetes-net/meta/main.yml
@@ -1,3 +1,3 @@
---
dependencies:
- - role: wireguard
+- role: wireguard
diff --git a/roles/scaleway-dkms/files/my_scw-fetch-kernel-sources b/roles/prepare-dkms/files/my_scw-fetch-kernel-sources
index 7116ae24..1b5333b5 100644
--- a/roles/scaleway-dkms/files/my_scw-fetch-kernel-sources
+++ b/roles/prepare-dkms/files/my_scw-fetch-kernel-sources
@@ -3,14 +3,20 @@
# this is based on:
# https://github.com/scaleway/kernel-tools#how-to-build-a-custom-kernel-module
+set -e
+
# Determine versions
arch="$(uname -m)"
release="$(uname -r)"
upstream="${release%%-*}"
local="${release#*-}"
+export PATH="${PATH:+$PATH:}/usr/bin:/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin"
+
# Get kernel sources
mkdir -p /usr/src
+rm -f "/usr/src/linux-${upstream}.tar.xz"
+rm -rf "/usr/src/linux-${upstream}"
wget -O "/usr/src/linux-${upstream}.tar.xz" "https://cdn.kernel.org/pub/linux/kernel/v4.x/linux-${upstream}.tar.xz"
tar xf "/usr/src/linux-${upstream}.tar.xz" -C /usr/src/
ln -fns "/usr/src/linux-${upstream}" /usr/src/linux
diff --git a/roles/scaleway-dkms/handlers/main.yml b/roles/prepare-dkms/handlers/main.yml
index 896fe523..ab281326 100644
--- a/roles/scaleway-dkms/handlers/main.yml
+++ b/roles/prepare-dkms/handlers/main.yml
@@ -1,3 +1,3 @@
---
-- name: fetch kernel sources
+- name: fetch scaleway kernel sources
command: /usr/local/sbin/my_scw-fetch-kernel-sources
diff --git a/roles/scaleway-dkms/tasks/main.yml b/roles/prepare-dkms/tasks/scaleway.yml
index 5dda15f6..57626d15 100644
--- a/roles/scaleway-dkms/tasks/main.yml
+++ b/roles/prepare-dkms/tasks/scaleway.yml
@@ -1,8 +1,9 @@
---
-- name: install build deps
+- name: install build deps and dkms
with_items:
- build-essential
- libssl-dev
+ - dkms
apt:
name: "{{ item }}"
state: present
@@ -12,15 +13,18 @@
src: my_scw-fetch-kernel-sources
dest: /usr/local/sbin/
mode: 0755
- notify: fetch kernel sources
+ notify: fetch scaleway kernel sources
- name: check if sources are already initialized
stat:
path: "/lib/modules/{{ ansible_kernel }}/build"
follow: yes
+ get_mime: no
+ get_checksum: no
+ get_md5: no
register: build_directory
changed_when: build_directory.stat.exists == False
- notify: fetch kernel sources
+ notify: fetch scaleway kernel sources
- name: fetch kernel sources
meta: flush_handlers
diff --git a/roles/wireguard/meta/main.yml b/roles/wireguard/meta/main.yml
index 7ffc16ea..70dae42d 100644
--- a/roles/wireguard/meta/main.yml
+++ b/roles/wireguard/meta/main.yml
@@ -1,3 +1,4 @@
---
dependencies:
- - role: spreadspace-apt-repo
+- role: prepare-dkms
+- role: spreadspace-apt-repo