🚀 Push Helm Charts to OCI-based (Docker) registries! 🚀
💡 Store Helm Charts with your Docker images. No more need to host Helm repositories ♿
📝 More info about secure OCI-based hosting https://helm.sh/docs/topics/registries/
- name: Chart | Push
uses: appany/helm-oci-chart-releaser@v0.3.0
with:
name: my-chart
repository: appany
tag: 0.1.0
path: charts/my-chart # Default charts/{name}
registry: ghcr.io
registry_username: ${{ secrets.REGISTRY_USERNAME }}
registry_password: ${{ secrets.REGISTRY_PASSWORD }}
update_dependencies: 'true' # Defaults to false
# helm pull ghcr.io/appany/my-chart:0.1.0
## Inputs
```yaml
inputs:
name:
required: true
description: Chart name
repository:
required: true
description: Chart repository name
tag:
required: true
description: Chart version
path:
required: false
description: Chart path (Default 'charts/{name}')
registry:
required: true
description: OCI registry
registry_username:
required: true
description: OCI registry username
registry_password:
required: true
description: OCI registry password
update_dependencies:
required: false
default: 'false'
description: Update chart dependencies before packaging (Default 'false')
outputs:
image:
value: ${{ steps.output.outputs.image }}
description: Chart image (Default '{registry}/{repository}/{image}:{tag}')
repositories:
ghcr:
url: ghcr.io
type: helm
name: ...
enableOCI: "true"
credentialTemplates: ghcr: url: ghcr.io username: ... password: ...
2. Create an Application
```yaml
apiVersion: argoproj.io/v1alpha1
kind: Application
...
spec:
source:
repoURL: ghcr.io
targetRevision: 0.1.0
chart: appany/my-chart
helm:
...
This project is distributed under the MIT license.