Skip to content

release

release #1

Workflow file for this run

name: Release Helm Chart
on:
push:
branches:
- main
env:
REGISTRY: ghcr.io
IMAGE_NAME: $\{\{ github.repository }}
jobs:
build:
name: Github Pages as Helm Chart Repository
runs-on: ubuntu-latest
permissions:
contents: write
packages: write
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: $\{\{ env.REGISTRY }}
username: $\{\{ github.actor }}
password: $\{\{ secrets.GITHUB_TOKEN }}
- name: Build and Push Docker image to GitHub Container Registry
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: |
$\{\{ env.REGISTRY }}/$\{\{ env.IMAGE_NAME }}:latest
$\{\{ env.REGISTRY }}/$\{\{ env.IMAGE_NAME }}:$\{\{ github.sha }}
- name: Install YQ
uses: dcarbone/[email protected]
- name: Update values.yaml with Latest Image Tag
run: |
yq eval --inplace ".image.repository = \"$\{\{ env.REGISTRY }}/$\{\{ env.IMAGE_NAME }}\"" charts/python-api/values.yaml
yq eval --inplace ".image.tag = \"$\{\{ github.sha }}\"" charts/python-api/values.yaml
- name: Configure Git
run: |
git config user.name "GitHub Action"
git config user.email "[email protected]"
- name: Install Helm
uses: azure/setup-helm@v3
with:
version: v3.7.0
- name: Run chart-releaser to Package and Release Helm Charts
uses: helm/[email protected]
env:
CR_TOKEN: $\{\{ secrets.GITHUB_TOKEN }}