sometimes codesign doesn't like existing metadata

This commit is contained in:
Jacob Heider 2023-02-12 21:55:35 -05:00 committed by Jacob Heider
parent 7ff34e317e
commit c39383da2d

View file

@ -42,12 +42,15 @@ runs:
shell: bash shell: bash
run: | run: |
for PATH in $PATHS; do for PATH in $PATHS; do
/usr/bin/find $PATH -name '*.so' -or -name '*.dylib' -print0 | \ LIBS="$(/usr/bin/find $PATH -name '*.so' -or -name '*.dylib')"
/usr/bin/xargs -0 /usr/bin/codesign -s "$IDENTITY" --force -v --deep --timestamp --preserve-metadata=entitlements -o runtime || true
if test -d $PATH/bin; then if test -d $PATH/bin; then
/usr/bin/find $PATH/bin -type f -print0 | \ BINS="$(/usr/bin/find $PATH/bin -type f)"
/usr/bin/xargs -0 /usr/bin/codesign -s "$IDENTITY" -v --force --deep --timestamp --preserve-metadata=entitlements -o runtime || true
fi fi
for FILE in $LIBS $BINS; do
BASENAME="$(/usr/bin/basename "$FILE")"
/usr/bin/codesign -s "$IDENTITY" --force -v --deep --timestamp --preserve-metadata=entitlements -o runtime "$FILE" || true
done
done done
env: env:
PATHS: ${{ inputs.paths }} PATHS: ${{ inputs.paths }}
@ -63,6 +66,12 @@ runs:
BINS="$(/usr/bin/find $PATH/bin -type f)" BINS="$(/usr/bin/find $PATH/bin -type f)"
fi fi
for SIGNED in $LIBS $BINS; do for SIGNED in $LIBS $BINS; do
# FIXME: `deno` compiled binaries don't currently pass validation.
# https://github.com/denoland/deno/issues/17753
if test "$(/usr/bin/basename "$SIGNED")" = "tea"; then
continue
fi
/usr/bin/codesign -vvv --deep --strict "$SIGNED" /usr/bin/codesign -vvv --deep --strict "$SIGNED"
done done
done done