gitlab pre-receive hook пользовательский скрипт bash - PullRequest
0 голосов
/ 28 августа 2018

Мне нужна помощь о том, как написать bash-скрипт для ловушки предварительного приема на стороне сервера gitlab с приведенной ниже настройкой (т. Е. Пользователь должен ввести нижеприведенные детали перед отправкой), если этот коммит не следует следующим вещам, которые коммит должен быть отклонен.

  Fault Id: <GIT issue id>
  Epic JIRA id : <somename>
  Comments: <free text>

Мой пример сценария:

#! /bin/bash 
echo "Checking whether git commit has following release pattern or not !!" 
ref_name=$1 
ref=$3 
msg=$(git log --pretty=%B -n 1 $ref | sed '$d') 
result=$(git log --pretty=%B -n 1 $ref | sed '$d' | grep releaseTag=v.*) 
echo "New ref received, ref is: $ref to ref name: $ref_name and commit msg is: $$ msg" 
if [[ -z "${result}" ]] 
then 
echo "######## Requested git commit msg didn't follow the pattern, hence rejecting, follow this pattern releaseTag=v1.11 #########" 
exit 1 
fi
...