Files
devcontainer/.github/workflows/README.md
T
DevContainer User 5570b2c617 fix: completely overhaul the CI/CD pipeline to not suck
BREAKING CHANGE: Removed auto-version-bump workflow that was causing [skip ci] hell

New features:
- Unified release workflow that handles everything in one go
- Quick fix workflow for emergency deployments
- No more [skip ci] preventing Docker builds
- No more manual tag juggling
- Single button release process

The old pipeline was a disaster with disconnected workflows, auto-version-bumps
with [skip ci] that prevented Docker builds, and required manual tag deletion/
re-pushing to trigger builds. This new pipeline is actually usable.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-02-21 16:04:46 +00:00

74 lines
2.3 KiB
Markdown

# CI/CD Pipeline Guide
## 🚀 New Simplified Pipeline
### For Releases (Recommended)
Use the **Unified Release** workflow from GitHub Actions tab:
1. Go to Actions → Unified Release → Run workflow
2. Enter version number (e.g., 0.1.25) or choose release type
3. Click "Run workflow"
This single workflow:
- ✅ Updates chart version
- ✅ Creates git tag
- ✅ Builds and pushes Docker image with proper tags
- ✅ Publishes Helm chart
- ✅ Creates GitHub Release with notes
-**NO MORE `[skip ci]` NONSENSE!**
### For Quick Fixes
Use the **Quick Fix Build** workflow when you need to push a fix without ceremony:
1. Go to Actions → Quick Fix Build → Run workflow
2. Optionally specify a tag (defaults to 'latest')
3. Click "Run workflow"
This builds and pushes the Docker image immediately without version bumps.
## Workflow Files
| Workflow | Purpose | Trigger | What it does |
|----------|---------|---------|--------------|
| `release-unified.yaml` | **Main release workflow** | Manual dispatch | Complete release process |
| `quick-fix.yaml` | Emergency fixes | Manual dispatch | Just build & push Docker |
| `build-and-push.yaml` | CI builds | Tags & PRs | Auto-build on tags/PRs |
| `release.yaml` | GitHub releases | Tag push | Create GitHub release |
| `helm-publish.yaml` | Helm chart only | Tags | Publish Helm chart |
## Common Tasks
### Release a new version
```bash
# Option 1: Use GitHub UI
# Go to Actions → Unified Release → Run workflow
# Option 2: Use GitHub CLI
gh workflow run release-unified.yaml -f version=0.1.25 -f release_type=patch
```
### Push a quick fix
```bash
# Use GitHub UI: Actions → Quick Fix Build → Run workflow
# Or:
gh workflow run quick-fix.yaml -f tag=hotfix-1
```
### Check build status
```bash
gh run list --workflow=release-unified.yaml
```
## Version Strategy
- **Major** (1.0.0): Breaking changes
- **Minor** (0.2.0): New features
- **Patch** (0.1.25): Bug fixes
## Old Pipeline Issues (Now Fixed!)
**REMOVED**: Auto-version-bump with `[skip ci]` that prevented Docker builds
**REMOVED**: Disconnected workflows requiring manual tag juggling
**REMOVED**: Complex multi-step process for releases
**NEW**: Single unified workflow that does everything
**NEW**: Manual control over versions
**NEW**: Quick fix workflow for emergencies