From fadaa7704080c8c1ac95afd2ffac4ea1ad90bea6 Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Sat, 15 Feb 2025 16:47:38 +0100 Subject: [PATCH] ci: run compression and generation of icons.md and file-tree before pr creation --- .github/workflows/on_icon_addition_approved.yml | 12 ++++++++++++ .github/workflows/on_icon_update_approved.yml | 12 ++++++++++++ .github/workflows/update_icons_and_resources.yml | 10 ---------- 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/.github/workflows/on_icon_addition_approved.yml b/.github/workflows/on_icon_addition_approved.yml index 1302ec57..b711f39e 100644 --- a/.github/workflows/on_icon_addition_approved.yml +++ b/.github/workflows/on_icon_addition_approved.yml @@ -30,6 +30,8 @@ jobs: - name: Install Dependencies run: | pip install cairosvg pillow requests + sudo apt-get update + sudo apt-get install -y zopfli webp - name: Parse issue form id: parse_issue_form run: echo "ISSUE_FORM=$(python scripts/parse_issue_form.py)" >> "$GITHUB_OUTPUT" @@ -45,11 +47,21 @@ jobs: run: python scripts/generate_icons.py ${{ env.ICON_TYPE }} addition env: INPUT_ISSUE_FORM: ${{ steps.parse_issue_form.outputs.ISSUE_FORM }} + - name: Generate File Tree + run: python scripts/generate_file_tree.py svg png webp + - name: Generate ICONS.md + run: python scripts/generate_icons_page.py - name: Extract icon name id: extract_icon_name run: echo "ICON_NAME=$(python scripts/print_icon_name.py ${{ env.ICON_TYPE }} addition)" >> "$GITHUB_OUTPUT" env: INPUT_ISSUE_FORM: ${{ steps.parse_issue_form.outputs.ISSUE_FORM }} + - name: Compress icons + run: | + echo "Compressing PNGs..." + find png/ -iname "${{ steps.extract_icon_name.outputs.ICON_NAME }}*.png" -print0 | xargs -0 -P 4 -I{} zopflipng -y {} {} + echo "Compressing WEBPs..." + find webp/ -iname "${{ steps.extract_icon_name.outputs.ICON_NAME }}*.webp" -print0 | xargs -0 -P 4 -I{} bash -c 'cwebp -quiet -lossless "$1" -o "$1"' _ {} - name: Commit changes run: | git config --global user.email "193821040+dashboard-icons-manager[bot]@users.noreply.github.com" diff --git a/.github/workflows/on_icon_update_approved.yml b/.github/workflows/on_icon_update_approved.yml index ba53f314..5e6f0ebf 100644 --- a/.github/workflows/on_icon_update_approved.yml +++ b/.github/workflows/on_icon_update_approved.yml @@ -30,6 +30,8 @@ jobs: - name: Install Dependencies run: | pip install cairosvg pillow requests + sudo apt-get update + sudo apt-get install -y zopfli webp - name: Parse issue form id: parse_issue_form run: echo "ISSUE_FORM=$(python scripts/parse_issue_form.py)" >> "$GITHUB_OUTPUT" @@ -45,11 +47,21 @@ jobs: run: python scripts/generate_icons.py ${{ env.ICON_TYPE }} update env: INPUT_ISSUE_FORM: ${{ steps.parse_issue_form.outputs.ISSUE_FORM }} + - name: Generate File Tree + run: python scripts/generate_file_tree.py svg png webp + - name: Generate ICONS.md + run: python scripts/generate_icons_page.py - name: Extract icon name id: extract_icon_name run: echo "ICON_NAME=$(python scripts/print_icon_name.py ${{ env.ICON_TYPE }} update)" >> "$GITHUB_OUTPUT" env: INPUT_ISSUE_FORM: ${{ steps.parse_issue_form.outputs.ISSUE_FORM }} + - name: Compress icons + run: | + echo "Compressing PNGs..." + find png/ -iname "${{ steps.extract_icon_name.outputs.ICON_NAME }}*.png" -print0 | xargs -0 -P 4 -I{} zopflipng -y {} {} + echo "Compressing WEBPs..." + find webp/ -iname "${{ steps.extract_icon_name.outputs.ICON_NAME }}*.webp" -print0 | xargs -0 -P 4 -I{} bash -c 'cwebp -quiet -lossless "$1" -o "$1"' _ {} - name: Commit changes run: | git config --global user.email "193821040+dashboard-icons-manager[bot]@users.noreply.github.com" diff --git a/.github/workflows/update_icons_and_resources.yml b/.github/workflows/update_icons_and_resources.yml index 8b68bd36..7aefc07b 100644 --- a/.github/workflows/update_icons_and_resources.yml +++ b/.github/workflows/update_icons_and_resources.yml @@ -1,13 +1,6 @@ name: Update Icons and Resources on: - push: - branches: - - main - - dev - paths: - - "svg/**" - - "png/**" workflow_dispatch: jobs: @@ -59,9 +52,6 @@ jobs: with: python-version: "3.9" - - name: Generate File Tree - run: python scripts/generate_file_tree.py svg png webp - - name: Commit and Push Changes run: | git config --global user.email "homarr-labs@proton.me"