Guest User

Untitled

a guest
Apr 23rd, 2018
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.73 KB | None | 0 0
  1. #!/bin/bash
  2. set -e -o pipefail
  3.  
  4. tmpfile=$(mktemp -t gopkgsize.XXXXX)
  5. sizesfile=$(mktemp -t gopktsize-output.XXXXX)
  6.  
  7. trap "rm -f $tmpfile" EXIT
  8.  
  9. go build -work -v -x "$@" 2>$tmpfile
  10.  
  11. # grab WORK=
  12. fline=$(head -1 $tmpfile)
  13. if [[ "$fline" != WORK=* ]]; then
  14. echo "unexpected build log line: '$fline'"
  15. exit 1
  16. fi
  17. eval "$fline"
  18.  
  19. #linkfile=$tmpfile
  20. linkfile=$WORK/b001/importcfg.link
  21. for p in $(grep 'packagefile ' < $linkfile | sort -u | cut -f2 -d' '); do
  22. pkg=$(cut -f1 -d'=' <<< "$p")
  23. f=$(cut -f2 -d'=' <<< "$p")
  24. fp=$(eval "echo $f")
  25. sz=$(du -hxs $fp | awk '{print $1}')
  26. echo $sz $pkg >> $sizesfile
  27. done
  28.  
  29. sort -rh < $sizesfile
  30.  
  31. echo "consider removing workdir $WORK" >&2
  32. echo "package size report written to $sizesfile" >&2
Add Comment
Please, Sign In to add comment