From 206ea5176f239b993e015b7a5850ca69f34128c8 Mon Sep 17 00:00:00 2001 From: Andrew Cady Date: Tue, 15 Sep 2020 13:26:30 -0400 Subject: Try to fix cgit Uses global /srv/public_git/selfpublish.sh.git/ Creates clone with upstream of local git repo master, if we're in the working directory; otherwise uses d@cryptonomic.net:public_git/ --- selfpublish.sh | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/selfpublish.sh b/selfpublish.sh index 18884a0..42e1bd1 100644 --- a/selfpublish.sh +++ b/selfpublish.sh @@ -2,6 +2,7 @@ set -e DEFAULT_AUTH_TYPE=ed25519 +DEFAULT_UPSTREAM=d@cryptonomic.net:public_git/selfpublish.sh force() { @@ -330,10 +331,26 @@ install_self_to_site() fi } +get_upstream() +{ + if [ -e selfpublish.sh -a -e .git ] + then + UPSTREAM=$(git config --get branch.master.remote 2>/dev/null) + fi + UPSTREAM=${UPSTREAM:-$DEFAULT_UPSTREAM} + [ "$UPSTREAM" ] +} + write_cgit_config() { - cgit_scan_dir=$SITE_DIR/public_git/ - mkdir -p "$cgit_scan_dir" + get_upstream + cgit_scan_dir=/srv/public_git + if ! [ -e "$cgit_scan_dir"/selfpublish.sh ] + then + mkdir -p "$cgit_scan_dir" + (cd "$cgit_scan_dir" + git clone --bare "$UPSTREAM" selfpublish.sh) + fi line="scan-path=$cgit_scan_dir" grep -qxF "$line" /etc/cgitrc || printf '%s\n' "$line" >> /etc/cgitrc } -- cgit v1.2.3