@@ -391,7 +391,6 @@ jobs:
391391 'python_version': py_ver,
392392 'library_version': lib_ver,
393393 'preview_url': f'https://storage.googleapis.com/pyplots-images/plots/{spec}/{lib}/plot.png',
394- 'preview_thumb': f'https://storage.googleapis.com/pyplots-images/plots/{spec}/{lib}/plot_thumb.png',
395394 'preview_html': preview_html if preview_html != 'null' else None,
396395 'quality_score': None,
397396 'review': {'strengths': [], 'weaknesses': []}
@@ -448,13 +447,15 @@ jobs:
448447
449448 source .venv/bin/activate
450449
451- # Process PNG: optimize and create thumbnail
450+ # Optimize PNG and generate responsive variants (400/800/1200 x png/webp + full webp)
452451 python -m core.images process \
453452 "$IMPL_DIR/plot.png" \
453+ "$IMPL_DIR/plot.png"
454+ python -m core.images responsive \
454455 "$IMPL_DIR/plot.png" \
455- "$IMPL_DIR/plot_thumb.png "
456+ "$IMPL_DIR/"
456457
457- echo "::notice::Processed images: optimized + thumbnail created"
458+ echo "::notice::Processed images: optimized + responsive variants created"
458459 ls -la "$IMPL_DIR/"
459460
460461 # ========================================================================
@@ -532,25 +533,18 @@ jobs:
532533 echo "$GCS_CREDENTIALS" > /tmp/gcs-key.json
533534 gcloud auth activate-service-account --key-file=/tmp/gcs-key.json
534535
535- # Upload PNG (with watermark )
536+ # Upload all plot images (original + responsive variants )
536537 if [ -f "$IMPL_DIR/plot.png" ]; then
537- gsutil -h "Cache-Control:public, max-age=604800" cp "$IMPL_DIR/plot.png" "${STAGING_PATH}/plot.png "
538- gsutil acl ch -u AllUsers:R "${STAGING_PATH}/plot.png " 2>/dev/null || true
538+ gsutil -m - h "Cache-Control:public, max-age=604800" cp "$IMPL_DIR" /plot* .png "$IMPL_DIR"/plot*.webp "${STAGING_PATH}/"
539+ gsutil -m acl ch -u AllUsers:R "${STAGING_PATH}/plot* " 2>/dev/null || true
539540 echo "png_url=${PUBLIC_URL}/plot.png" >> $GITHUB_OUTPUT
540541 echo "uploaded=true" >> $GITHUB_OUTPUT
542+ echo "::notice::Uploaded plot.png + responsive variants (PNG + WebP)"
541543 else
542544 echo "::error::No plot.png found - cannot continue without image"
543545 exit 1
544546 fi
545547
546- # Upload thumbnail
547- if [ -f "$IMPL_DIR/plot_thumb.png" ]; then
548- gsutil -h "Cache-Control:public, max-age=604800" cp "$IMPL_DIR/plot_thumb.png" "${STAGING_PATH}/plot_thumb.png"
549- gsutil acl ch -u AllUsers:R "${STAGING_PATH}/plot_thumb.png" 2>/dev/null || true
550- echo "thumb_url=${PUBLIC_URL}/plot_thumb.png" >> $GITHUB_OUTPUT
551- echo "::notice::Uploaded thumbnail"
552- fi
553-
554548 # Upload HTML (interactive libraries)
555549 if [ -f "$IMPL_DIR/plot.html" ]; then
556550 gsutil -h "Cache-Control:public, max-age=604800" cp "$IMPL_DIR/plot.html" "${STAGING_PATH}/plot.html"
0 commit comments