Redmineの $git pullが遅いので。。

script/runner "Repository.fetch_changesets" -e production だと全てのプロジェクトのリポジトリを更新して遅いので、指定のプロジェクトだけを更新するようにした。

こんな感じにシェルを作成して、コードの指定がある場合は指定プロジェクトのみを更新するようにした。

  • hooks/post-update
#!/bin/sh
/usr/local/bin/post-commit.sh [プロジェクトコード]
  • post-commit.sh
#!/bin/sh

APIKEY="APIのKEY"
ID=$1

if [ $# = 0 ]; then
/usr/local/bin/ruby /var/lib/redmine/script/runner "Repository.fetch_changesets" -e production
else 
/usr/bin/wget -q -O /dev/null "https://[RedmineのURL]/sys/fetch_changesets?key=${APIKEY}&id=${ID}"
fi