blob: 5fa902e19b2acdf0456850506d7df18ba9c3711a [file] [log] [blame]
Mike Marchettif94dd8a2017-11-06 11:04:38 -05001#!/bin/bash
2if [ $# -ne 2 ]; then
3 echo "Usage $0 <repo> <outfile>"
4 exit 1
5fi
6
7REPO="$1"
8OUTFILE=$2
9
10modules="devops openvim RO SO UI IM osmclient"
11list=""
12for i in $modules; do
13 if [ $REPO == "$i" -o $REPO == "all" ]; then
14 list=$REPO
15 break
16 fi
17done
18
19[ $REPO == "all" ] && list=$modules
20
21if [ -z "$list" ]; then
22 echo "Repo must be one of these: $modules all"
23 exit 1
24fi
25
Mike Marchetti3a0fc422017-11-17 13:38:47 -050026TEMPDIR=$(mktemp -d)
27
Mike Marchettif94dd8a2017-11-06 11:04:38 -050028echo "<h1>OSM Changelog</h1>" >> $OUTFILE
29for i in $list; do
Mike Marchetti3a0fc422017-11-17 13:38:47 -050030 REPODIR=$TEMPDIR/$i
Mike Marchettif94dd8a2017-11-06 11:04:38 -050031 echo
32 echo $i
Mike Marchetti3a0fc422017-11-17 13:38:47 -050033 if [ ! -d $REPODIR ]; then
34 git clone https://osm.etsi.org/gerrit/osm/$i $REPODIR
Mike Marchettif94dd8a2017-11-06 11:04:38 -050035 fi
Mike Marchetti3a0fc422017-11-17 13:38:47 -050036 git -C $REPODIR checkout master
37 git -C $REPODIR pull --rebase
38 git -C $REPODIR fetch --tags
39 TAG_START=$(git -C $REPODIR tag | sort -Vr | head -2 | sort -V | head -1)
40 TAG_END=$(git -C $REPODIR tag | sort -Vr | head -1)
Mike Marchettif94dd8a2017-11-06 11:04:38 -050041 echo "<h2>Changes for $i tag: ${TAG_START}..${TAG_END}</h2>" >> $OUTFILE
42 #git -C $i log --pretty=format:"* %h; author: %cn; date: %ci; subject:%s" ${TAG_START}..${TAG_END} >> $OUTFILE
Mike Marchetti3a0fc422017-11-17 13:38:47 -050043 git -C $REPODIR log --pretty=format:"<li> <a href=https://osm.etsi.org/gitweb/?p=osm/$i.git;a=commitdiff;h=%H>%h &bull;</a> %s</li> " --reverse ${TAG_START}..${TAG_END} >> $OUTFILE
Mike Marchettif94dd8a2017-11-06 11:04:38 -050044 echo "" >> $OUTFILE
45done
46
47exit 0