Centralized repository for reusable GitHub Actions workflows used across the Lerian organization.
1. Go CI
Multi-version Go continuous integration with testing, linting, and optional cross-platform builds.
Key Features: Multi-version testing, golangci-lint, cross-platform builds, coverage comments
2. Go Security
Comprehensive security scanning for Go projects with 8 security tools.
Key Features: Gosec, govulncheck, Nancy, Trivy, TruffleHog, license checks, SBOM generation
3. Go Release
Automated release creation using GoReleaser with optional Docker and Homebrew publishing.
Key Features: GoReleaser automation, multi-platform builds, Docker images, Homebrew formulas
Update GitOps repository with new image tags across multiple environments.
Key Features: Multi-environment support, automatic environment detection, ArgoCD sync
Automated API testing using Apidog CLI with comprehensive reporting.
Key Features: Auto environment detection, multiple output formats, configurable iterations
Comprehensive pull request validation enforcing best practices and coding standards.
Key Features: Semantic PR titles, size tracking, auto-labeling, changelog checks, source branch validation
Comprehensive security scanning for pull requests with Trivy.
Key Features: Secret scanning, vulnerability scanning, monorepo support, component-scoped scanning
Semantic versioning and automated release management with GPG signing.
Key Features: Semantic versioning, GPG signing, hotfix support
Detect changed paths between commits for monorepo CI/CD optimization.
Key Features: Path filtering, path level trimming, app name generation, matrix strategy support
10. Go PR Analysis
Comprehensive Go PR analysis for monorepos with change detection, linting, security, testing, and coverage. Replaces standalone go-coverage-check and go-unit-tests workflows.
Key Features: Change detection, matrix execution, GolangCI-Lint, GoSec, coverage checks, private module support
11. Build
Build and push Docker images with monorepo support and multi-platform builds.
Key Features: Monorepo support, multi-registry (DockerHub/GHCR), smart platform builds, GitOps artifacts
12. Slack Notify
Send Slack notifications from workflows with rich formatting and status-based colors.
Key Features: Rich formatting, status colors, graceful degradation, PR support
Comprehensive Frontend/Node.js PR analysis for monorepos with change detection, linting, type checking, security, testing, and coverage.
Key Features: Change detection, matrix execution, ESLint, TypeScript, npm audit, coverage checks, npm/yarn/pnpm support
14. GPT Changelog
AI-powered changelog generation using OpenRouter API (GPT-4o) with consolidated output.
Key Features: AI commit analysis, consolidated changelog, monorepo support, GitHub Release integration, GPG signing
Comprehensive guides with examples, best practices, and troubleshooting for all workflows.
# Example: Complete CI/CD Pipeline
jobs:
security_scan:
uses: LerianStudio/github-actions-shared-workflows/.github/workflows/pr-security-scan.yml@main
release:
uses: LerianStudio/github-actions-shared-workflows/.github/workflows/release.yml@main
update_gitops:
uses: LerianStudio/github-actions-shared-workflows/.github/workflows/gitops-update.yml@main
e2e_tests:
uses: LerianStudio/github-actions-shared-workflows/.github/workflows/api-dog-e2e-tests.yml@mainSee documentation for complete examples and configuration options.
This repository uses Semantic Versioning with automated releases via semantic-release.
Branches:
develop- Development branch for new features and fixesmain- Production branch for stable releases
Release Process:
- Commits to
develop→ Beta releases (v1.2.3-beta.1) - Commits to
main→ Production releases (v1.2.3)
Commit Message Format: Follow Conventional Commits:
feat:- New feature (minor version bump)fix:- Bug fix (patch version bump)BREAKING CHANGE:- Breaking change (major version bump)docs:,chore:,ci:,test:- No version bump
See CONTRIBUTING.md for detailed guidelines.
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.