57 lines
1.7 KiB
Plaintext
57 lines
1.7 KiB
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
# adc for someone with admin privs to invoke "expand" on other users.
|
||
|
|
||
|
# This doc block as "WHY", "HOW", and "CAVEATS" sections; I mention that only
|
||
|
# for those people with very small xterms who may miss the CAVEATS section
|
||
|
# otherwise...!
|
||
|
|
||
|
# WHY
|
||
|
# ===
|
||
|
|
||
|
# ...because info has it, and expand doesn't :-)
|
||
|
|
||
|
# (Possible question: Why not add that capability to expand instead to be
|
||
|
# consistent? Probable answer: how about we go the other way and make
|
||
|
# "info" also work like this, and remove that code from core? I like
|
||
|
# having less less code in core!)
|
||
|
|
||
|
# HOW
|
||
|
# ===
|
||
|
|
||
|
# ssh gitolite su-expand . user1 user2 user3
|
||
|
|
||
|
# note that the first argument is still treated as a "pattern", so at
|
||
|
# least put in a "." for a catch-all pattern. Also see caveats for
|
||
|
# patterns below.
|
||
|
|
||
|
# This will output the same thing as "ssh git@server expand ." performed
|
||
|
# by the individual users
|
||
|
|
||
|
# CAVEATS
|
||
|
# =======
|
||
|
|
||
|
# (1) LIMITS TO THE PATTERN
|
||
|
|
||
|
# Due to this being an ADC, and ADC arguments being very, Very, VERY,
|
||
|
# stricly limited, you won't be able to use any regex meta characters
|
||
|
# expect ".". I'll worry about changing it if enough people complain.
|
||
|
|
||
|
# (2) NAME OF THIS SCRIPT
|
||
|
|
||
|
# please name this script something other than "expand", because we can't
|
||
|
# have name clashes between internal commands (info, expand,
|
||
|
# (get|set)(perms|desc), etc) and admin-defined (external) commands. I'm
|
||
|
# calling it su-expand; feel free to change it.
|
||
|
|
||
|
. $(dirname $0)/adc.common-functions
|
||
|
|
||
|
get_rights_and_owner gitolite-admin
|
||
|
[ -z "$perm_write" ] && die "just *what* are you trying to pull here, $GL_USER?"
|
||
|
pat="$1"; shift
|
||
|
|
||
|
for user
|
||
|
do
|
||
|
SSH_ORIGINAL_COMMAND="expand $pat" $GL_BINDIR/gl-auth-command $user
|
||
|
done
|