Add git-sync command to fetch from a list of repos

This commit is contained in:
Kenneth Benzie 2023-04-20 12:45:38 +01:00
parent d5ae3dbfc8
commit 7fb360690d
2 changed files with 25 additions and 20 deletions

23
git-sync Executable file
View File

@ -0,0 +1,23 @@
#!/usr/bin/env zsh
autoload -U colors && colors
git_sync=${GIT_SYNC:-~/.config/git-sync}
if [ ! -f "$git_sync" ]; then
echo "$fg[yellow]warning:${reset_color} sync list does not exist: $git_sync"
exit 0
fi
local repos=($(cat $git_sync))
if [ ${#repos[@]} = 0 ]; then
echo "$fg[yellow]warning:${reset_color} sync list is empty: $git_sync"
exit 0
fi
for repo in $repos; do
print -P "$fg[cyan]synchronizing: $repo${reset_color}"
repo="${repo/#\~/$HOME}"
git -C "$repo" fetch
done

View File

@ -1,29 +1,11 @@
---
- name: git clone private config repository
git:
repo: git@code.infektor.net:benie/config.git
dest: ~/.config/private
version: master
- name: git install macOS packages
when: ansible_os_family == "Darwin"
homebrew:
name: gpg
state: latest
- name: git intall pip packages
pip:
name: git+https://github.com/kbenzie/git-issue.git
extra_args: --user
state: latest
- name: git create symbolic links
file:
state: link
src: '{{item.src}}'
dest: '{{item.dest}}'
with_items:
- src: ~/.config/git/config
dest: ~/.gitconfig
- src: ~/.config/git/_git-changes
dest: ~/.local/share/zsh/site-functions/_git-changes
- src: ~/.config/git/git-sync
dest: ~/.local/bin/git-sync