On 9 September 2017 at 06:45, Fam Zheng <f...@redhat.com> wrote: > Signed-off-by: Fam Zheng <f...@redhat.com> > Message-Id: <20170905021201.25684-4-f...@redhat.com> > --- > scripts/archive-source.sh | 31 +++++++++++++++++++++++++++++++ > 1 file changed, 31 insertions(+) > create mode 100755 scripts/archive-source.sh > > diff --git a/scripts/archive-source.sh b/scripts/archive-source.sh > new file mode 100755 > index 0000000000..1de369532e > --- /dev/null > +++ b/scripts/archive-source.sh > @@ -0,0 +1,31 @@ > +#!/bin/sh > +# > +# Author: Fam Zheng <f...@redhat.com> > +# > +# Create archive of source tree, including submodules > +# > +# This code is licensed under the GPL version 2 or later. See > +# the COPYING file in the top-level directory.
So is this the script that for instance Mike Roth would use to create the release tarballs? If it isn't, should it be? Is it intended for end users to create tarballs with, or is it really just a helper script for the docker stuff? If the latter, it would be helpful to say so. If the former, it could really use more usage information/documentation... > + > +set -e > + > +if test $# -lt 1; then > + echo "Usage: $0 <output>" > + exit 1 > +fi > + > +submodules=$(git submodule foreach --recursive --quiet 'echo $name') > + > +if test -n "$submodules"; then > + { > + git ls-files > + for sm in $submodules; do > + (cd $sm; git ls-files) | sed "s:^:$sm/:" > + done > + } | grep -x -v $(for sm in $submodules; do echo "-e $sm"; done) > $1.list Supporting '-e something' in a tar -T listfile seems to be GNU tar specific. Do we care? > +else > + git ls-files > $1.list > +fi This will blow up if we ever have a file in the repo that starts with a '-'. Do we care? > + > +tar -cf $1 -T $1.list > +rm $1.list This is missing a lot of quoting for $1, so it will go wrong if there's a space in that filename argument. thanks -- PMM