mirror of
https://github.com/harvard-edge/cs249r_book.git
synced 2026-05-08 02:28:25 -05:00
fix(workflow): correct PDF compression script paths
- Fix relative path from quarto/_build/pdf to ../../publish/compress_pdf.py - Update both Linux and Windows PDF compression steps - Add debug output to verify script location - Matches EPUB compression path fix pattern - Resolves 'No such file or directory' errors in PDF builds
This commit is contained in:
39
.github/workflows/quarto-build-container.yml
vendored
39
.github/workflows/quarto-build-container.yml
vendored
@@ -269,11 +269,29 @@ jobs:
|
||||
run: |
|
||||
if [ -f "Machine-Learning-Systems.pdf" ]; then
|
||||
echo "📉 Compressing PDF with professional compression tool..."
|
||||
python3 ${{ github.workspace }}/quarto/publish/compress_pdf.py \
|
||||
--input "Machine-Learning-Systems.pdf" \
|
||||
--output "compressed.pdf" \
|
||||
--quality minimal \
|
||||
--verbose
|
||||
echo "🔍 DEBUG: PWD=$(pwd)"
|
||||
echo "🔍 DEBUG: Checking for compress script:"
|
||||
ls -la ../../publish/compress_pdf.py || echo "❌ Script not found at ../../publish/"
|
||||
|
||||
# Use relative path from current working directory (quarto/_build/pdf)
|
||||
SCRIPT_PATH="../../publish/compress_pdf.py"
|
||||
if [ -f "$SCRIPT_PATH" ]; then
|
||||
echo "✅ Using script at: $SCRIPT_PATH"
|
||||
python3 "$SCRIPT_PATH" \
|
||||
--input "Machine-Learning-Systems.pdf" \
|
||||
--output "compressed.pdf" \
|
||||
--quality minimal \
|
||||
--verbose
|
||||
else
|
||||
# Fallback to absolute path via github.workspace
|
||||
SCRIPT_PATH="${{ github.workspace }}/quarto/publish/compress_pdf.py"
|
||||
echo "🔄 Trying fallback path: $SCRIPT_PATH"
|
||||
python3 "$SCRIPT_PATH" \
|
||||
--input "Machine-Learning-Systems.pdf" \
|
||||
--output "compressed.pdf" \
|
||||
--quality minimal \
|
||||
--verbose
|
||||
fi
|
||||
mv compressed.pdf Machine-Learning-Systems.pdf
|
||||
echo "✅ PDF compression completed"
|
||||
else
|
||||
@@ -288,7 +306,16 @@ jobs:
|
||||
docker run --rm -v "$($PWD.Path):C:\workspace" -w "C:\workspace\quarto\${{ matrix.output_dir }}" ${{ env.CONTAINER_IMAGE }} powershell -Command "
|
||||
if (Test-Path 'Machine-Learning-Systems.pdf') {
|
||||
Write-Host '📉 Compressing PDF with professional compression tool...'
|
||||
python C:\workspace\quarto\publish\compress_pdf.py --input 'Machine-Learning-Systems.pdf' --output 'compressed.pdf' --quality minimal --verbose
|
||||
Write-Host '🔍 DEBUG: Current directory:'
|
||||
Get-Location
|
||||
Write-Host '🔍 DEBUG: Checking for script at relative path:'
|
||||
if (Test-Path '..\..\publish\compress_pdf.py') {
|
||||
Write-Host '✅ Found script at ..\..\publish\compress_pdf.py'
|
||||
python ..\..\publish\compress_pdf.py --input 'Machine-Learning-Systems.pdf' --output 'compressed.pdf' --quality minimal --verbose
|
||||
} else {
|
||||
Write-Host '🔄 Trying fallback path: C:\workspace\quarto\publish\compress_pdf.py'
|
||||
python C:\workspace\quarto\publish\compress_pdf.py --input 'Machine-Learning-Systems.pdf' --output 'compressed.pdf' --quality minimal --verbose
|
||||
}
|
||||
if (Test-Path 'compressed.pdf') {
|
||||
Move-Item -Force 'compressed.pdf' 'Machine-Learning-Systems.pdf'
|
||||
Write-Host '✅ PDF compression completed'
|
||||
|
||||
Reference in New Issue
Block a user