Welcome to Studio Lemon's collection of reusable GitHub Actions workflows. This repository contains battle-tested, standardized workflows that help our development teams ship faster and more reliably.
Don't reinvent the wheel every time.
We believe in creating once, using everywhere. Instead of copy-pasting workflow configurations across multiple repositories and maintaining them separately, we centralize our common deployment and release patterns here. This approach ensures:
- β Consistency across all our projects
- β Maintainability - fix once, benefit everywhere
- β Speed - new projects get deployment ready in minutes
- β Reliability - workflows are battle-tested across multiple projects
- β Knowledge sharing - best practices are encoded and documented
File: .github/workflows/plugin-release.yml
Automates the creation of plugin ZIP archives and GitHub releases.
- Builds plugin with npm/composer dependencies
- Creates clean ZIP archives with dist and blocks folders
- Publishes GitHub releases with assets
- Triggered on Git tags
Quick Start:
uses: Studio-Lemon/workflows/.github/workflows/plugin-release.yml@main
with:
plugin_name: 'my-plugin'
secrets: inheritFile: .github/workflows/theme-release.yml
Automates the creation of theme ZIP archives and GitHub releases.
- Builds theme blocks with yarn (optional)
- Creates clean ZIP archives with dist and blocks folders
- Publishes GitHub releases with assets
- Triggered on Git tags
Quick Start:
uses: Studio-Lemon/workflows/.github/workflows/theme-release.yml@main
with:
theme_name: 'my-theme'
build_blocks: true
secrets: inheritFile: .github/workflows/spinup-deploy.yml
Complete WordPress theme deployment pipeline for SpinupWP servers.
- Auto-detects theme from repository structure
- Builds Composer dependencies with Satispress support
- Compiles frontend assets with Yarn
- Deploys via rsync to remote servers
- Clears SpinupWP caches
Quick Start:
uses: Studio-Lemon/workflows/.github/workflows/spinup-deploy.yml@main
secrets: inheritCreate a workflow file in your repository's .github/workflows/ directory:
name: Deploy
on:
push:
branches: [main]
jobs:
deploy:
uses: Studio-Lemon/workflows/.github/workflows/WORKFLOW_NAME.yml@main
with:
# workflow-specific inputs
secrets:
# required secrets- Create the workflow file in
.github/workflows/ - Add
workflow_calltrigger with appropriate inputs and secrets - Document the workflow in the
documentation/folder - Update this README with the new workflow
- Test the workflow in a sample repository
- Make inputs optional where possible - provide sensible defaults
- Auto-detect configuration from repository structure when feasible
- Centralize common secrets in this repository to reduce setup burden
- Fail fast with clear error messages
- Document everything - inputs, outputs, secrets, and usage examples
- GitHub Actions Reusable Workflows Documentation
- GitHub Actions Secrets Documentation
- Studio Lemon Development Guidelines
Studio Lemon β’ Building better workflows, one commit at a time π