This commit is contained in:
@@ -11,11 +11,18 @@ cd "$root"
|
||||
mapfile -t files < <(grep -Ev '^[[:space:]]*(#|$)' scripts/public-snapshot.allow)
|
||||
[[ ${#files[@]} -gt 0 ]] || exit 1
|
||||
for file in "${files[@]}"; do
|
||||
[[ $file != /* && $file != *..* && -f $file && ! -L $file ]] || { echo "invalid allowlisted path: $file" >&2; exit 1; }
|
||||
git ls-files --error-unmatch -- "$file" >/dev/null
|
||||
[[ $file != /* && $file != *..* ]] || { echo "invalid allowlisted path: $file" >&2; exit 1; }
|
||||
if [[ $file = */ ]]; then
|
||||
directory=${file%/}
|
||||
[[ -d $directory && ! -L $directory ]] || { echo "invalid allowlisted directory: $file" >&2; exit 1; }
|
||||
[[ -n $(git ls-files -- "$directory/") ]] || { echo "empty allowlisted directory: $file" >&2; exit 1; }
|
||||
else
|
||||
[[ -f $file && ! -L $file ]] || { echo "invalid allowlisted path: $file" >&2; exit 1; }
|
||||
git ls-files --error-unmatch -- "$file" >/dev/null
|
||||
fi
|
||||
done
|
||||
mkdir -m 0700 "$output"
|
||||
git archive --format=tar HEAD -- "${files[@]}" | tar -x -C "$output"
|
||||
find "$output" -type d -exec chmod 0755 {} +
|
||||
"$output/scripts/check-licenses.sh"
|
||||
echo "exported ${#files[@]} reviewed files"
|
||||
echo "exported ${#files[@]} reviewed paths"
|
||||
|
||||
Reference in New Issue
Block a user