helm-charts/.github/workflows/charts-release.yaml
Bᴇʀɴᴅ Sᴄʜᴏʀɢᴇʀs ed015ee74b
feat(common): Release v2.0.3 (#203)
Co-authored-by: JJGadgets <git@jjgadgets.tech>
Co-authored-by: bjw-s-bot[bot] <87358111+bjw-s-bot[bot]@users.noreply.github.com>
2023-10-07 17:32:13 +02:00

92 lines
2.4 KiB
YAML

name: "Charts: Release"
concurrency: helm-release
on:
workflow_dispatch:
inputs:
charts:
description: >
Charts to release. Comma-separated string.
Defaults to releasing everything.
default: ""
required: false
push:
branches:
- main
paths:
- "charts/**"
env:
HELM_VERSION: 3.11.2
jobs:
prepare:
name: Prepare data required for release
runs-on: ubuntu-22.04
outputs:
libraryChartsToRelease: ${{ steps.collect-charts.outputs.chartsLibraryToRelease }}
applicationChartsToRelease: ${{ steps.collect-charts.outputs.chartsApplicationToRelease }}
steps:
- name: Checkout
uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
with:
fetch-depth: 0
- name: Collect charts to release
uses: bjw-s/helm-charts-actions/collect-charts@main
id: collect-charts
with:
repoConfigFile: ./.ci/repo-config.yaml
overrideCharts: "[${{ inputs.charts }}]"
requireHeadAheadOfBase: false
release-library-charts:
name: Release Library charts to GitHub pages
uses: ./.github/workflows/charts-release-ghpages.yaml
needs:
- prepare
with:
charts: "${{ needs.prepare.outputs.libraryChartsToRelease }}"
secrets: inherit
tag-library-charts:
name: Create git tags for library charts
uses: ./.github/workflows/tag-charts.yaml
needs:
- prepare
- release-library-charts
with:
charts: "${{ needs.prepare.outputs.libraryChartsToRelease }}"
secrets: inherit
release-application-charts:
name: Release Application charts to GitHub pages
uses: ./.github/workflows/charts-release-ghpages.yaml
needs:
- prepare
- release-library-charts
with:
charts: "${{ needs.prepare.outputs.applicationChartsToRelease }}"
secrets: inherit
tag-application-charts:
name: Create git tags for application charts
uses: ./.github/workflows/tag-charts.yaml
needs:
- prepare
- release-application-charts
with:
charts: "${{ needs.prepare.outputs.applicationChartsToRelease }}"
secrets: inherit
release-github-oci:
name: Release Application charts to GitHub Container Registry
uses: ./.github/workflows/charts-release-oci.yaml
needs:
- prepare
- release-library-charts
with:
charts: "${{ needs.prepare.outputs.applicationChartsToRelease }}"
secrets: inherit