Filippo Giunchedi has submitted this change and it was merged.

Change subject: Extract wmf-beta-scap to sudo-withagent wrapper script
......................................................................


Extract wmf-beta-scap to sudo-withagent wrapper script

Change-Id: Id8541b7b28b33e31aaf60f49d1b76553909cae39
---
A files/misc/scripts/sudo-withagent
M manifests/misc/deployment.pp
M modules/beta/files/wmf-beta-scap
M modules/beta/manifests/scap/master.pp
4 files changed, 43 insertions(+), 26 deletions(-)

Approvals:
  Filippo Giunchedi: Verified; Looks good to me, approved
  jenkins-bot: Verified



diff --git a/files/misc/scripts/sudo-withagent 
b/files/misc/scripts/sudo-withagent
new file mode 100755
index 0000000..9e029f8
--- /dev/null
+++ b/files/misc/scripts/sudo-withagent
@@ -0,0 +1,34 @@
+#!/usr/bin/env bash
+# sudo-withagent USER /path/to/script param1 param2
+#
+# This file is managed by puppet.
+#
+set -e
+
+# User that the script should be run as
+RUN_AS=$1
+
+# Ensure that script is run as the correct user
+[[ $(whoami) = $RUN_AS ]] || exec sudo -H -u $RUN_AS -- "$0" "$@"
+
+# Pop user
+shift
+
+# Ensure that an ssh-agent is running
+if [[ -z $SSH_AUTH_SOCK ]]; then
+    echo Starting ssh-agent
+    eval $(ssh-agent)
+
+    # Add default keys
+    ssh-add
+
+    # Kill the agent when this script exits
+    trap 'trap - EXIT; [[ $SSH_AGENT_PID ]] && kill $SSH_AGENT_PID' \
+        EXIT SIGHUP SIGINT SIGQUIT SIGPIPE SIGTERM
+fi
+
+# Set a sane terminal type
+export TERM=dumb
+
+# Run script
+"$@"
diff --git a/manifests/misc/deployment.pp b/manifests/misc/deployment.pp
index 0e3ac3d..f5a7389 100644
--- a/manifests/misc/deployment.pp
+++ b/manifests/misc/deployment.pp
@@ -124,6 +124,11 @@
             group   => 'root',
             mode    => '0444',
             source  => 'puppet:///files/misc/scripts/man';
+        '/usr/local/bin/sudo-withagent':
+            owner   => 'root',
+            group   => 'root',
+            mode    => '0555',
+            source  => 'puppet:///files/misc/scripts/sudo-withagent';
     }
 }
 
diff --git a/modules/beta/files/wmf-beta-scap b/modules/beta/files/wmf-beta-scap
index a0c64bc..a0ed58a 100755
--- a/modules/beta/files/wmf-beta-scap
+++ b/modules/beta/files/wmf-beta-scap
@@ -3,29 +3,4 @@
 #
 # Run scap on the beta cluster.
 #
-set -e
-
-# User that scap should be run as
-RUN_AS=mwdeploy
-
-# Ensure that script is run as the correct user
-[[ $(whoami) = $RUN_AS ]] || exec sudo -H -u $RUN_AS -- "$0" "$@"
-
-# Ensure that an ssh-agent is running
-if [[ -z $SSH_AUTH_SOCK ]]; then
-    echo Starting ssh-agent
-    eval $(ssh-agent)
-
-    # Add default keys
-    ssh-add
-
-    # Kill the agent when this script exits
-    trap 'trap - EXIT; [[ $SSH_AGENT_PID ]] && kill $SSH_AGENT_PID' \
-        EXIT SIGHUP SIGINT SIGQUIT SIGPIPE SIGTERM
-fi
-
-# Set a sane terminal type
-export TERM=dumb
-
-# Run scap
-/usr/local/bin/scap "$@"
+/usr/local/bin/sudo-withagent mwdeploy /usr/local/bin/scap "$@"
diff --git a/modules/beta/manifests/scap/master.pp 
b/modules/beta/manifests/scap/master.pp
index fdaa472..32d003d 100644
--- a/modules/beta/manifests/scap/master.pp
+++ b/modules/beta/manifests/scap/master.pp
@@ -45,10 +45,13 @@
     }
 
     # Install a scap runner script for commmand line or jenkins use
+    # Depends on sudo-withagent from misc::deployment::scap_scripts
     file { '/usr/local/bin/wmf-beta-scap':
         owner   => 'root',
         group   => 'root',
         mode    => '0555',
+        require => File['/usr/local/bin/sudo-withagent'],
         source  => 'puppet:///modules/beta/wmf-beta-scap',
     }
+
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/160960
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: Id8541b7b28b33e31aaf60f49d1b76553909cae39
Gerrit-PatchSet: 10
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Reedy <re...@wikimedia.org>
Gerrit-Reviewer: 20after4 <mmod...@wikimedia.org>
Gerrit-Reviewer: Andrew Bogott <abog...@wikimedia.org>
Gerrit-Reviewer: BryanDavis <bda...@wikimedia.org>
Gerrit-Reviewer: Dzahn <dz...@wikimedia.org>
Gerrit-Reviewer: Faidon Liambotis <fai...@wikimedia.org>
Gerrit-Reviewer: Filippo Giunchedi <fgiunch...@wikimedia.org>
Gerrit-Reviewer: Hashar <has...@free.fr>
Gerrit-Reviewer: Mark Bergsma <m...@wikimedia.org>
Gerrit-Reviewer: Reedy <re...@wikimedia.org>
Gerrit-Reviewer: Springle <sprin...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to