読者です 読者をやめる 読者になる 読者になる

一つのリポジトリに複数サーバの etckeeper で push する

etckeeper

一つのリポジトリに複数サーバの etckeeper で push したい。

etckeeper は一つのサーバから複数のリモートリポジトリに push できるような設定はあるが逆に 複数のサーバから 一つのリモートリポジトリに push できるようにする設定はなさそう。

etckeeper は master しか使わないみたいなのでそのまま使うと push できるのは master のみ。なので下記のように push のフックで push するブランチ先を指定するようにすると一旦はよさそう。

diff --git a/etckeeper/commit.d/99push b/etckeeper/commit.d/99push
index b5418f7..a8d20d9 100755
--- a/etckeeper/commit.d/99push
+++ b/etckeeper/commit.d/99push
@@ -2,7 +2,7 @@
 if [ -n "$PUSH_REMOTE" ]; then
        if [ "$VCS" = git ] && [ -d .git ]; then
                for REMOTE in $PUSH_REMOTE; do
-                       git push "$REMOTE" master || true
+                       git push "$REMOTE" master:mybranch || true
                done
        elif [ "$VCS" = hg ] && [ -d .hg ]; then
                for REMOTE in $PUSH_REMOTE; do