You're viewing an older version of this GitHub Action. Do you want to see the latest version instead?
GitHub Action
imgcmp
v2.0.3
This GitHub Actions optimizes images in your repository. You will receive a pull request with optimized images. This Github Actions is inspired by ImgBot.
A pull request example:
name: imgcmp
on:
push:
branches:
- main
- master
jobs:
imgcmp:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: 9sako6/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
If you want to run this action only once a week, please add the following lines.
name: imgcmp
on:
schedule:
- cron: "0 0 * * 1" # Weekly build
jobs:
imgcmp:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: 9sako6/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
Then, you will receive a pull request with optimized images every Monday at 0:00.
Name | Description | Required |
---|---|---|
token |
GITHUB_TOKEN or a Personal access token (PAT). In a private repository, you have to use a PAT with enough permissions. See How to use a Personal Access Token. |
true |
paths-ignore-regexp |
Regular expression for images' paths you don't want to compress. | false |
imgcmp offers an ignore option. paths-ignore-regexp
is regular expression for
images' paths you don't want to compress.
Example:
name: imgcmp
on:
push:
branches:
- main
- master
jobs:
imgcmp:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- uses: 9sako6/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
paths-ignore-regexp: "(ignore/.*)|(public/.*)"
Name | Description |
---|---|
pull-request-number |
A pull request number created by imgcmp. |
Step outputs can be accessed as in the following example.
- uses: 9sako6/[email protected]
id: imgcmp
with:
token: ${{ secrets.GITHUB_TOKEN }}
- name: Check outputs
run: |
echo ${{ steps.imgcmp.outputs.pull-request-number }}
- JPEG/JPG
- PNG
- GIF
- SVG
- WEBP
This bot uses these optimizers.
-m85
: this will store the image with 85% quality
-o2
: this sets the optimization level 2 (there is 0-7 optimization levels)
-O3
: this sets the optimization level to Gifsicle's maximum
SVGO's default configuration will be used.
-q 75
: cwebp's default optimization level
It took 34 sec to create the following PR.
Bug fixes.
- truncate long messages (#272)
Bug fixes.
- Fix the problem that actions fail when a trigger event is
pull_request
(#99) - Fix the problem that actions fail when
paths-ignore-regexp
is empty (#51)
There are breaking changes from version 1.0.1
.
- Add
token
input (#26)GITHUB_TOKEN
option inenv
was deleted.
- Add
paths-ignore-regexp
input (#26)IGNORED_FILES
option inenv
was deleted.
- Refactoring the pull request template (#26)
9sako6