Change in osmo-ci[master]: gsm-tester: Install helper scripts and sudoers.d files from git repo

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

pespin gerrit-no-reply at lists.osmocom.org
Tue Feb 11 15:06:08 UTC 2020


pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ci/+/17131 )


Change subject: gsm-tester: Install helper scripts and sudoers.d files from git repo
......................................................................

gsm-tester: Install helper scripts and sudoers.d files from git repo

Let's avoid duplicating and having to add manually the files here every
time a new helper is required by osmo-gsm-tester.

Change-Id: Ibbdd291f4c3f7aecdd5118cc2b3b35edaddf7c09
---
D ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_exec.sh
D ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_setup.sh
D ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_admin.sh
D ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_raw.sh
M ansible/roles/gsm-tester/tasks/main.yml
5 files changed, 27 insertions(+), 81 deletions(-)



  git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/31/17131/1

diff --git a/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_exec.sh b/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_exec.sh
deleted file mode 100755
index 336b746..0000000
--- a/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_exec.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-netns="$1"
-shift
-#TODO: Later on I may want to call myself with specific ENV and calling sudo in order to run inside the netns but with dropped privileges
-ip netns exec $netns "$@"
diff --git a/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_setup.sh b/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_setup.sh
deleted file mode 100755
index 1600c44..0000000
--- a/ansible/roles/gsm-tester/files/osmo-gsm-tester_netns_setup.sh
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/bash -e
-
-ifname="$1"
-netns="$2"
-shift
-shift
-
-
-
-if [ -f "/var/run/netns/${netns}" ]; then
-    echo "netns $netns already exists"
-else
-    echo "Creating netns $netns"
-    ip netns add "$netns"
-fi
-
-if [ -d "/sys/class/net/${ifname}" ]; then
-    echo "Moving iface $ifname to netns $netns"
-    ip link set $ifname netns $netns
-else
-    ip netns exec $netns ls "/sys/class/net/${ifname}" >/dev/null && echo "iface $ifname already in netns $netns"
-fi
diff --git a/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_admin.sh b/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_admin.sh
deleted file mode 100644
index 60e527a..0000000
--- a/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_admin.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/sh
-/sbin/setcap cap_net_admin+ep "$1"
diff --git a/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_raw.sh b/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_raw.sh
deleted file mode 100755
index 1f3a727..0000000
--- a/ansible/roles/gsm-tester/files/osmo-gsm-tester_setcap_net_raw.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-
-/sbin/setcap cap_net_raw+ep "$1"
diff --git a/ansible/roles/gsm-tester/tasks/main.yml b/ansible/roles/gsm-tester/tasks/main.yml
index 0a5a838..699102c 100644
--- a/ansible/roles/gsm-tester/tasks/main.yml
+++ b/ansible/roles/gsm-tester/tasks/main.yml
@@ -262,57 +262,35 @@
     content: "@osmo-gsm-tester - rtprio 99"
     dest: /etc/security/limits.d/osmo-gsm-tester_rtprio.conf
 
-- name: create a wrapper script to add CAP_NET_RAW
-  copy:
-    src: osmo-gsm-tester_setcap_net_raw.sh
-    dest: /usr/local/bin/osmo-gsm-tester_setcap_net_raw.sh
-    mode: 0755
+# patchelf 0.9 available in debian has bugs with certain binaries. Version 0.10
+# fails on other binaries, so we need both 0.9 and 0.10 versions installed.
+- name: setup osmo-gsm-tester repository
+  git:
+    repo: 'https://github.com/NixOS/patchelf.git'
+    dest: /root/osmo-gsm-tester
+    version: master
+    clone: yes
+    update: no
+  tags:
+    - osmo-gsm-tester
 
-- name: allow osmo-gsm-tester sudo osmo-gsm-tester_setcap_net_raw.sh
-  copy:
-    content: |
-      %osmo-gsm-tester ALL=(root) NOPASSWD: /usr/local/bin/osmo-gsm-tester_setcap_net_raw.sh
-    dest: /etc/sudoers.d/osmo-gsm-tester_setcap_net_raw
-    mode: 0440
+- name: Install osmo-gsm-tester script helpers to /usr/local/bin (PATH)
+  shell: |
+      mkdir -p /usr/local/bin/ && \
+      cp utils/bin/*.sh /usr/local/bin/
+  args:
+    chdir: /root/osmo-gsm-tester
+  tags:
+    - osmo-gsm-tester
 
-- name: create a wrapper script to add CAP_NET_ADMIN
-  copy:
-    src: osmo-gsm-tester_setcap_net_admin.sh
-    dest: /usr/local/bin/osmo-gsm-tester_setcap_net_admin.sh
-    mode: 0755
-
-- name: allow osmo-gsm-tester sudo osmo-gsm-tester_setcap_net_admin.sh
-  copy:
-    content: |
-      %osmo-gsm-tester ALL=(root) NOPASSWD: /usr/local/bin/osmo-gsm-tester_setcap_net_admin.sh
-    dest: /etc/sudoers.d/osmo-gsm-tester_setcap_net_admin
-    mode: 0440
-
-- name: create a wrapper script to run processes on modem netns
-  copy:
-    src: osmo-gsm-tester_netns_exec.sh
-    dest: /usr/local/bin/osmo-gsm-tester_netns_exec.sh
-    mode: 0755
-
-- name: allow osmo-gsm-tester sudo osmo-gsm-tester_netns_exec.sh
-  copy:
-    content: |
-      %osmo-gsm-tester ALL=(root) NOPASSWD: /usr/local/bin/osmo-gsm-tester_netns_exec.sh
-    dest: /etc/sudoers.d/osmo-gsm-tester_netns_exec
-    mode: 0440
-
-- name: create a wrapper script to move modem net iface into its own netns
-  copy:
-    src: osmo-gsm-tester_netns_setup.sh
-    dest: /usr/local/bin/osmo-gsm-tester_netns_setup.sh
-    mode: 0755
-
-- name: allow osmo-gsm-tester sudo osmo-gsm-tester_netns_setup.sh
-  copy:
-    content: |
-      %osmo-gsm-tester ALL=(root) NOPASSWD: /usr/local/bin/osmo-gsm-tester_netns_setup.sh
-    dest: /etc/sudoers.d/osmo-gsm-tester_netns_setup
-    mode: 0440
+- name: Install osmo-gsm-tester sudoers.d files to /etc/sudoers.d/ (PATH)
+  shell: |
+      mkdir -p /etc/sudoers.d/ && \
+      cp utils/sudoers.d/* /etc/sudoers.d/
+  args:
+    chdir: /root/osmo-gsm-tester
+  tags:
+    - osmo-gsm-tester
 
 - name: logrotate limit filesizes to 10M
   copy:

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-ci/+/17131
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-ci
Gerrit-Branch: master
Gerrit-Change-Id: Ibbdd291f4c3f7aecdd5118cc2b3b35edaddf7c09
Gerrit-Change-Number: 17131
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200211/928f77d6/attachment.htm>


More information about the gerrit-log mailing list