Spaces:
Running
Running
# this workflow is triggered by an API call when there is a new PyPI release of LiteLLM | |
name: Build, Publish LiteLLM Helm Chart. New Release | |
on: | |
workflow_dispatch: | |
inputs: | |
chartVersion: | |
description: "Update the helm chart's version to this" | |
# Defines two custom environment variables for the workflow. Used for the Container registry domain, and a name for the Docker image that this workflow builds. | |
env: | |
REGISTRY: ghcr.io | |
IMAGE_NAME: ${{ github.repository }} | |
REPO_OWNER: ${{github.repository_owner}} | |
# There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu. | |
jobs: | |
build-and-push-helm-chart: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Log in to the Container registry | |
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: lowercase github.repository_owner | |
run: | | |
echo "REPO_OWNER=`echo ${{github.repository_owner}} | tr '[:upper:]' '[:lower:]'`" >>${GITHUB_ENV} | |
- name: Get LiteLLM Latest Tag | |
id: current_app_tag | |
uses: WyriHaximus/github-action-get-previous-tag@v1.3.0 | |
- name: Get last published chart version | |
id: current_version | |
shell: bash | |
run: helm show chart oci://${{ env.REGISTRY }}/${{ env.REPO_OWNER }}/litellm-helm | grep '^version:' | awk 'BEGIN{FS=":"}{print "current-version="$2}' | tr -d " " | tee -a $GITHUB_OUTPUT | |
env: | |
HELM_EXPERIMENTAL_OCI: '1' | |
# Automatically update the helm chart version one "patch" level | |
- name: Bump release version | |
id: bump_version | |
uses: christian-draeger/increment-semantic-version@1.1.0 | |
with: | |
current-version: ${{ steps.current_version.outputs.current-version || '0.1.0' }} | |
version-fragment: 'bug' | |
- name: Lint helm chart | |
run: helm lint deploy/charts/litellm-helm | |
- uses: ./.github/actions/helm-oci-chart-releaser | |
with: | |
name: litellm-helm | |
repository: ${{ env.REPO_OWNER }} | |
tag: ${{ github.event.inputs.chartVersion || steps.bump_version.outputs.next-version || '0.1.0' }} | |
app_version: ${{ steps.current_app_tag.outputs.tag || 'latest' }} | |
path: deploy/charts/litellm-helm | |
registry: ${{ env.REGISTRY }} | |
registry_username: ${{ github.actor }} | |
registry_password: ${{ secrets.GITHUB_TOKEN }} | |
update_dependencies: true | |