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>
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
name: Publish Helm Chart
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- 'v*'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
packages: write
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v6
|
||||
|
||||
- name: Set up Helm
|
||||
uses: azure/setup-helm@v4
|
||||
|
||||
- name: Get Chart Version
|
||||
id: version
|
||||
run: |
|
||||
VERSION=$(grep '^version:' chart/Chart.yaml | awk '{print $2}')
|
||||
echo "version=${VERSION}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Log in to GHCR
|
||||
run: |
|
||||
helm registry login ghcr.io \
|
||||
--username ${{ github.actor }} \
|
||||
--password ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Package and Push Chart
|
||||
run: |
|
||||
helm package chart/
|
||||
helm push devcontainer-${{ steps.version.outputs.version }}.tgz oci://ghcr.io/cpfarhood/charts
|
||||
echo "✅ Helm chart published: devcontainer-${{ steps.version.outputs.version }}"
|
||||
Reference in New Issue
Block a user