Refactor the repo sync script
This commit is contained in:
parent
e0c33b01b7
commit
9f8e6edf23
1 changed files with 22 additions and 12 deletions
|
|
@ -1,4 +1,7 @@
|
||||||
#! /usr/bin/sh
|
#! /usr/bin/bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
IFS=$'\n\t'
|
||||||
|
|
||||||
REPO_ROOT_FILE="$(systemd-path user-state-private)"/repo-roots/repo-roots
|
REPO_ROOT_FILE="$(systemd-path user-state-private)"/repo-roots/repo-roots
|
||||||
|
|
||||||
|
|
@ -16,14 +19,21 @@ sync_repo () {
|
||||||
echo
|
echo
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ "list" = "$1" ]; then
|
case "${1:-sync}" in
|
||||||
while read -r repo_root; do
|
"list")
|
||||||
list_repos "${repo_root}"
|
while read -r repo_root; do
|
||||||
done < "${REPO_ROOT_FILE}"
|
list_repos "${repo_root}"
|
||||||
else
|
done < "${REPO_ROOT_FILE}"
|
||||||
while read -r repo_root; do
|
;;
|
||||||
for repo in $(list_repos "${repo_root}"); do
|
"sync")
|
||||||
sync_repo "${repo}"
|
while read -r repo_root; do
|
||||||
done
|
for repo in $(list_repos "${repo_root}"); do
|
||||||
done < "${REPO_ROOT_FILE}"
|
sync_repo "${repo}"
|
||||||
fi
|
done
|
||||||
|
done < "${REPO_ROOT_FILE}"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo Unknown option \""$1"\"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue