[yocto] [yocto-autobuilder][PATCH] PublishArtifacts.py: fix file check to work under dash

Randle, William C william.c.randle at intel.com
Mon Aug 22 07:40:54 PDT 2016


On Mon, 2016-08-22 at 11:28 +0100, Joshua Lock wrote:

On Sat, 2016-08-20 at 15:50 -0700, Bill Randle wrote:


An earlier patch (ed3857990) to check for existing msd5sum files
worked
fine when tested under bash, but failed with an error message about
[[
not found when run under dash. Updated the test to not rely on
bashisms.

Signed-off-by: Bill Randle <william.c.randle at intel.com<mailto:william.c.randle at intel.com>>
---
 lib/python2.7/site-
packages/autobuilder/buildsteps/PublishArtifacts.py | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/python2.7/site-
packages/autobuilder/buildsteps/PublishArtifacts.py
b/lib/python2.7/site-
packages/autobuilder/buildsteps/PublishArtifacts.py
index d8b554f..58048f0 100644
--- a/lib/python2.7/site-
packages/autobuilder/buildsteps/PublishArtifacts.py
+++ b/lib/python2.7/site-
packages/autobuilder/buildsteps/PublishArtifacts.py
@@ -259,8 +259,9 @@ class PublishArtifacts(ShellCommand):
     def generateMD5cmd(self, artifact, deploy_dir):
         cmd = ""
         if os.environ.get('GEN_IMG_MD5') == "True":
+            # crufty test for existing md5sum file required for dash
shell
             cmd += "for x in `find " + deploy_dir + " -maxdepth 5
-type f`;"
-            cmd += "do if [[ $x != *.md5sum ]]; then md5sum $x >> "
+ "$x.md5sum; fi; done;"
+            cmd += "do echo ${x} | grep -q '\.md5sum'; if [ $? -ne 0
]; then md5sum $x >> " + "$x.md5sum; fi; done;"
         return cmd



Rather than a "crufty" test, how about using POSIX sh parameter
expansion, i.e.

$ foo="blah.bar"
$ if [ ${foo##*.} == bar ]; then echo "bar!"; fi
bar!

Therefore, the patch would be something like (untested):

cmd += "if [ ${x##*.} == .md5sum ]; then md5sum $x >> $x.md5sum; fi"

Regards,

Joshua




Good suggestion! The correct (tested) patch would be:
  if [ ${x##*.} != md5sum ]; then md5sum $x >> $x.md5sum; fi"

Updated patch coming shortly.

   -Bill
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/yocto/attachments/20160822/b37fcbdb/attachment.html>


More information about the yocto mailing list