aboutsummaryrefslogtreecommitdiff
path: root/bin/mirror-sync
blob: e391030360c2542e74d6800d248f672e429c4f37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/bin/bash

REPO_DIR="/root/shifoogit/repos"

echo "Syncing all mirrors in $REPO_DIR"

for repo in "$REPO_DIR"/*; do
    if [ -d "$repo" ] && [ -f "$repo/config" ]; then
        echo "Updating $(basename "$repo") ..."

        setpriv --reuid 1000 --regid 1000 --clear-groups git -C "$repo" remote update --prune

        # Update agefile
        LAST_COMMIT=$(git -C "$repo" log -1 --format="%ci")
        mkdir -p "$repo/info/web"
        echo "$LAST_COMMIT" > "$repo/info/web/last-modified"
        chown -R 1000:1000 "$repo/info"
    fi
done

echo "All mirrors updated."