Do git clean in autorelease-checkout-gerrit-patch 93/64193/7
authorVratko Polak <vrpolak@cisco.com>
Thu, 12 Oct 2017 12:00:59 +0000 (14:00 +0200)
committerVratko Polak <vrpolak@cisco.com>
Mon, 16 Oct 2017 10:21:36 +0000 (12:21 +0200)
For a patch which removes a submodule (project leaving autorelease)
checking out HEAD before autorelease-checkout-gerrit-patch
was causing the project directory be present during verify-autorelease
which could lead to false Verified+1.

Recent example: Removing Yangtools
without updating validate-pom.xml properly.

This change adds forceful clean to autorelease-checkout-gerrit-patch.
The jacoco workaround now has to be applied after such cleaning.

Change-Id: I651a7eaa212835d6cce52ee3706a85f12189f244
Signed-off-by: Vratko Polak <vrpolak@cisco.com>
jjb/autorelease/autorelease-macros.yaml
jjb/autorelease/autorelease-templates.yaml

index 6271d8ae450147b27588ef97320afbde883c8b55..238fe9b5be20f767ac013208132bd49178171abe 100644 (file)
@@ -34,6 +34,9 @@
           # If the project is autorelease then we need to init and update submodules
           if [ "$GERRIT_PROJECT" == "releng/autorelease" ]; then
               git submodule update --init
+              # The previous checkout might have failed to remove directory of a submodule being removed.
+              # See https://stackoverflow.com/a/10761699
+              git clean -dff
           fi
 
 - builder:
index 4e9999b6112fdd8e23b56406f73d290fa9b0a599..dcea3236663fd23f1e64658ee47da86aaecf2712 100644 (file)
           files: '**/*.xml'
 
     builders:
-      - jacoco-nojava-workaround
       - autorelease-checkout-gerrit-patch
+      - jacoco-nojava-workaround
       - autorelease-generate-release-patches
       # In a perfect world projects should be releasing separately and we consume them
       # via a project that pulls the release bits from each project from Nexus.