diff options
Diffstat (limited to '.forgejo/workflows')
| -rw-r--r-- | .forgejo/workflows/build-iso.yml | 22 |
1 files changed, 16 insertions, 6 deletions
diff --git a/.forgejo/workflows/build-iso.yml b/.forgejo/workflows/build-iso.yml index 8af02c4..21275bf 100644 --- a/.forgejo/workflows/build-iso.yml +++ b/.forgejo/workflows/build-iso.yml @@ -174,12 +174,21 @@ jobs: run: | set -u sudo modprobe loop || true + sudo modprobe squashfs || true ISO_FILE=$(ls output/*.iso | head -1) MOUNT_DIR=$(mktemp -d) + SFS_DIR=$(mktemp -d) echo "ISO: $ISO_FILE" if ! sudo mount -o loop,ro "$ISO_FILE" "$MOUNT_DIR" 2>/dev/null; then echo "FIGYELMEZTETES: ISO mountolas sikertelen, ellenorzes kihagyva" - rmdir "$MOUNT_DIR" 2>/dev/null || true + rmdir "$MOUNT_DIR" "$SFS_DIR" 2>/dev/null || true + exit 0 + fi + SFS_FILE=$(find "$MOUNT_DIR" -name "airootfs.sfs" -type f 2>/dev/null | head -1) + if [ -z "$SFS_FILE" ] || ! sudo mount -o loop,ro "$SFS_FILE" "$SFS_DIR" 2>/dev/null; then + echo "FIGYELMEZTETES: airootfs.sfs mountolas sikertelen, ellenorzes kihagyva" + sudo umount "$MOUNT_DIR" 2>/dev/null || true + rmdir "$MOUNT_DIR" "$SFS_DIR" 2>/dev/null || true exit 0 fi @@ -187,17 +196,18 @@ jobs: TOTAL=0 while IFS= read -r bin; do TOTAL=$((TOTAL+1)) - result=$(sudo chroot "$MOUNT_DIR" ldd "${bin#$MOUNT_DIR}" 2>/dev/null | grep "not found" || true) + result=$(sudo chroot "$SFS_DIR" ldd "${bin#$SFS_DIR}" 2>/dev/null | grep "not found" || true) if [ -n "$result" ]; then echo "TOROTT: $bin" echo "$result" BROKEN=1 fi - done < <(find "$MOUNT_DIR" -type f \( -name "*.so*" -o -perm /111 \) 2>/dev/null | xargs -r file 2>/dev/null | grep ELF | cut -d: -f1 || true) + done < <(find "$SFS_DIR" -type f \( -name "*.so*" -o -perm /111 \) 2>/dev/null | xargs -r file 2>/dev/null | grep ELF | cut -d: -f1 || true) echo "Vizsgalt binarisok: $TOTAL" + sudo umount "$SFS_DIR" 2>/dev/null || sudo umount -l "$SFS_DIR" 2>/dev/null || true sudo umount "$MOUNT_DIR" 2>/dev/null || sudo umount -l "$MOUNT_DIR" 2>/dev/null || true - rmdir "$MOUNT_DIR" 2>/dev/null || true + rmdir "$MOUNT_DIR" "$SFS_DIR" 2>/dev/null || true if [ "$BROKEN" -eq 1 ]; then echo "HIBA: Torott library linkek az ISO-ban." @@ -225,10 +235,10 @@ jobs: echo "${{ secrets.VPS_RELEASE_KEY }}" > ~/.ssh/vps_release_key chmod 600 ~/.ssh/vps_release_key - scp -i ~/.ssh/vps_release_key -P ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=no \ + scp -i ~/.ssh/vps_release_key -P ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=accept-new \ "$ISO_FILE" "${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }}:${{ secrets.VPS_RELEASES_PATH }}/${ISO_NAME}" - ssh -i ~/.ssh/vps_release_key -p ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=no \ + ssh -i ~/.ssh/vps_release_key -p ${{ secrets.VPS_PORT }} -o StrictHostKeyChecking=accept-new \ ${{ secrets.VPS_USER }}@${{ secrets.VPS_HOST }} "ls -t ${{ secrets.VPS_RELEASES_PATH }}/*.iso 2>/dev/null | tail -n +4 | xargs -r rm -f" echo "ISO feltoltve: https://release.rp1.hu/${ISO_NAME}" |