auto-plugin-helm-chartmuseum
v0.1.4
Published
auto plugin for helm chart publishing
Downloads
29
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-localor the value specified in thereplaceVersionStringparam) - Replaces
file://....withrepositoryvalue ifreplaceFileWithRepositoryis set totrue - Updates documentation using
helm-docsifuseHelmDocsis set totrue - Pushes packages to chartmuseum (using
cm-pushplugin) ifpushis set totrue
quickstart
This plugin has the following dependencies:
helm: requiredhelm-docs: required ifHELM_PLUGIN_USE_HELM_DOCSis set totruecm-push: required ifHELM_PLUGIN_ENABLE_PUSHis 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 shipitconfiguration
| 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_USERNAMEHELM_REPO_PASSWORD
Contributors ✨
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
