26 lines
569 B
Plaintext
26 lines
569 B
Plaintext
|
#!/bin/sh
|
||
|
|
||
|
progname="$(basename $0)"
|
||
|
|
||
|
if [ -z "$1" ]; then
|
||
|
cat >&2 <<EOF
|
||
|
Usage: $progname <git repo URL>
|
||
|
|
||
|
Finds all garlic/* branches and their current commit of the given
|
||
|
repository and builds the gitTable to be used in nix derivations.
|
||
|
|
||
|
Example:
|
||
|
garlic-git-table ssh://git@bscpm03.bsc.es/garlic/apps/heat.git
|
||
|
EOF
|
||
|
exit 1
|
||
|
fi
|
||
|
|
||
|
echo 'gitTable = {'
|
||
|
echo " # Auto-generated with $progname on $(date --rfc-3339=date)"
|
||
|
git ls-remote $1 'garlic/*' |\
|
||
|
sed 's@refs/heads/@@' |\
|
||
|
awk '{printf "\"%s\" = \"%s\";\n", $2, $1}' |\
|
||
|
column -t -o ' ' |\
|
||
|
sed 's/^/ /'
|
||
|
echo '};'
|