This repository hosts Mesh for Data Helm charts. The charts hosted in this repository are mirrors of charts that are maintained in other repositories within the fybrik organization.
helm repo add fybrik https://fybrik.github.io/charts/
helm repo updateFollow these steps to learn how to maintain a chart in a seperate repository and sync it to this charts repository on each new tagged release.
Create a .github/workflows/chart-publish.yaml file.
Replace <chart-name> with the name of the chart and <charts/chart-name> with the path to the chart:
name: Update Charts
on:
push:
tags:
- 'v*'
jobs:
build:
name: Update Charts
runs-on: ubuntu-latest
steps:
- name: Checkout main repository
uses: actions/checkout@v2
with:
path: main
- name: Checkout charts repository
uses: actions/checkout@v2
with:
repository: fybrik/charts
path: charts-repo
- run: |
rm -rf charts-repo/charts/<chart-name>
cp -r main/<charts/chart-name> charts-repo/charts
- uses: tibdex/github-app-token@v1
id: generate-token
with:
app_id: ${{ secrets.CHARTS_APP_ID }}
private_key: ${{ secrets.CHARTS_APP_PRIVATE_KEY }}
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
path: charts-repo
signoff: true
token: ${{ steps.generate-token.outputs.token }}
title: 'Update charts to new release'
commit-message: Update charts
committer: GitHub <[email protected]>
delete-branch: trueYou can easily modify the above to support more than a single chart.
It is recommended to add a workflow for linting and testing the chart. See examples for a chart-testing workflow and a KubeLinter workflow.
When creating a new release of your project, be sure to update the version accordingly:
- Use Semantic Versioning
- Update the
versionfield in theChart.yamlfile of your chart if the chart has changed since the last release. - Create a tag/release using the
vX.Y.Znaming convention.
A pull request is automatically created in this charts repository after a tag is created.