https://github.com/step-security/helm-gh-pages
A GitHub Action for publishing Helm charts to Github Pages
https://github.com/step-security/helm-gh-pages
step-security-maintained-actions
Last synced: about 2 months ago
JSON representation
A GitHub Action for publishing Helm charts to Github Pages
- Host: GitHub
- URL: https://github.com/step-security/helm-gh-pages
- Owner: step-security
- License: apache-2.0
- Created: 2024-06-19T12:14:53.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2025-06-10T08:19:55.000Z (12 months ago)
- Last Synced: 2025-06-10T09:26:15.658Z (12 months ago)
- Topics: step-security-maintained-actions
- Language: Shell
- Homepage: https://docs.stepsecurity.io/actions/stepsecurity-maintained-actions
- Size: 138 KB
- Stars: 0
- Watchers: 0
- Forks: 1
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
[](https://docs.stepsecurity.io/actions/stepsecurity-maintained-actions)
# Helm Publisher
A GitHub Action for publishing Helm charts with Github Pages.
## Usage
Inputs:
* `token` The GitHub token with write access to the target repository
* `charts_dir` The charts directory, defaults to `charts`
* `charts_url` The GitHub Pages URL, defaults to `https://.github.io/`
* `owner` The GitHub user or org that owns this repository, defaults to the owner in `GITHUB_REPOSITORY` env var
* `repository` The GitHub repository, defaults to the `GITHUB_REPOSITORY` env var
* `branch` The branch to publish charts, defaults to `gh-pages`
* `target_dir` The target directory to store the charts, defaults to `.`
* `helm_version` The Helm CLI version, defaults to the latest release
* `linting` Toggle Helm linting, can be disabled by setting it to `off`
* `commit_username` Explicitly specify username for commit back, default to `GITHUB_ACTOR`
* `commit_email` Explicitly specify email for commit back, default to `GITHUB_ACTOR@users.noreply.github.com`
* `app_version` Explicitly specify app version in package. If not defined then used chart values.
* `chart_version` Explicitly specify chart version in package. If not defined then used chart values.
* `index_dir` The location of `index.yaml` file in the repo, defaults to the same value as `target_dir`
* `enterprise_url` The URL of enterprise github server in the format `/`
* `dependencies` A list of helm repositories required to verify dependencies in the format `,;,` or if using private repositories `,,,;,,,`. Combinations are allowed.
## Examples
Package and push all charts in `./charts` dir to `gh-pages` branch:
```yaml
name: release
on:
push:
tags: '*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Publish Helm charts
uses: step-security/helm-gh-pages@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
```
Package and push charts in `./chart` dir to `gh-pages` branch in a different repository:
```yaml
name: release-chart
on:
push:
tags: 'chart-*'
jobs:
release-chart:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Publish Helm chart
uses: step-security/helm-gh-pages@v1
with:
token: ${{ secrets.BOT_GITHUB_TOKEN }}
charts_dir: chart
charts_url: https://charts.fluxcd.io
owner: fluxcd
repository: charts
branch: gh-pages
target_dir: charts
commit_username: johndoe
commit_email: johndoe@example.com
```
Package chart with specified chart & app versions and push all charts in `./charts` dir to `gh-pages` branch:
```yaml
name: release
on:
push:
tags: '*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Publish Helm charts
uses: step-security/helm-gh-pages@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
app_version: 1.16.0
chart_version: 0.1.0
```