Skip to contentSkip to conversation

create-pull-request: handle empty ODIR

PATCH New Petter Mabäcker 1 participant 2 messages Nov 24, 2015

lore
Share & tools
lore
#0 lore raw

cover create-pull-request: handle empty ODIR

The following changes since commit 1b25a70991589ed1f123015c16ee4806c46e3199:

yocto-project-qs, ref-manual, poky.ent: CentOS Package updates (2015-11-18 16:42:22 +0000)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib petmab/fix_empty_odir
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=petmab/fix_empty_odir

Petter Mabäcker (1):
create-pull-request: handle empty ODIR

 scripts/create-pull-request | 8 ++++++++
 1 file changed, 8 insertions(+)
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/1 create-pull-request: handle empty ODIR

In some situations you might end-up with an empty ODIR (pull-xx/). The most common reason is that you have applied your patches on 'master' branch (or you are by mistake standing on the 'master' branch), this will result in the default behavior that 'git format-patch' will try to diff master..master.

Solve this by aborting the script with a proper error code and message if ODIR is empty after the 'git format-patch' call (that is expected to generate the cover-letter and patches).

---
 scripts/create-pull-request | 8 ++++++++
 1 file changed, 8 insertions(+)
scripts/create-pull-request +8 -0
index 19ba588..a3744cc 100755
@@ -185,6 +185,14 @@ fi
 # Generate the patches and cover letter
 git format-patch $extraopts -M40 --subject-prefix="$PREFIX" -n -o $ODIR --thread=shallow --cover-letter $RELATIVE_TO..$COMMIT_ID > /dev/null
 
+if [ -z "$(ls -A $ODIR 2> /dev/null)" ]; then
+    echo "ERROR: $ODIR is empty, no cover letter and patches was generated!"
+    echo "       This is most likely due to that \$RRELATIVE_TO..\$COMMIT_ID"
+    echo "       ($RELATIVE_TO..$COMMIT_ID) don't contain any differences."
+    rmdir $ODIR
+    exit 1
+fi
+
 [ -n "$RELDIR" ] && cd $pdir
 
 # Customize the cover letter
Signature · 1 line
1.9.1