stockholm/krebs/5pkgs/simple/github-hosts-sync/src/hosts-sync

34 lines
716 B
Plaintext
Raw Normal View History

#! /bin/sh
2019-05-17 11:06:36 +00:00
set -efu
exec >&2
2019-05-17 11:06:36 +00:00
hosts_srcdir=$GITHUB_HOST_SYNC_SRCDIR
hosts_worktree=${GITHUB_HOST_SYNC_WORKTREE-/tmp/hosts}
2019-05-17 11:43:13 +00:00
hosts_url=${GITHUB_HOST_SYNC_URL-git@github.com:krebs/hosts.git}
user_mail=${GITHUB_HOST_SYNC_USER_MAIL-$LOGNAME@$(hostname)}
user_name=${GITHUB_HOST_SYNC_USER_NAME-$LOGNAME}
2019-05-17 11:06:36 +00:00
test -d "$hosts_worktree" || git clone "$hosts_url" "$hosts_worktree"
2019-05-17 11:06:36 +00:00
cd "$hosts_worktree"
2019-05-17 11:06:36 +00:00
git pull
2019-05-17 11:06:36 +00:00
rsync \
--chmod D755,F644 \
--delete-excluded \
--filter 'protect .git' \
--recursive \
--verbose \
"$hosts_srcdir/" \
.
2019-05-17 11:06:36 +00:00
git add .
2019-05-17 11:06:36 +00:00
if test -n "$(git status --porcelain)"; then
git config user.email "$user_mail"
git config user.name "$user_name"
2019-05-17 11:06:36 +00:00
git commit -m bump
git push
fi