aboutsummaryrefslogtreecommitdiff
path: root/scripts/gitinfo.bash
blob: dc74326c969c9e77f1e8a816b0c58c45ddc60a9c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#/bin/bash

for repository in /repositories/*; do
  cd /repositories/$(basename "$repository")
  gitinfo=$(git cat-file -p @:.gitinfo)

  # does gitinfo exist? expect "fatal" if not
  if [[ $gitinfo == fatal* ]]; then
    echo "No .gitinfo found for $(basename "$repository"). Blanking description."
    echo "" > /repositories/$(basename "$repository")/description
    continue
  fi

  # extract description from gitinfo (json format)
  description=$(echo "$gitinfo" | grep -oP '"description":\s*"\K[^"]+')

  # write description to repository description file
  echo "$description" > /repositories/$(basename "$repository")/description
done