From 664ab811b22f550effee43e5d981a26b6651042a Mon Sep 17 00:00:00 2001
From: Niko Ehrenfeuchter <nikolaus.ehrenfeuchter@unibas.ch>
Date: Mon, 26 Feb 2018 15:51:18 +0100
Subject: [PATCH] Make error handling in Prepare-Build more robust.

---
 Scripts/Prepare-Build.ps1 | 20 +++++++++++++-------
 1 file changed, 13 insertions(+), 7 deletions(-)

diff --git a/Scripts/Prepare-Build.ps1 b/Scripts/Prepare-Build.ps1
index ca337d2..1276fdc 100644
--- a/Scripts/Prepare-Build.ps1
+++ b/Scripts/Prepare-Build.ps1
@@ -3,24 +3,30 @@ Param(
     [Parameter(Mandatory=$True)][string] $ProjectDir
 )
 
+
+$ErrorActionPreference = "Stop"
+
 $oldpwd = pwd
 cd $ProjectDir -ErrorAction Stop
 
 try {
-    $CommitName = git describe --tags
-    $GitStatus = git status --porcelain
+    $CommitName = & git describe --tags
+    if (-Not $?) { throw }
+    $GitStatus = & git status --porcelain
+    if (-Not $?) { throw }
+
+    if ($GitStatus.Length -gt 0) {
+        Write-Output "NOTE: repository has uncommitted changes!"
+        $CommitName = "$($CommitName)-unclean"
+    }
 }
 catch {
     $CommitName = "commit unknown"
     $GitStatus = "status unknown"
+    Write-Output "$(">"*8) Running git failed, using default values! $("<"*8)"
 }
 
 
-if ($GitStatus.Length -gt 0) {
-    Write-Output "NOTE: repository has uncommitted changes!"
-    $CommitName = "$($CommitName)-unclean"
-}
-
 $Date = Get-Date -Format 'yyyy-MM-dd HH:mm:ss'
 
 
-- 
GitLab