Signed-off-by: Alex <aleksandrosansan@gmail.com> Signed-off-by: Alex <aleksandrosansan@gmail.com>
62 lines
2.0 KiB
YAML
62 lines
2.0 KiB
YAML
# Image Actions will run in the following scenarios:
|
|
# - on Pull Requests containing images (not including forks)
|
|
# - on pushing of images to `main` (for forks)
|
|
# - on demand (https://github.blog/changelog/2020-07-06-github-actions-manual-triggers-with-workflow_dispatch/)
|
|
# - at 11 PM every Sunday in anything gets missed with any of the above scenarios
|
|
# For Pull Requests, the images are added to the PR.
|
|
# For other scenarios, a new PR will be opened if any images are compressed.
|
|
name: Compress images
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- "**.jpg"
|
|
- "**.jpeg"
|
|
- "**.png"
|
|
- "**.webp"
|
|
push:
|
|
branches:
|
|
- main
|
|
paths:
|
|
- "**.jpg"
|
|
- "**.jpeg"
|
|
- "**.png"
|
|
- "**.webp"
|
|
workflow_dispatch:
|
|
schedule:
|
|
- cron: "00 20 * * 0"
|
|
permissions: {}
|
|
jobs:
|
|
build:
|
|
permissions:
|
|
contents: write
|
|
pull-requests: write # to comment on pull request
|
|
|
|
name: calibreapp/image-actions
|
|
runs-on: ubuntu-latest
|
|
# Only run on main repo on and PRs that match the main repo.
|
|
if: |
|
|
github.repository == 'outline/outline' &&
|
|
(github.event_name != 'pull_request' ||
|
|
github.event.pull_request.head.repo.full_name == github.repository)
|
|
steps:
|
|
- name: Checkout Branch
|
|
uses: actions/checkout@v2
|
|
- name: Compress Images
|
|
id: calibre
|
|
uses: calibreapp/image-actions@main
|
|
with:
|
|
githubToken: ${{ secrets.GITHUB_TOKEN }}
|
|
# For non-Pull Requests, run in compressOnly mode and we'll PR after.
|
|
compressOnly: ${{ github.event_name != 'pull_request' }}
|
|
- name: Create Pull Request
|
|
# If it's not a Pull Request then commit any changes as a new PR.
|
|
if: |
|
|
github.event_name != 'pull_request' &&
|
|
steps.calibre.outputs.markdown != ''
|
|
uses: peter-evans/create-pull-request@v3
|
|
with:
|
|
title: "chore: Auto Compress Images"
|
|
branch-suffix: timestamp
|
|
commit-message: "chore: Compressed inefficient images automatically"
|
|
body: ${{ steps.calibre.outputs.markdown }}
|