ivuorinen/actions - My Reusable GitHub Actions and Workflows
This repository contains reusable GitHub Actions and Workflows that I have created for my own use. Feel free to use them in your own projects.
Actions
These actions are composable and can be used together to create more complex workflows.
ivuorinen/actions/php-composer
This action sets up PHP with specified version and installs Composer dependencies.
Inputs
php: PHP version to use (default:8.3)args: Additional arguments to pass to Composer
Example
on:
workflow_dispatch:
workflow_call:
pull_request:
paths:
- 'composer.json'
- 'composer.lock'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ivuorinen/actions/php-composer@main
with:
php: '8.3'
args: '--no-dev'
ivuorinen/actions/set-git-config
This action sets up Git configuration for the repository.
Inputs
name: Name to use for Git commits (default:GitHub Actions)email: Email to use for Git commits (default:github-actions@github.com)token: GitHub token to use for Git commits (default:${{ github.token }})
Example
on:
workflow_dispatch:
workflow_call:
pull_request:
paths:
- '.gitignore'
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ivuorinen/actions/set-git-config@main
with:
name: 'GitHub Actions'
email: 'github-actions@github.com'
token: ${{ secrets.GITHUB_TOKEN }}
Workflows
These workflows are complete examples that can be used as-is or as a starting point for your own workflows.
ivuorinen/actions/compress-images
This workflow compresses images in a repository using calibreapp/image-actions. Defined in the action is a cron job that runs At 23:00 on Sunday and if there are any changes in the repository it creates a pull request with the compressed images.
Example
# .github/workflows/compress-images.yml
jobs:
compress-images:
uses: ivuorinen/actions/compress-images@main
ivuorinen/actions/release-monthly
This workflow creates a monthly release with the current date as the tag name.
Example
# .github/workflows/release-monthly.yml
jobs:
release-monthly:
uses: ivuorinen/actions/release-monthly@main
ivuorinen/actions/php-laravel-phpunit
This workflow sets up PHP with Composer and runs PHPUnit tests for a Laravel project.
Example
# .github/workflows/php-laravel-phpunit.yml
jobs:
laravel:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ivuorinen/actions/php-composer@main
with:
php: '8.3'
args: '--no-dev'
License
The code in this repository is licensed under the MIT License. See the LICENSE.md file for details.