|
|
|
@ -22,9 +22,53 @@ import ( |
|
|
|
|
func getHookTemplates() (hookNames, hookTpls, giteaHookTpls []string) { |
|
|
|
|
hookNames = []string{"pre-receive", "update", "post-receive"} |
|
|
|
|
hookTpls = []string{ |
|
|
|
|
fmt.Sprintf("#!/usr/bin/env %s\ndata=$(cat)\nexitcodes=\"\"\nhookname=$(basename $0)\nGIT_DIR=${GIT_DIR:-$(dirname $0)}\n\nfor hook in ${GIT_DIR}/hooks/${hookname}.d/*; do\ntest -x \"${hook}\" && test -f \"${hook}\" || continue\necho \"${data}\" | \"${hook}\"\nexitcodes=\"${exitcodes} $?\"\ndone\n\nfor i in ${exitcodes}; do\n[ ${i} -eq 0 ] || exit ${i}\ndone\n", setting.ScriptType), |
|
|
|
|
fmt.Sprintf("#!/usr/bin/env %s\nexitcodes=\"\"\nhookname=$(basename $0)\nGIT_DIR=${GIT_DIR:-$(dirname $0)}\n\nfor hook in ${GIT_DIR}/hooks/${hookname}.d/*; do\ntest -x \"${hook}\" && test -f \"${hook}\" || continue\n\"${hook}\" $1 $2 $3\nexitcodes=\"${exitcodes} $?\"\ndone\n\nfor i in ${exitcodes}; do\n[ ${i} -eq 0 ] || exit ${i}\ndone\n", setting.ScriptType), |
|
|
|
|
fmt.Sprintf("#!/usr/bin/env %s\ndata=$(cat)\nexitcodes=\"\"\nhookname=$(basename $0)\nGIT_DIR=${GIT_DIR:-$(dirname $0)}\n\nfor hook in ${GIT_DIR}/hooks/${hookname}.d/*; do\ntest -x \"${hook}\" && test -f \"${hook}\" || continue\necho \"${data}\" | \"${hook}\"\nexitcodes=\"${exitcodes} $?\"\ndone\n\nfor i in ${exitcodes}; do\n[ ${i} -eq 0 ] || exit ${i}\ndone\n", setting.ScriptType), |
|
|
|
|
fmt.Sprintf(`#!/usr/bin/env %s |
|
|
|
|
data=$(cat) |
|
|
|
|
exitcodes="" |
|
|
|
|
hookname=$(basename $0) |
|
|
|
|
GIT_DIR=${GIT_DIR:-$(dirname $0)/..} |
|
|
|
|
|
|
|
|
|
for hook in ${GIT_DIR}/hooks/${hookname}.d/*; do |
|
|
|
|
test -x "${hook}" && test -f "${hook}" || continue |
|
|
|
|
echo "${data}" | "${hook}" |
|
|
|
|
exitcodes="${exitcodes} $?" |
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
for i in ${exitcodes}; do |
|
|
|
|
[ ${i} -eq 0 ] || exit ${i} |
|
|
|
|
done |
|
|
|
|
`, setting.ScriptType), |
|
|
|
|
fmt.Sprintf(`#!/usr/bin/env %s |
|
|
|
|
exitcodes="" |
|
|
|
|
hookname=$(basename $0) |
|
|
|
|
GIT_DIR=${GIT_DIR:-$(dirname $0/..)} |
|
|
|
|
|
|
|
|
|
for hook in ${GIT_DIR}/hooks/${hookname}.d/*; do |
|
|
|
|
test -x "${hook}" && test -f "${hook}" || continue |
|
|
|
|
"${hook}" $1 $2 $3 |
|
|
|
|
exitcodes="${exitcodes} $?" |
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
for i in ${exitcodes}; do |
|
|
|
|
[ ${i} -eq 0 ] || exit ${i} |
|
|
|
|
done |
|
|
|
|
`, setting.ScriptType), |
|
|
|
|
fmt.Sprintf(`#!/usr/bin/env %s |
|
|
|
|
data=$(cat) |
|
|
|
|
exitcodes="" |
|
|
|
|
hookname=$(basename $0) |
|
|
|
|
GIT_DIR=${GIT_DIR:-$(dirname $0)/..} |
|
|
|
|
|
|
|
|
|
for hook in ${GIT_DIR}/hooks/${hookname}.d/*; do |
|
|
|
|
test -x "${hook}" && test -f "${hook}" || continue |
|
|
|
|
echo "${data}" | "${hook}" |
|
|
|
|
exitcodes="${exitcodes} $?" |
|
|
|
|
done |
|
|
|
|
|
|
|
|
|
for i in ${exitcodes}; do |
|
|
|
|
[ ${i} -eq 0 ] || exit ${i} |
|
|
|
|
done |
|
|
|
|
`, setting.ScriptType), |
|
|
|
|
} |
|
|
|
|
giteaHookTpls = []string{ |
|
|
|
|
fmt.Sprintf("#!/usr/bin/env %s\n%s hook --config=%s pre-receive\n", setting.ScriptType, util.ShellEscape(setting.AppPath), util.ShellEscape(setting.CustomConf)), |
|
|
|
|