auto-plugin-helm-chartmuseum
v0.1.4
Published
auto plugin for helm chart publishing
Downloads
5
Readme
auto-plugin-helm-chartmuseum
Auto plugin for helm charts! This plugin can do the following:
- Sets helm package version to auto version
- Updates local dependencies to auto version (if version specified is
0.0.0-local
or the value specified in thereplaceVersionString
param) - Replaces
file://....
withrepository
value ifreplaceFileWithRepository
is set totrue
- Updates documentation using
helm-docs
ifuseHelmDocs
is set totrue
- Pushes packages to chartmuseum (using
cm-push
plugin) ifpush
is set totrue
quickstart
This plugin has the following dependencies:
helm
: requiredhelm-docs
: required ifHELM_PLUGIN_USE_HELM_DOCS
is set totrue
cm-push
: required ifHELM_PLUGIN_ENABLE_PUSH
is set totrue
To use in your projects, add this to you .autorc
file under plugins
section:
{
"plugins": [
["auto-plugin-helm", {
"enableCanary": true,
"enablePrelreases": true,
"recursive": true,
"useHelmDocs": true,
"enablePush": true,
"forcePush": true,
"repository": "@myRepoAlias",
"publishRepository": "myRepoAlias"
}]
]
}
github actions
You can use this with GitHub actions as follows:
- name: Setup Helm
uses: azure/setup-helm@v3
- name: Setup helm-docs
run: |
wget https://github.com/norwoodj/helm-docs/releases/download/v1.11.0/helm-docs_1.11.0_Linux_x86_64.deb
sudo dpkg -i helm-docs_1.11.0_Linux_x86_64.deb
rm helm-docs_1.11.0_Linux_x86_64.deb
- name: Setup Helm Push Plugin
run: helm plugin install https://github.com/chartmuseum/helm-push
- name: Add Chartmuseum repo
run: helm repo add local $CHARTMUSEUM_BASE_URL
- env:
HELM_PLUGIN_ENABLE_CANARY: true
HELM_PLUGIN_PUSH: true
HELM_PLUGIN_REPOSITORY: '@local'
HELM_PLUGIN_PUBLISH_REPOSITORY: local
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx auto shipit
configuration
| setting | description | environment variable | default |
| --------------------------- | -------------------------------------------------------------- | ------------------------------------------ | ------------- |
| path
| Path to charts | HELM_PLUGIN_PATH
| .
|
| recursive
| Search for all charts in path
| HELM_PLUGIN_RECURSIVE
| false
|
| forcePush
| Force push chart versions | HELM_PLUGIN_FORCE_PUSH
| false
|
| push
| Push charts to repository | HELM_PLUGIN_PUSH
| false
|
| enableCanary
| Enable canary builds | HELM_PLUGIN_ENABLE_CANARY
| false
|
| enablePrereleases
| Enable prelrease builds | HELM_PLUGIN_ENABLE_PRERELEASE
| false
|
| replaceVersionString
| Replace version placeholder with current version | HELM_PLUGIN_REPLACE_VERSION_STRING
| true
|
| replaceFileWithRepository
| Replace local file references with remote repository reference | HELM_PLUGIN_REPLACE_FILE_WITH_REPOSITORY
| false
|
| repository
| Repository to replace file references with | HELM_PLUGIN_REPOSITORY
| ''
|
| versionString
| Default version string to replace | HELM_PLUGIN_VERSION_STRING
| 0.0.0-local
|
| useHelmDocs
| Use helm-docs
to update README.md
| HELM_PLUGIN_USE_HELM_DOCS
| false
|
| publishPath
| Local path to use for packaged charts | HELM_PLUGIN_PUBLISH_PATH
| publish
|
| publishRepository
| Repository to publish to | HELM_PLUGIN_PUBLISH_REPOSITORY
| publish
|
If you are pushing to chart museum (set push
or HELM_PLUGIN_PUSH
to true
) you can also set auth with these environment variables (additional environment variables can be found in the docs):
HELM_REPO_USERNAME
HELM_REPO_PASSWORD
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!