This plugin is designed to streamline the packaging and distribution of Helm charts to a Container registry.
Currently, it supports pushing Helm charts to Docker Hub and Google Artifact Registry.
To learn how to utilize Drone plugins in Harness CI, please consult the provided documentation.
Parameter | Choices/Defaults | Comments |
---|---|---|
registry_url string required |
Docker registry where the packaged chart will be published | |
chart_path string required |
Directory containing the helm chart | |
registry_username string required |
Username to login to the above registry. | |
registry_password string required |
PAT / access token to authenticate | |
registry_namespace string required |
Namespace under which the chart will be published | |
gcloud_project_id string |
Google Artifact Repository project ID |
If you aim to push Helm Charts to Google Artifact Registry (GAR):
- Set the registry URL to
LOCATION-docker.pkg.dev
- use
oauth2accesstoken
as username andaccess-token
as token. Refer to this documentation for generating an access token. - use
REPO_ID
asregistry_namespace
andPROJECT_ID
asgcloud_project_id
In case of Docker Hub:
- Set the registry URL to registry.hub.docker.com
Review the "plugin image" section to identify the available tags for supported architectures, and then use these tags in the Docker Image during the plugin step.
For more details check the examples section.
The plugin plugins/helm-push
is available for the following architectures:
OS | Tag |
---|---|
latest | linux arm64/amd64, windows |
linux/amd64 | linux-amd64 |
linux/arm64 | linux-arm64 |
windows/amd64 | windows-amd64 |
# Plugin YAML
# DockerHub Example
- step:
type: Plugin
name: Push Helm Chart to DockerHub
identifier: helm_chart_docker
spec:
connectorRef: harness-docker-connector
image: plugins/helm-push
settings:
registry_url: registry.hub.docker.com
registry_username: <+variable.docker_username>
registry_password: <+secrets.getValue("docker_pat")>
chart_path: chart
registry_namespace: <+variable.namespace>
- step:
type: Plugin
name: Push Helm Chart to GAR
identifier: helm_chart_gar
spec:
connectorRef: harness-docker-connector
image: plugins/helm-push
settings:
registry_url: LOCATION-docker.pkg.dev
registry_username: oauth2accesstoken
registry_password: <+secrets.getValue("access_token")>
chart_path: chart
gcloud_project_id: PROJECT_ID
registry_namespace: REPO_ID
ℹ️ If you notice any issues in this documentation, you can edit this document to improve it.