quartz/.github/workflows/setup.yaml

43 lines
1.8 KiB
YAML

name: Setup Directory Structure
on:
workflow_dispatch:
permissions:
contents: write
jobs:
set-dir:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
with:
fetch-depth: 0
- name: Move Images
run: |
NEW_FOLDERS=$(git diff --name-only HEAD~1 HEAD | grep '^content/' | cut -d'/' -f2 | sort | uniq)
for FOLDER in $NEW_FOLDERS; do
if [ -d "content/$FOLDER" ]; then
mkdir -p "content/imagens/$FOLDER"
if find "content/$FOLDER" -type f \( -name '*.png' -o -name '*.jpg' -o -name '*.jpeg' -o -name '*.gif' \) -print -quit | grep -q .; then
find "content/$FOLDER" -type f \( -name '*.png' -o -name '*.jpg' -o -name '*.jpeg' -o -name '*.gif' \) -print0 | xargs -0 -I {} mv "{}" "content/imagens/$FOLDER/"
else
echo "Nenhuma imagem para mover em content/$FOLDER"
fi
fi
done
- name: Commit and push changes
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git fetch origin v4
git merge origin/v4 --no-edit
git add content
if [ -n "$(git status --porcelain)" ]; then
git commit -m "chore: Move images to structured folders"
git push origin v4
else
echo "No changes to commit."
fi