Merge pull request 'Add .gitea/workflows/compressimage.yml' (#3) from rajendra.reddy-patch-2 into testing
All checks were successful
Klc-Learner-Frontend-CD / Deploying code in Server (push) Successful in 1m13s

Reviewed-on: #3
This commit is contained in:
2026-04-13 03:20:52 +00:00

View File

@@ -0,0 +1,52 @@
name: Enforce Image Standards
on:
pull_request:
paths:
- '**.jpg'
- '**.jpeg'
- '**.png'
workflow_dispatch:
jobs:
optimize:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Install Image Tools
run: |
sudo apt-get update
sudo apt-get install -y imagemagick jpegoptim pngquant
# Resize images larger than 1920px (keeps aspect ratio)
- name: Resize Oversized Images
run: |
find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" \) \
-exec mogrify -resize 1920x1920\> {} \;
# Optimize JPEG safely
- name: Optimize JPEG
run: |
find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) \
-exec jpegoptim --strip-all --max=85 {} \;
# Optimize PNG safely
- name: Optimize PNG
run: |
find . -type f -iname "*.png" \
-exec pngquant --force --ext .png --quality=75-90 {} \;
# Commit only if changes exist
- name: Commit Optimized Images
run: |
git config --global user.name "gitea-actions"
git config --global user.email "actions@local"
if [ -n "$(git status --porcelain)" ]; then
git add .
git commit -m "Auto resize and optimize images"
git push origin HEAD:${{ github.head_ref }}
fi